الحد قاعدة بيانات قائمة منها بإذن SQL Server
-
03-07-2019 - |
سؤال
بشكل افتراضي إذا كان الاتصال إلى ملقم SQL بعيد عبر حساب لديه حق الوصول إلى القول 1 من 10 قواعد البيانات.سوف لا تزال ترى في "مستكشف كائن" جميع قواعد البيانات الأخرى ، من الواضح بسبب أذونات لا يمكنك في الواقع الاستعلام لهم ، ولكن يمكنك أن ترى أسمائهم.
لقد سمعت أن هناك طريقة تعطيل هذا السلوك ، ولكن كنت غير قادر على العثور على إجابة ، لا أحد يعرف كيفية القيام بذلك ؟ على سبيل المثال لدي SQL Server يسمى MyDbServer, له 4 قواعد البيانات ،
- MyDatabase
- YourDatabse
- PrivateDatabase
- ReallyPrivateDb
إذا كنت الاتصال عبر حساب لديه أذونات إلى "YourDatabse" سوف لا تزال ترى قائمة من جميع قواعد البيانات الأخرى ، يحاول الاستعلام سوف تمنح "حدد" تم رفض الإذن أو خطأ مماثل.
الأمن resons ، نحن لا نريد للمستخدمين لمعرفة أي قاعدة بيانات أخرى غير تلك التي تم تعيينها إلى.
المحلول
هذا بلوق يتحدث عن طرق إخفاء DBs لكل من SQL server 2000 و SQL server 2005.
نصائح أخرى
بعد أن موكلي الصراع مع تحديد الموارد فعلت بعض التجارب وخلق هذا بلوق نشر مع أكثر قليلا من سياق التعليمات حول كيفية الحصول على هذا العمل.
بإختصار:
use master
go
deny VIEW any DATABASE to login1
go
حيث login1 هو تسجيل الدخول إلى الحساب الذي تريد الحد.