وقتی برنامه ای کوئری اجرا می کند با SQL Profiler میشه متن SQL اجرا شده روی پایگاه داده را داشت. چطور میشه کاری کرد که SQL Profiler متن SQL را خروجی ندهد.
وقتی برنامه ای کوئری اجرا می کند با SQL Profiler میشه متن SQL اجرا شده روی پایگاه داده را داشت. چطور میشه کاری کرد که SQL Profiler متن SQL را خروجی ندهد.
درود
اگر از stored procedure استفاده کنی و توی اون هم از WITH ENCRIPTION استفاده کنی دیگه کسی نمی تونه ببیندش.
البته چون خودتون هم نمی تونید بازش کنید بهتره قبل از اجرا کردن stored procedure یک کپی ازش بردارید
مشکل اینجاست که بعضی برنامه ها هستند که خودم نمونه اش را جهت SQL Server 2000 دیدم که متن SP یا View های Encrypt شده را Decode (رمزگشایی) می کرد و متن آنها مشخص می شد!
نام نرم افزاری که اینکار رو میکرد بفرمایید تا در اسرع وقت چک کنم بهتون خبر بدم
نرم افزار خاصی نبود(به عنوان محصول ثبت شده) یک برنامه ای بود که با Visual Basic 6 نوشته شده بود و خودم اجرا کردم کاملا بطور صحیح SP هایی که خودم در SQL Server 2000 با دستور WITH ENCRYPTION رمز کرده بودم رمزگشایی کرد. الان هم آن را ندارم. مربوط به 8 سال گذشته بود.
درود دوباره
چون نرم افزار رو نمی تونم تست کنم نظر خاصی ندارم
اما شما بیاید از پایه و اساس درستش کنید. یه user بسازید و این اجازه (Permission) رو از مجوزای اون user بردارید. یعنی Grant گزینه trcae رو بردارید (deny کنید) و اون user رو به هر کسی که می خواد این کار رو انجام بده بدید.
اگرم میخواید هیچکسی نبینه این کار رو برای تمام user های Instane تون انجام بدید