السلام عليكم و رحمة الله تعالى و بركاته,,,
الجزء الثاني : نظام الحماية SQL Server Authentification
في هذا الجزء الثاني من البحث, سنتحدث إن شاء الله, عن كيفية تحديد صلاحيات مستخدمي برامجنا عبر تحديد صلاحياتهم كمستخدمي SQL Server عبر نظام الحماية SQL Server Authentification. العمل بهذا النظام يحيلنا مباشرة على SQL Server من دون ضرورة المرور عبر نظام حماية Windows. العمل بهذا النظام يمكن العديد من المستخدمين من الربط بـ SQL Server من حساب ويندوز واحد عكس نظام حماية Windows Authentification الذي يوجب الخروج من حساب ويندوز و الدخول إلى آخر خصوصا إذا كان عدد من المستخدمين يعملون على نفس الحاسب. المهم, لكل نوع طريقة خاصة في العمل يجب أن نأخذها بعين الاعتبار خلال مرحلة تصميم البرامج المرتبطة بقواعد بيانات SQL Server. و كما تحدثنا في الجزء السابق من هذا البحث عن نظام الحماية Windows Authentification دعونا نبدأ الآن في التحدث عن مراحل زيادة مستخدم عبر نظام الحماية SQL Server Authentification.
كي نستطيع الربط مباشرة مع SQL Server من دون المرور عبر حساب ويندوز, نحتاج إلى تفعيل قابلية السرفر على الربط بكلتا الطريقتين لأنه عند تثبيت SQL Server تكون قابلية السرفر للربط بنظام الحماية SQL Server Authentification غير مفعلة. ولتفعيلها نربط الإتصال بالسيرفر عبر حساب مدير النظام ثم ننقر بالزر الأيمن للفأرة على مجلد السيرفر و نختار Properties من القائمة التي ستظهر كما هو مبين في الصورة أذناه.
بعد ذلك و على نافذة خصائص SQL Server التي ستظهر, نقوم بالنقر على العنصر Security من لائحة الصفحات على يسار النموذج. بعدها نحدد خانة الاختيار SQL Server and Windows Authentification mode. ننقر على الزر OK لإتمام العملية.
بعد نجاح عملية تهيئة SQL Server لقبول ربط الاتصال به عبر نظامي الحماية SQL Server و Windows, قدي يحتاج السيرفر المشتغل حاليا إلى إعادة تشغيل كي يتم تفعيل عملية التهيئة التي قمنا بها. لإعادة تشغيل السيرفر, نقوم بتشغيل برنامج Services الذي يمكننا من إيقاف, تشغيل و إعادة تشغيل Windows Services. لتشغيل هذا البرنامج نقوم بالضغط على الزرين Windows+R لإظهار نافذة تشغيل البرامج Run حيث سندخل اسم الملف التنفيذي Services.msc ثم نضغط على الزر Enter. عندما تظهر لنا نافذة البرنامج كما هي مبينة على الصورة أذناه, نضغط بالتتابع على الأزرار s و q حتى يتم تحديد SQL Server (Server instance name) على اللائحة ثم ننقر على الرابط Restart على يسار لائحة Windows Services.
بعد إعادة تشغيل SQL Server Windows Service يمكننا البدء في زيادة مستخدم SQL Server مهيأ لربط الاتصال مع السيرفر عبر نظام حماية SQL Server Authentification. سيحتاج كل مستخدم إلى إدخال اسم المرور و كلمة المرور كذلك, عكس نظام الحماية Windows Authentification الذي يضع الثقة في مستخدم الويندوز لربط الاتصال به.
زيادة مستخدم جديد في نظام حماية SQL Server شبيه إلى حد ما بالنظام الذي تحدثنا عنه في الجزء الأول من هذا البحث. سنبدأ كما السابق بالنقر على علامة زائد بجانب المجلد الذي يحمل اسم السيرفر لاستعراض عناصره. بعده, ننقر على علامة زائد بجانب مجلد Security لاستعراض عناصره ثم ننقر بزر الفأرة الأيمن على مجلد Connections… و نختار New connection… من القائمة التي ستظهر.
على النافذة التي ستظهر, سننشئ المستخدم الجديد مع معلومات اتصاله بالسيرفر. على مربع نص Login سندخل اسم المستخدم أو اسم الاتصال ثم نحدد خانة الاختيار SQL Server Authentification, تحديد هذه الخانة سيقوم بتنشيط المربعين الذين من خلالهما سنحدد كلمة المرور التي سيستعملها المستخدم الجديد للاتصال بـ SQL Server. لم يحن الوقت بعد للنقر على الزر OK.
بعد ذلك, سنختار من لائحة اختيار الصفحات على يسار النافذة, سنختار Server roles حيث يمكن لنا تحديد دور أو أدوار المستخدم على السيرفر. بالنسبة لمستخدم عادي نقوم بتحديد خانة الاختيار public حتى نتمكن من تحديد صلاحيات المستخدم على كل عنصر و جدول على حدى كما رأينا في الجزء الأول من هذا البحث. اختيار دور من هذه الأدوار يعطي للمستخدم صلاحيات على كل العناصر وهذا يكون له دور أساسي عند إعطاء الصلاحيات لمديري و مشرفي النظام و هو أمر خارج عن نطاق هذا البحث.
بعد ذلك و قبل النقر على الزر OK, نختار User mappings من على لائحة الصفحات يسار النافذة. يمكن لنا هنا تحديد أدوار المستخدم على قواعد البيانات الموجودة سلفا و ذلك بتحديد خانة الاختيار بجانب كل قاعدة بيانات. هذه الشاشة ستوفر علينا الوقت في حالة ما إذا أردنا أعطاء المستخدم صلاحيات على عدد من قواعد البيانات. يمكننا كذلك تحديد أدوار المستخدم على كل قاعدة بيانات مرتبطة بالسيرفر. و أخيرا ننقر على الزر OK لإتمام عملية زيادة المستخدم الجديد.
الآن و بعد تهيئة SQL Server للعمل بأي طريقة من طريقتي الربط سواء كانت Windows Authentification أو SQL Server Authentification يمكننا تغيير المستخدم متى شئنا و ذلك بقطع الاتصال بالسيرفر ثم إعادة ربط الاتصال باسم مستخدم و كلمة مرور جديدة.
طريقة تحديد صلاحيات المستخدمين للوصول إلى عناصر و جداول قاعدة البيانات تبقى هي هي كما هو مشروح في الرابط التالي تحت عنوان تحديد صلاحيات مستخدم للوصول إلى جدول في قاعدة البيانات.
في الجزء القادم, سنقوم بتحرير التطبيق المرفق مع الأجزاء السابقة ليتلاءم و نظام حماية SQL Server Authentification.
آسف على التأخير في استكمال هذا البحث و حتى الجزء القادم منه, لكم...
تحياتي...

