-
عند تعيين الأذونات، بغض النظر عن المستخدم أو الدور، فهي كائنات لتعيين الأذونات. باستثناء أن أدوار التطبيق خاصة ولها علاقات حصرية مع الأدوار والمستخدمين الآخرين، فإن أدوار قاعدة البيانات وأعضائها لديهم علاقة وثيقة جدًا من حيث الأذونات. قد ينتمي المستخدم إلى أدوار قاعدة بيانات متعددة في نفس الوقت، وقد يكون لكل دور أذونات مختلفة في هذا الوقت، مبدأ حصول المستخدمين على الأذونات الفعلية هو "الاتحاد" ما لم يكن هناك إعداد رفض (ممنوع). على سبيل المثال، يُمنع الدور "أ" من قراءة جدول البيانات "ب"، لكن الدور "ج" يمكنه قراءة جدول البيانات
ب، في هذا الوقت، لا يزال المستخدم الذي ينتمي إلى الأدوار A وC غير قادر على قراءة جدول البيانات B لأنه تم حظره.
يمكن تقسيم كائنات الأذونات إلى خوادم وقواعد بيانات، أي أنه يمكن تعيين الأذونات بشكل منفصل لهذين الاثنين، يرجى الاطلاع على الشرح التالي.
تحديد أذونات الخادم (1) انقر بزر الماوس الأيمن على الخادم في Object Explorer وحدد "خصائص".
(2) قم بالتبديل إلى "الأذونات" في مربع الحوار.
(3) حدد الكائن الذي سيتم تعيين الأذونات له في "اسم تسجيل الدخول أو الدور"، وتحقق من التفويض على التوالي في "الأذونات الصريحة".
بعد الانتهاء، انقر فوق الزر "موافق"، كما هو موضح في الشكل 15-21.
كما هو موضح في الشكل 15-21، فهو إعداد الأذونات للخادم. "المصرح" هو الشخص الذي قام بتسجيل الدخول حاليًا إلى SQL Server
اسم تسجيل الدخول للخادم؛ "الأذونات" هي الأذونات التي يمكن تعيينها بواسطة جميع أسماء تسجيل الدخول الحالية؛ "المنحة" تعني منح الأذونات؛ إذا تم تحديد "الحصول على منح"، فهذا يعني أن sa يمنح الأذونات للكائن المحدد ويمكنه ذلك ثم منحهم لتسجيلات دخول أخرى؛ "رفض" إنه محظور الاستخدام.
يرتبط تحديد هذه الخيارات الثلاثة. إذا تم تحديد "رفض"، فسيتم مسح "منحة" و"منحة" تلقائيًا؛ وإذا تم تحديد "منحة"، فسيتم مسح "رفض" وسيتم تحديد "منحة". .
"اسم تسجيل الدخول أو الدور" هو الكائن الذي تم تعيين الأذونات له. يمكن للقراء النقر فوق الزر "إضافة" لتحديد أسماء أو أدوار تسجيل دخول أخرى. ومع ذلك، لا يمكن لجميع أدوار الخادم المضمنة تغيير الأذونات، ولكن يمكن تحديد الأذونات لـ الدور العام.
لعرض أذونات تسجيل الدخول أو الدور المحدد حاليًا، انقر فوق زر الأذونات الفعالة، حيث قد لا يتم تعيين الأذونات الفعالة فقط في الشكل 15-21، ولكنها تعتمد أيضًا على الدور الذي ينتمي إليه تسجيل الدخول. لذلك، سيعرض الشكل 15-21 فقط الأذونات المحددة في هذا الإعداد، ولن يتم عرض الأذونات الافتراضية الموجودة.
الشكل 15-21 تعيين أذونات الخادم وتحديد أذونات قاعدة البيانات (1) حدد قاعدة بيانات الكتب الإلكترونية في Object Explorer، وانقر بزر الماوس الأيمن وحدد "خصائص".
(2) قم بالتبديل إلى "الأذونات" في مربع الحوار.
(3) حدد الكائن الذي سيتم تعيين الأذونات له في "المستخدم أو الدور"، وتحقق من الأذونات في "أذونات صريحة"، ثم انقر فوق الزر "موافق" عند الانتهاء، كما هو موضح في الشكل 15-22.
أذونات الكائنات (1) حدد قاعدة بيانات الكتب الإلكترونية في مستكشف الكائنات، وافتح "جدول البيانات"، وحدد جدول بيانات "الطلبات"، وانقر بزر الماوس الأيمن وحدد "خصائص".
(2) قم بالتبديل إلى "الأذونات" في مربع الحوار.
(3) انقر فوق الزر "إضافة"، ثم حدد المستخدم أو دور قاعدة البيانات أو دور التطبيق الذي تريد تغيير أذوناته في مربع الحوار.
(4) حدد الكائن الذي سيتم تعيين الأذونات له في "المستخدم أو الدور"، وتحقق من الأذونات في "أذونات صريحة"، ثم انقر فوق الزر "موافق" عند الانتهاء، كما هو موضح في الشكل 15-23.
طرق التشغيل في الشكل 15-21 والشكل 15-23 هي نفسها تمامًا، والفرق هو أن أذونات الخادم وقاعدة البيانات والكائنات يتم تعيينها بشكل منفصل، كما أن الكائنات التي يمكن تعيينها مختلفة أيضًا. في الشكل 15-21، يمكن تحديد الأذونات لاسم تسجيل الدخول ودور الخادم
في الشكل 15-23، يمكن تحديد الأذونات للمستخدمين وأدوار قاعدة البيانات وأدوار التطبيق؛ وهناك اختلاف آخر وهو أن الأذونات التي يمكن تحديدها مختلفة.
الشكل 15-22 إعداد أذونات قاعدة البيانات
الشكل 15-23 تعيين أذونات الكائنات وأذوناتها
الأذونات التي يمكن تعيينها في SQL Server معقدة للغاية. هناك 94 إذنًا من الخادم إلى الكائن. والأمر الأكثر صعوبة هو فهم خصائص الخادم وقاعدة البيانات.
جدول 4-15 أوصاف الأذونات المهمة
وصف محتوى الإذن
يمنح التحكم قدرات تشبه الملكية إلى المستفيد. في الواقع، يتمتع المستفيد بحق آمن في ذلك
جميع الأذونات المحددة على الأيقونة
ALTER يمنح القدرة على تغيير الخصائص (باستثناء الملكية) لكائن محدد قابل للتأمين. في نطاق معين
عندما يتم منح إذن ALTER لنطاق ما، فإنه يتم منحه أيضًا تغيير النطاق أو إنشائه أو حذفه.
قدرات أي كائن أمني الواردة
تغيير أي <كائن قابل للتأمين للخادم> يمنح القدرة على إنشاء أو تغيير أو حذف مثيلات فردية لكائن خادم قابل للتأمين
ALTER ANY <كائن آمن لقاعدة البيانات> يمنح الإنشاء أو ALTER أو DROP لمثيل فردي لكائن آمن لقاعدة البيانات.
قدرة
الحصول على الملكية يسمح للممنوح بالحصول على ملكية كائن الأمان الممنوح
إنشاء <كائن أمان الخادم> يمنح القدرة على إنشاء كائنات أمان الخادم للممنوح
إنشاء <كائن أمان قاعدة البيانات> يمنح القدرة على إنشاء كائنات أمان قاعدة البيانات للممنوح
يتيح عرض التعريف للممنوح الوصول إلى البيانات التعريفية
يشير "كائن الأمان" في الجدول 4-15 إلى كائن عملية إعداد الأذونات، مثل "الدور" في "إنشاء دور"
هذا هو الكائن الآمن هنا.
استخدم T-SQL لتعيين الأذونات لتعيين الأذونات في T-SQL، يمكنك استخدام العبارات الثلاثة GRANT (منح)، وDENY (رفض)، وREVOKE (إبطال).
وهذه العبارات الثلاثة لها استخدامات كثيرة، وأشكالها الأساسية هي كما يلي:
منح الكل أو اسم الإذن على الكائن للمستخدم أو اسم الدور مع الخيار
إبطال الكل أو اسم الإذن على الكائن إلى اسم المستخدم أو الدور CASCADE
رفض الكل أو اسم الإذن على الكائن إلى اسم المستخدم أو الدور CASCADE
تحتوي كل عبارة على ثلاثة عناصر، وهي اسم الإذن والكائن والمستخدم (الدور)، على النحو التالي (Ch151524Grant.sql):
استخدم الكتاب الإلكتروني
منح التحديد على OBJECT::dbo.members إلى David
منح المراجع (معرف العضو) على OBJECT::dbo.Orders
إلى داود مع خيار المنحة
تستخدم العبارات المذكورة أعلاه عبارة Grant لمنح الأذونات لـ David على التوالي، ولكن محتوى الكائن مختلف، يرجى استخدام اسم الكائن as
ابدأ بـ "OBJECT::"، متبوعًا بالاسم الكامل، ويفضل أن يتبعه المالك. تعمل عبارة Grant الثانية على كائن خاص، "(MemberID) ON OBJECT:: dbo.Orders"، والذي يمثل MemberID الذي يعمل على كائن Orders.
الحقل، قم بمنح أذونات العرض في هذا العمود إلى David. وفي الوقت نفسه، فإن إضافة "مع خيار المنحة" يعني أن ديفيد يمكنه منح هذا الإذن للآخرين، وهو ما يعادل "مع المنحة" في الشكل 15-23.
في عبارات الإلغاء والرفض، يمكن إضافة Cascade في النهاية، وتتمثل وظيفة هذه الكلمة الأساسية في إلغاء الأذونات التي يمكن للمستخدم منحها للآخرين بعد ذلك، أي إلغاء "تم منحها".
عرض الأذونات المتاحة نظرًا لوجود العديد من الأذونات المتاحة، لا توجد خيارات للاختيار من بينها في T-SQL، لذا استخدم GRANT وDENY و.
عند الإلغاء، يجب عليك أولاً معرفة اسم الإذن قبل أن تتمكن من تعيينه. يمكن للقراء عرض sys.fn_builtin_permissions،
تظهر جداول بيانات النظام الثلاثة sys.database_permissions وsys.server_permissions في الشكل 15-24.
الشكل 15-24 عرض الأذونات المتاحة "Permission_name" في الشكل 15-24 هو اسم الإذن المتاح، والذي يمكن تطبيقه على Grant أو DENY أو.
إبطال البيان.
عرض محتوى الإذن لعرض اسم تسجيل الدخول الحالي ومحتوى إذن المستخدم، يمكنك تنفيذ الإجراء sp_helpprotect المخزن، كما هو موضح في الشكل 15-25
هو مبين.
الممنوح في الشكل 15-25 هو اسم المستخدم الذي يمنح الأذونات، والمانح هو اسم المستخدم الذي يمنح الأذونات للآخرين.
يمكن استخدام ما يصل إلى أربعة معلمات بعد الإجراء sp_helprotect المخزن، الذي يمثل اسم الكائن واسم المستخدم واسم المانح، ويمكن أن تكون المعلمة الرابعة o أو s، تمثل أذونات كائن الاستعلام أو أذونات البيان على التوالي.