التأمين في سيكويل سيرفر: التوثيق 5 – حذف مستخدمين

This article is available in English too, check it out here.

اقرأ المزيد عن تأمين سيكويل سيرفر هنا.

هذه السلسلة

من هذه السلسلة:

المحتويات

محتويات هذا الموضوع:

  • هذه السلسلة
  • المحتويات
  • نظرة خاطفة
  • مقدمة
  • حذف مستخدم
    • استخدام لوحة التحكم
    • استخدام جمل T-SQL
    • استخدام الكود
  • خاتمة
  • ماذا بعد

نظرة خاطفة

هذا هو الدرس الخامس في سلسلة التوثيق في سيكويل سيرفر. بعد أن تكلمنا عن آلية التوثيق في سيكويل سيرفر وكيفية عرض المستخدمين وأيضا إضافة مستخدمين جدد وتعديل بياناتهم، يتبقى لنا الخطوة الأخيرة في عمليات المستخدمين ألا وهي الحذف، وهو ما سنتكلم عنه اليوم.

في الدروس القادمة سنتعلم كيفية الاستفادة من المستخدمين في عملية التفويض وإعطاء الأدوار والصلاحيات في سيكويل سيرفر.

مقدمة

اليوم نتكلم عن الأخيرة في عمليات الأساسية في قواعد البيانات وهي CRUD (الإنشاء Create، القراءة Read، التعديل Update، والحذف Delete) ألا وهي الحذف. اليوم نتعلم كيفية حذف مستخدم مسجل من سيكويل سيرفر وبالتالي لا يستطيع هذا المستخدم التعامل مرة أخرى مع سيكويل سيرفر. (إذا أردت فقط إيقاف المستخدم لفترة معينة، فننصحك بقراءة الدرس الرابع أولا: تعديل المستخدمين.)

حذف مستخدم

مثلما تعودنا في السابق، يمكن حذف مستخدم باستخدام إحدى ثلاثة طرق:

  1. باستخدام لوحة التحكم SQL Server Management Studio.
  2. باستخدام أوامر T-SQL.
  3. باستخدام إجراءات مسجلة Stored Procedure.

وبالطبع بالنسبة لمستخدمي سيكويل سيرفر Express لن يمكنها استخدام الطريقة الأولى ولكن يمكنهم تطبيق الثانية والثالثة.

استخدام لوحة التحكم

من لوحة التحكم الخاصة بالسيكويل سيرفر SQL Server Management Studio ومن اليسار من Object Explorer اذهب إلى السيرفر ثم إلى Security وأخيرا إلى Login لتظهر لك قائمة بالمستخدمين الحاليين، قم بتحديد المستخدم واختيار أمر Delete من القائمة المنسدلة.

استخدام جمل T-SQL

ويتم ذلك عن طريق الأمر DROP LOGIN والذي له الصيغة التالية:

DROP LOGIN login_name

والذي يمكن تطبيقه بتنفيذ كود مثل التالي:

DROP LOGIN [someuser];

بالطبع لا يمكنك حذف المستخدم الذي تستخدمه الآن، أي الذي دخلت به إلى سيكويل سيرفر.

استخدام إجراءات مسجلة

وأخيرا، يمكنك استخدام الإجراء sp_droplogin() لحذف بيانات دخول مستخدم. هذا الإجراء له التعريف التالي:

sp_droplogin [ @loginame = ] 'login'

ويمكن استخدامه بالطريقة التالية:

EXEC sp_droplogin 'someuser';

استخدام الكود

بعد تعرفك على الطرق المتاحة من خلال جمل T-SQL والإجراءات المسجلة، يمكنك تطبيق هذا من خلال كود الدوت نت. الكود التالي يقوم بحذف المستخدم someuser الذي قمنا بإنشائها مسبقا.

    SqlConnection conn = new SqlConnection
        ("Server=.;Data Source=;UID=someuser;PWD=newbuzzword");
    SqlCommand cmd = new SqlCommand
        ("DROP LOGIN [asomeuser];", conn);
    // In addition, you can use this command:
    // EXEC sp_droplogin 'someuser';
    try
    {
        conn.Open();
        cmd.ExecuteNonQuery();
    }
    catch (SqlException ex)
    {
        if (ex.Number == 15151)
            Console.WriteLine("Login does not exist.");
        else if (ex.Number == 15007)
            Console.WriteLine("Login already logged on.");
        else
            Console.WriteLine("{0}: {1}", ex.Number, ex.Message);
    }
    finally
    {
        conn.Close();
    }

لاحظ الأخطاء التي يمكن حدوثها أثناء عملية الحذف.

خاتمة

تعلمنا العمليات الأربعة CRUD على المستخدمين، الآن نحن جاهزين لمعرفة كيفية الاستفادة من المستخدمين في عملية التفويض وإعطاء الأدوار والصلاحيات. ابقوا معنا!

ماذا بعد

من هذه السلسلة:

مواضيع مشابهة:

اخترنا لك:

أحدث المواضيع:

هل أعجبتك؟ شارك بها...