الأعراض
يُرجى مراعاة السيناريو التالي:
يمكنك تشغيل مثيل كتالوج Integration Services وكتالوج SSISDB في Microsoft SQL Server 2012 أو SQL Server 2014.
ستمنح أذونات لأعضاء مجموعة Windows بحيث تتوفر لهم حق الوصول إلى مجلد كتالوج SSIS أو المشروع أو عنصر البيئة القابل للتأمين.
ملاحظة: يمكنك منح الأذونات بأي من الطرق التالية:
- يمكنك استخدام Management Studio. للقيام بذلك، انقر بزر الماوس الأيمن فوق الكائن في كتالوج Integration Services، وحدد "خصائص"، ثم من صفحة الأذونات ، استعرض وصولا إلى المجموعة وأضف المجموعة، ثم حدد الأذونات لتلك المجموعة.
- يمكنك استدعاء الإجراء المخزن التالي:
[SSISDB]. [كتالوج]. [grant_permission]
يحاول مستخدم Windows الذي يعتبر عضوا في مجموعة Windows عرض الحزم الموجودة في قاعدة بيانات SSISDB وتنفيذها في كتالوج Integration Services باستخدام Management Studio أو الإجراء المخزن.
في هذا السيناريو، لن يتمكن المستخدم من رؤية الحزم التي منحت له أذونات لها ولا يمكنه التحقق من صحة تلك الحزم أو تشغيلها.
السبب
تحدث هذه المشكلة بسبب مشكلة في طرق العرض الداخلية ل SSISDB. وهذا يمنع المستخدم من الحصول على الأذونات الفعالة المتوقعة عند منح الأذونات باستخدام عضوية مجموعة Windows.
الدقة
تم إصلاح المشكلة لأول مرة في التحديث التراكمي التالي ل SQL Server.
التحديث التراكمي 1 ل SQL Server 2014 /en-us/help/2931693
التحديث التراكمي 7 ل SQL Server 2012 SP1 /en-us/help/2894115
حول التحديثات التراكمية ل SQL Server
يحتوي كل تحديث تراكمي جديد ل SQL Server على جميع الإصلاحات العاجلة وجميع إصلاحات الأمان التي كانت مضمنة في التحديث التراكمي السابق. تحقق من آخر التحديثات التراكمية ل SQL Server:
الحل البديل
لحل هذه المشكلة، لا تستخدم مجموعة Windows التي تضم مستخدمين متنوعين للوصول إلى SSIS القابلة للتأمين. بدلا من ذلك، استخدم دور قاعدة بيانات معرف من قبل المستخدم في SQL Server لتضمين القائمة الضرورية لمستخدمي Windows، ثم قم بتعيين الأذونات لدور قاعدة البيانات هذا.
خطوات الحل البديل
اتبع هذه الخطوات للقيام بذلك:
قم بإنشاء عمليات تسجيل الدخول الضرورية ل Windows إلى مثيل SQL Server، ثم امنح المستخدم حق الوصول إلى قاعدة بيانات SSISDB. على سبيل المثال، يمكنك استخدام Management Studio بالانتقال إلى الأمان، والنقر فوق تسجيلات الدخول، ثم النقر فوق تسجيل دخول جديد. أو، يمكنك استخدام البرنامج النصي التالي لكل تسجيل دخول لمستخدم Windows:
استخدام الشكل الرئيسي
GO
إنشاءاسم مستخدممجال\ تسجيل الدخول من WINDOWS باستخدام DEFAULT_DATABASE=MASTER
GO
استخدام SSISDB
GO
إنشاء اسم مستخدم مجال\ المستخدم لتسجيل الدخول\اسم المستخدم
GOفي قاعدة بيانات SSISDB، أنشئ دور قاعدة بيانات معرفة من قبل المستخدم، مثل ssis_users. على سبيل المثال، يمكنك استخدام Management Studio بالانتقال إلى قواعد البيانات، والنقر فوق SSISDB وفوق الأمان والنقر فوق الأدوارثم فوق أدوار قاعدة البيانات، ثم النقر فوق دور قاعدة بيانات جديد. أو يمكنك استخدام البرنامج النصي التالي:
استخدام SSISDB
GO
إنشاء دور ssis_users
GOأضف المستخدمين المطلوبين في SSISDB إلى ssis_users الدور. على سبيل المثال، يمكنك استخدام Management Studio بالانتقال إلى قواعد البيانات، والنقر فوق SSISDB والنقر فوق الأمان والنقر فوق الأدوار وفوق "أدوار قاعدة البيانات" ثم فوق "أعضاء الدور" ثم فوق إضافة. أو يمكنك استخدام البرنامج النصي التالي:
استخدام SSISDB
GO
ALTER ROLE ssis_usersADD \MEMBER DOMAIN USERNAME
GOانقر بزر الماوس الأيمن فوق العنصر القابل للتأمين في كتالوج Integration Services، وانقر فوق "خصائص"، وانقر فوق "استعراض " في صفحة "الأذونات" لإضافة "دور قاعدة البيانات" إلى الأذونات، ثم حدد "منح أو رفض " على الأذونات الصريحة المطلوبة كما يلي:
ملاحظة: قد لا تكون هذه الأذونات كافية لتنفيذ حزمة SSIS بنجاح. تعد كل حزمة SSIS عبارة عن تصميم مخصص وقد تتضمن متطلبات إضافية خاصة للوصول إلى خوادم وقواعد بيانات أو مشاركات معينة للتحقق من صحة حزمة SSIS أو تنفيذها بنجاح.
الحالة
لقد أكدت Microsoft على أن هذه مشكلة في منتجات Microsoft المُدرجة في القسم "ينطبق على".
المراجع
لمزيد من المعلومات، راجع المواضيع التالية على موقع شبكة مطوري Microsoft (MSDN) على الويب:
كتالوج SSIS
مربع الحوار "خصائص المجلد"
مربع الحوار "خصائص المشروع"
مربع الحوار "خصائص البيئة"
راجع المصطلحات التي تستخدمها Microsoft لوصف تحديثات البرامج.