في هذه المقالة ننشر الدرس الثاني SQL Server لاختصاص تقني سامي قواعد البيانات ضمن سلسة من الدروس للاستاذ المبدع كعــرار يوســــف في مقياس SQL SERVER لاختصاص تقني سامي قواعد البيانات
الدرس الثاني :التوثيـق في (Authentication) SQL Server
تعريف التوثيق او المصادقة و انواعها :
هي عبارة عن مراجعة بيانات دخول المستخدم والسماح له بالدخول اذا كانت
بياناته صحيحة بحيث بيانات الدخول في Sql Server هي اسم مستخدم و كلمة
مرره وهي نوعان من التوثيق:
- أ. المصادقة عن طريق ويندوز وتتم عن طريق تحديد احدى حسابات نظام التشغيل ويندوز
- ب. المصادقة عن طريق Sql Server (مختلطة) وتتم عن طريق تحديد مستخدم Sql Server مثل مستخدم sa وهو اهم مسؤول في Sql Server.
الحماية في SQL Server
تسمح لنا بالتحكم في الوصول الى المعطيات و معالجتها وذلك باستعمال الصلاحيات
و الادوار (هو مجموعة من صلاحيات تمنح للمستخدم)عند انشاء حسابات
المستخدمين وهناك نوعين من الادوار وهما :
أ. ادوار الخادم
وهي كما يلي:
- اضافة عضو لدور خادم : باستعمال T-SQL نكتب التعليمة الموالية :
- sp_addsrvrolemember 'nom connexion' , 'nom rôle'
- حذف اتصال لدور خادم: باستعمال T-SQL نكتب التعليمة الموالية :
- 'sp_dropsrvrolemember 'nom connexion' , 'nom rôle
ب. ادوار قاعدة معطيات
تسمح لك أدوار قاعدة البيانات دائمًا بتجميع التراخيص (التفويض)أو رفض لتعليمات او لكائنات من اجل تسهيل تسيير حقوق ، وهناك أدوار محددة مسبقًا ومن الممكن تحديد أدوا الخاصة. وهي:
اضافة عضو لدور قاعدة معطيات
باستعمال SSMS (Microsoft SQLServer Management Studio)نتبع الخطوات الموالية :
- نضغط على علامة(+)بجانب قاعدة معطيات المراد انشاء ادوار بها لتوسعته
- تظهر مجموعة من مجلدات نذهب الى مجلد Sécurité ونضغط على علامة(+)
- فتظهر لنا مجموعة من مجلدات نذهب الى مجلد Rôles ونضغط على علامة (+)
- فتظهر لنا مجموعة من مجلدات نذهب الى مجلد Rôles de base de donnée
- ونضغط بالمفتاح الايمن للفأرة فتظهر لنا قائمة نختار منها الامرNouveau Rôle de la base de donnée فتظهر لنا النافذة الموالية:
من خلال نافذة سابقة نحدد اسم دور و مالك و قائمة ادوار قاعدة معطيات و
اعضاء ثم نضغط على OK
وباستعمالT-SQL
نكتب التعليمة الموالية :
Create role nom role authorization propriétaire
حذف دور قاعدة معطيات :
- باستعمال SSMS نتبع الخطوات الموالية :
- نحدد الدور المراد حذفه ونضغط بالمفتاح الأيمن للفأرة فتظهر لنا قائمة نختار منها الامرSupprimer فتظهر لنا نافذة نضغط على OK
- وباستعمالT-SQL نكتب التعليمة الموالية :
Drop ROLE [nom rôle]
- 1-نكتب في Nom d’Accèsاسم المستخدم الذي سوف يكون له صلاحية على قاعدة المعطيات ,ثم نختار Authentification
- SQL Server-2 لإعطاء المستخدم كلمة المرور , كما نلاحظ من الشكل بعض الخيارات على كلمة المرور مثل تغيير كلمة المرور عند الدخول لقاعدة المعطيات , وذلك من خلال او تطبيق الامان كطول كلمة المرور او خليط من الارقام و الحروف او تغيرها كل فترة زمنية ,
- ثم نختار قاعدة البيانات التي تكون لهذا المستخدم صلاحية عليها من خلال base de données par défaut
- ثم نذهب الى Roles du Serveur لإعطاء صلاحيات على الخادم (ادوار الثابتة للخادم)فتظهر لنا النافذة التالية :
ومن اجل اعطاء ادوار الثابتة لقاعدة المعطيات نضغط على Mappage de l’utilisateur فتظهر لنا النافذة التالية:
نحدد قاعدة المعطيات التي سيكون للمستخدم صلاحية عليها وكذلك الأدوار ثم بعد اختيار الصلاحيات نضغط OK ونقوم بعملية اتصال باسم المستخدم وكلمة المرور التى اضفناها في الخطوات السابقة فنجد ان المستخدم لا يملك سوى الصلاحيات المخولة له فقط و يظهر اسم المستخدم في قائمة Connexions
في T-SQL نكتب التعليمة الموالية :
مصادقة ويندوز:
Create login nom_connexion from windows
with default_database=base de données,
default_language=[langue],
مصادقة :SQL Server
Create login nom_connexion
with Password='Mot de Passe' ,
default_database=base de données,
default_language=[langue],
check_expiration=off/on, ‘تطبيق قواعد كلمة مرور ويندوز’ check_policy=on