كيفية تمكين حسابات غير مسؤول النظام لتنفيذ "xp_cmdshell" توسيع الإجراء المخزن في SQL Server 2000

هام: تمت ترجمة هذه المقالة باستخدام برامج مايكروسوفت للترجمة الآلية ومن المحتمل ان يتم تحريرها او تدقيقها بعد ذلك من خلال تكنولوجيا منصة مجموعات الترجمة(CTF) او من خلال مترجم بشري. تقدم لك شركة مايكروسوفت هذه المقالات المترجمة بشكل آلي او بالترجمة البشرية او بعد تحريرها وتدقيقها من قبل مجموعات الترجمة حتى تمكنكم من الوصول إلى جميع المقالات الموجودة في قواعد المعرفة لديها بلغات مختلفة. إلا أن المقالات المترجمة قد تحتوي على أخطاء في المفردات او بناء الجمل او النحو. وعليه، فإن شركة مايكروسوفت ليست مسؤولة عن اية أخطاء او عدم دقة في الترجمة او أية أضرار قد تحدث نتيجة أخطاء في ترجمة محتويات النص او استخدامه من قبل العملاء.

اضغط هنا لرابط المقالة باللغة الانجليزية890775
الموجز
توضح هذه المقالة كيفية تكوين حساب وكيل "عميل SQL Server من" مستوى Microsoft Windows لاستخدامه بواسطة تسجيلات دخول SQL غير الأعضاء مسؤول النظام دور الملقم ثابتة. بالإضافة إلى ذلك، تحتوي هذه المقالة على مراجع لمزيد من المعلومات لمساعدتك على حل المشكلات التي قد تحدث عند محاولة إعداد حساب وكيل.
مقدمة
استدعاء xp_cmdshell توسيع الإجراء المخزن تربيط أوامر Windows من داخل Microsoft SQL Server 2000. عند تنفيذ xp_cmdshell توسيع الإجراء المخزن بعضو دور sysadmin الثابت على الملقم، يتم تشغيل عملية Windows shell الأمر مع سياق أمان Windows حساب الخدمة ل SQL Server. على سبيل المثال، إذا تم تشغيل ملقم SQL ضمن تسجيل دخول Windows لديه حقوق إدارية على الكمبيوتر، سيتلقى المستخدم الذي يقوم بفتح موجه الأوامر باستخدام xp_cmdshell توسيع الإجراء المخزن الوصول إلى Windows كمسؤول محلي. بشكل افتراضي، يتم منح الإذن لتنفيذ xp_cmdshell توسيع الإجراء المخزن فقط إلى أعضاء دور مسؤول النظام sysadmin الثابت على الملقم. يساعد هذا الإذن أي التصعيد للحقوق.

إذا كنت ترغب في بدء عمليات Windows جديدة ذات مستوى المنخفض من الحقوق، يمكنك استخدام حساب وكيل عميل SQL Server لتكوين حساب Windows بمستوى مناسب من الحقوق.
معلومات أخرى
عند محاولة تنفيذ xp_cmdshell توسيع الإجراء المخزن من تسجيل دخول SQL Server التي ليست عضوا في دور مسؤول النظام sysadmin الملقم وحساب وكيل عميل SQL Server لم يتم إعداد بشكل صحيح، قد تتلقى رسائل خطأ مشابهة لما يلي:
Msg 50001، المستوى الأول، وحالة 50001
xpsql.cpp: خطأ 997 من جيتبروكسياككونت على البند 499
Msg 50001، المستوى الأول، وحالة 50001
xpsql.cpp: خطأ 317 من جيتبروكسياككونت على البند 499
Msg 50001، المستوى الأول، وحالة 50001
xpsql.cpp: خطأ من جيتبروكسياككونت على البند 499
Msg 50001، المستوى الأول، وحالة 50001
xpsql.cpp: خطأ 87 من جيتبروكسياككونت على البند 499
إذا كان لديك للسماح للمستخدمين غير مسؤول النظام بتشغيل xp_cmdshell توسيع الإجراء المخزن في SQL Server 2000، يجب تكوين حساب الوكيل وحساب بدء التشغيل SQL Server كعضو من مجموعة "المسؤولين المحليين". عند تنفيذ SQL Server الأوامر للمستخدمين الذين لا يعتبرون أعضاءاً من مسؤول النظام sysadmin دور الملقم ثابتة أو الوظائف، xp_cmdshell توسيع الإجراء المخزن وعميل SQL Server استخدام حساب وكيل. يتم تخزين بيانات اعتماد أمان Windows لحساب الوكيل في قاعدة البيانات السرية مرجع الأمان المحلي (LSA). يمكن Windows المسؤولين فقط الوصول إلى هذه المعلومات. لذلك، إذا لم يكن حساب بدء التشغيل SQL Server عضوا في مجموعة "المسؤولين المحليين"، المستخدم يمكن تخزين أو استرداد بيانات اعتماد أمان Windows لتسجيل الدخول كحساب وكيل، وفشل الإجراء المخزن الموسع xp_cmdshell . ولتمكين المستخدمين غير مسؤول النظام بتشغيل xp_cmdshell توسيع الإجراء المخزن، يجب أن يكون حساب بدء التشغيل SQL Server عضوا في مجموعة "المسؤولين المحليين".

لتكوين حساب وكيل لتسجيلات دخول SQL Server غير الأعضاء مسؤول النظام sysadmin ثابت دور الملقم، استخدم إحدى الطرق التالية.

الطريقة الأولى: إدارة المؤسسة SQL Server استخدام

تكوين حساب Windows

لتعيين حساب Windows لتمكين المستخدمين غير مسؤول النظام لتنفيذ xp_cmdshell توسيع الإجراء المخزن، اتبع الخطوات التالية:
  1. بدء تشغيل إدارة المؤسسة SQL Server.
  2. في SQL Server Enterprise Manager، قم بتوسيع الملقم ميكروسوفتسقل، ثم قم بتوسيع سيرفيرجروب SQL.
  3. قم بتوسيع مثيل SQL Server الذي تريد تعيين حساب الوكيل أوبثي.
  4. قم بتوسيع الإدارةوانقر نقراً مزدوجاً فوق عامل SQLServerثم انقر فوق خصائص.
  5. في ديالوجبوكس خصائص عميل SQL Server ، انقر فوق علامة التبويب مهمة النظام .
  6. ضمن SysAdmin عدم حساب وكيل خطوة مهمة، انقر لإلغاء تحديد خانة الاختيار يمكن فقط للمستخدمين ذوي امتيازات مسؤول النظام اكسيكوتيكمديكسيك وخطوات العمل أكتيفيسكريبتينج .
  7. في مربع الحوار حساب وكيل عميل SQL Server، اكتب اسم حساب Windows في المربع اسم المستخدم.
  8. في المربع كلمة المرور ، اكتب ويندووسباسورد.
  9. في مربع المجال ، اكتب المجال الذي يتم حساب Windows عضو ومن ثم انقر فوق "موافق" تووتيميس.

إضافة حساب تسجيل دخول SQL Server

إجراء مخزن الحساب الذي تريد منحة أذونات لتنفيذ xp_cmdshell الموسعة لإضافة تسجيل دخول SQL Server، اتبع الخطوات التالية:
  1. في إدارة SQL Server تحديثها، قم بتوسيعالأمان.
  2. في جزء " تسجيل الدخول "، انقر فوق الحساب الذي تريد منحة أذونات لتسجيل الدخول SQLServer، وثم انقر فوقخصائص.

    ملاحظة: في حالة عدم إضافة الحساب مسبقاً، يمكنك إنشاء حساب Windows وكيل كحساب تسجيل الدخول.
  3. في ديالوجبوكس خصائص تسجيل الدخول إلى ملقم SQL ، انقر فوق علامة التبويب قاعدة بيانات Access .
  4. في القائمة تحديد قاعدة البيانات التي يمكن تسجيل الدخول بيتيس الوصول إليها ، انقر لتحديد بوكسفور الاختيار تسمح قاعدة البيانات الرئيسية ، ومن ثم انقر فوق موافق.
  5. قم بتوسيع قواعد البياناتوتوسيعالرئيسيةثم انقر فوق توسيع ستوريدبروسيدوريس.
  6. تحديد موقع وثم انقر نقراً مزدوجاً فوقxp_cmdshell توسيع الإجراء المخزن ثم انقر فوقخصائص.
  7. في مربع الحوار بروسيدوريبروبيرتيس المخزنة الموسعة ، انقر فوق أذونات.
  8. انقر لتحديد خانة الاختيار EXEC ل theSQL Server حساب تسجيل الدخول الذي تريد منحة أذونات للتنفيذ، أندثين انقر فوق موافق مرتين.

الطريقة الثانية: تشغيل برنامج نصي SQL للعمليات

تشغيل البرنامج النصي SQL للعمليات التالية لتمكين حساب Windows لتنفيذ xp_cmdshell توسيع الإجراء المخزن:
-- Set database to master.USE masterGO-- Add a valid Windows account as proxy account.EXECUTE xp_sqlagent_proxy_account N'SET'                        , N'<DomainName>'                        , N'<WindowsAccount>'                        , N'<WindowsPassword>'GO-- Get the proxy account to determine whether it is set up correctly. EXECUTE xp_sqlagent_proxy_account N'GET'GO-- Enable non-system administrators to run the job and to execute xp_cmdshell.EXECUTE msdb..sp_set_sqlagent_properties @sysadmin_only = 0GO
ملاحظة: في هذا السيناريو، <DomainName></DomainName> هو المجال الذي يتم حساب Windows عضو. <WindowsAccount></WindowsAccount> هو اسم حساب Windows. <WindowsPassword></WindowsPassword> هي كلمة المرور لحساب Windows.

لإضافة تسجيل دخول SQL Server المخزنة الحساب الذي تريد منح الإذن لتنفيذ xp_cmdshell توسيع الإجراء بتشغيل البرنامج النصي SQL للعمليات التالية:
USE masterGO-- Grant database access to the SQL Server login account that you want to provide access.EXEC sp_grantdbaccess '<SQLLogin>'GO-- Grant execute permission on xp_cmdshell to the SQL Server login account.GRANT exec ON xp_cmdshell TO <SQLLogin>GO
ملاحظة: في هذا السيناريو، <SQLLogin></SQLLogin> يتم تسجيل دخول SQL Server الذي تريد منح الإذن لتنفيذ xp_cmdshell توسيع الإجراء المخزن.

ملاحظة: يتم حساب وكيل حساب Windows تشغيل في سياق الأمان الخاص بها مهام عميل SQL Server أو أوامر سطر الأوامر. عند إعداد حساب Windows لحساب وكيل عميل SQL Server، يجب منح الحساب مستوى Windows "تسجيل الدخول كمهمة دفعية" حق المستخدم.
مراجع
لمزيد من المعلومات حول xp_cmdshell الموسعة المخزنة الإجراء، راجع الموضوع "عبارات SQL Reference" في "كتب SQL Server عبر إنترنت".

لمزيد من المعلومات حول حساب وكيل عميل SQL Server، قم بزيارة مواقع ويب شبكة مطوري Microsoft (MSDN) التالية:لمزيد من المعلومات حول كيفية تعيين الأذونات المناسبة على حساب وكيل، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":
283811 كيفية تغيير حساب خدمة SQL Server أو SQL Server عامل دون استخدام SQL Enterprise Manager في SQL Server 2000 أو SQL Server Manager تكوين SQL Server 2005
SQL2000

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 890775 - آخر مراجعة: 09/05/2015 03:37:00 - المراجعة: 4.0

Microsoft SQL Server 2000 Standard Edition

  • kbinfo kbhowto kbmt KB890775 KbMtar
تعليقات