it-swarm.asia

هل هناك أي مخاطر لمنح المستخدمين SQL Server SHOWPLAN إذن؟

أقوم ببعض ضبط الأداء على قاعدة بيانات SQL Server 2008 كبيرة ، ولا ترغب مجموعة تكنولوجيا المعلومات في منح SHOWPLAN إذنًا. في الماضي ، كانت "إظهار خطة التنفيذ" هي الطريقة الأكثر فاعلية لفهم أداء الاستفسارات والإجراءات الفردية.

ما هي المخاطر الكامنة في منح هذا الإذن؟ هل هناك مبرر مشروع لهذا القيد على نسخة تطويرية من قاعدة البيانات؟

ملاحظة: تحتوي مجموعة SQL IT هذه على أكثر من 200 قاعدة بيانات ضمن مثيل SQL Server واحد. شكر.

الجواب: إنني أعتبر أن عدم الاستجابة يعني عدم وجود مخاطر أمنية كبيرة ، بخلاف تلك المذكورة أدناه. أساسا ، تقييد هذا على قاعدة بيانات التنمية يؤدي إلى نتائج عكسية.

سوف أقوم بتحديث هذا إذا جاء أي شخص بإجابة أفضل. شكرا لتعليقاتكم!

23
RaoulRubin

ألق نظرة على Showplan Security في Books Online ، والتي تقول:

المستخدمون الذين لديهم SHOWPLAN، ALTER TRACE ، أو VIEW SERVER STATE إذن يمكن عرض الاستعلامات التي تم التقاطها في إخراج Showplan. قد تحتوي هذه الاستعلامات على معلومات حساسة مثل كلمات المرور. لذلك ، نوصي بأن تمنح هذه الأذونات فقط للمستخدمين المصرح لهم بعرض معلومات حساسة ، مثل أعضاء دور قاعدة البيانات الثابتة db_owner ، أو الأعضاء دور خادم ثابت مسؤول النظام . نوصي أيضًا بحفظ ملفات Showplan أو ملفات التتبع التي تحتوي على الأحداث المتعلقة بـ Showplan فقط إلى موقع يستخدم نظام ملفات NTFS ، وتقييد الوصول إلى المستخدمين المصرح لهم بعرض المعلومات الحساسة.

على سبيل المثال ، ضع في الاعتبار الاستعلام التالي:

SELECT COUNT(*)  FROM table_1  WHERE column_1 < 10 

إذا أنتج مستخدم ضار إخراج Showplan لمجموعة من الاستعلامات مثل هذا المثال ، واستبدل القيمة "10" في المسند بثوابت مختلفة في كل مرة ، يمكن للمستخدم استنتاج توزيع بيانات تقريبي لقيم العمود لـ العمود_1 في table_1 بقراءة عدد الصفوف المقدرة.

يبدو هذا الخطر ضئيلًا ، خاصة إذا كان هذا خادم تطوير ، حيث ستكون جميع الاستفسارات from مطوري وموظفي تكنولوجيا المعلومات ، وليس مستخدمين.

19
user5094