استخدام مصادقة Azure Active Directory

ينطبق على: قاعدة بيانات Azure SQL مثيل Azure SQL المُدار Azure Synapse Analytics

مصادقة Azure Active Directory (Azure AD) هي آلية للاتصال بـ Azure SQL Database ومثيل Azure SQL المدار و Synapse SQL في Azure Synapse Analytics باستخدام الهويات في Azure AD.

ملاحظة

تنطبق هذه المقالة على Azure SQL Database وِمثيل SQL المدار وAzure synapse Analytics.

باستخدام مصادقة Azure AD، يمكنك إدارة هويات مستخدمي قاعدة البيانات وخدمات Microsoft الأخرى في موقع مركزي واحد بشكل مركزي. توفر إدارة المعرّف المركزية مكانًا واحدًا لإدارة مستخدمي قاعدة البيانات وتبسط إدارة الأذونات. تشمل المزايا ما يلي:

  • يقدم بديلا لمصادقة SQL Server.

  • يساعد على إيقاف انتشار هويات المستخدمين عبر الخوادم.

  • يسمح بتدوير كلمة المرور في مكان واحد.

  • يمكن للعملاء إدارة أذونات قاعدة البيانات باستخدام مجموعات (Azure AD) الخارجية.

  • يمكنه إزالة تخزين كلمات المرور بتمكين مصادقة Windows المتكاملة والأشكال الأخرى من المصادقة التي يدعمها Azure Active Directory.

  • تستخدم مصادقة Azure AD مستخدمي قاعدة البيانات المضمنة لمصادقة الهويات على مستوى قاعدة البيانات.

  • يدعم Azure AD المصادقة المستندة إلى الرمز المميز للتطبيقات التي تتصل بـ SQL Database ومثيل SQL المدار.

  • تدعم مصادقة Azure AD:

    • هويات Azure AD السحابية فقط.
    • هويات Azure AD المختلطة التي تدعم:
      • مصادقة سحابية مع خيارين مقترنين بتسجيل الدخول الأحادي (SSO) السلس ومصادقة المرورومصادقةتجزئة كلمة المرور.
      • المصادقة الموحدة.
    • لمزيد من المعلومات عن أساليب المصادقة في Azure AD وما تريد اختياره منها، راجع المقالة التالية:
  • يدعم Azure AD الاتصالات من SQL Server Management Studio التي تستخدم مصادقة Active Directory العامة التي تتضمن المصادقة متعددة العوامل. تتضمن المصادقة متعددة العوامل مصادقة قوية مع مجموعة من خيارات التحقق السريعة، التي تشمل مكالمة هاتفية، أو رسالة نصية، أو بطاقة ذكية مزودة برقم تعريف شخصي، أو إشعار تطبيق الهاتف المحمول. للحصول على مزيدٍ من المعلومات، راجع دعم SSMS للمصادقة متعددة العوامل في Azure AD باستخدام Azure SQL Database ومثيل SQL المدار وAzure Synapse

  • يدعم Azure AD اتصالات مماثلة من SQL Server Data Tools (SSDT) ​​التي تستخدم مصادقة Active Directory التفاعلية. لمزيد من المعلومات، راجع دعم Azure Active Directory في SQL Server Data Tools (SSDT)

ملاحظة

لا يتم دعم الاتصال بمثيل SQL Server قيد التشغيل على جهاز Azure الظاهري (VM) باستخدام Azure Active Directory أو Azure Active Directory Domain Services. استخدم حساب مجال Active Directory بدلاً من ذلك.

تتضمن خطوات التكوين الإجراءات التالية لتكوين مصادقة Azure Active Directory واستخدامها.

  1. إنشاء وتعبئة Azure AD.
  2. اختياري: إقران أو تغيير Active Directory المقترن حاليا باشتراك Azure.
  3. إنشاء مسؤول Azure Active Directory.
  4. تكوين أجهزة الكمبيوتر العميلة لديك.
  5. إنشاء مستخدمي قاعدة بيانات مضمنة في قاعدة البيانات المعينة لهويات Azure AD.
  6. اتصل بقاعدة بياناتك باستخدام هويات Azure AD.

ملاحظة

لمعرفة كيفية إنشاء وتعبئة Azure AD، فيمكنك تكوين Azure AD باستخدام Azure SQL Database ومثيل SQL المدار وSynapse SQL في Azure Synapse Analytics راجع تكوين Azure AD باستخدام Azure SQL Database.

بنية الثقة

  • يتم اعتبار جزء السحابة فقط من Azure AD وSQL Database ومثيل SQL المدار وAzure Synapse لدعم كلمات مرور المستخدم الأصلية في Azure AD.
  • لدعم بيانات اعتماد تسجيل الدخول الأحادي في Windows (أو المستخدم/كلمة المرور لبيانات اعتماد Windows)، استخدم بيانات اعتماد Azure Active Directory من مجال موحد أو مدار تم تكوينه لتسجيل الدخول الأحادي السلس لمصادقة المرور وتجزئة كلمة المرور. لمزيد من المعلومات، راجع تسجيل الدخول الأحادي السلس في Azure Active Directory.
  • لدعم المصادقة الموحدة (أو المستخدم/كلمة المرور لبيانات اعتماد Windows)، يلزم الاتصال بكتلة ADFS.

لمزيد من المعلومات عن الهويات المختلطة في Azure AD والإعداد والمزامنة، راجع المقالات التالية:

للحصول على نموذج المصادقة الموحدة مع البنية الأساسية ADFS (أو المستخدم/كلمة المرور لبيانات اعتماد Windows)، راجع المخطط أدناه. تشير الأسهم إلى مسارات الاتصال.

aad auth diagram

يشير الرسم التخطيطي التالي إلى الأمان المشترك، والثقة، وعلاقات الاستضافة التي تسمح للعميل بالاتصال بقاعدة بيانات بإرسال رمز مميز. تتم مصادقة الرمز المميز بواسطة Azure AD، ويوثق بقاعدة البيانات. يمكن للعميل 1 تمثيل Azure Active Directory مع مستخدمين أصليين أو Azure AD مع المستخدمين الخارجيين. يمثل العميل 2 حلاً محتملاً يشمل المستخدمين المستوردين القادمين في هذا المثال من Azure Active Directory موحد باستخدام خدمات الأمان المشترك لActive Directory المتزامن مع Azure Active Directory. من المهم فهم أن الوصول إلى قاعدة بيانات باستخدام مصادقة Azure AD يتطلب ارتباط اشتراك الاستضافة بـ Azure AD. يجب استخدام نفس الاشتراك لإنشاء موارد Azure SQL Database أو مثيل SQL المدار أو Azure Synapse.

subscription relationship

بنية المسؤول

عند استخدام مصادقة Azure AD، يوجد حسابان للمسؤول: حساب Azure SQL Database الأصلي ومسؤول Azure AD. تطبق نفس المفاهيم على Azure Synapse. يمكن للمسؤول الذي يستند إلى حساب Azure AD فقط إنشاء أول مستخدم قاعدة بيانات مُضمن في Azure AD في قاعدة بيانات المستخدم. يمكن أن يكون تسجيل دخول مسؤول Azure AD مستخدم Azure AD أو مجموعة Azure AD. عندما يكون المسؤول حساب مجموعة، يمكن لأي عضو في المجموعة استخدامه، مما يمكّن العديد من مسؤولي Azure AD للخادم. يؤدي استخدام حساب المجموعة كمسؤول إلى تحسين إمكانية الإدارة حيث تسمح لك بإضافة أعضاء المجموعة وإزالتهم مركزياً في Azure AD دون تغيير المستخدمين أو الأذونات في SQL Database أو Azure Synapse. يمكن تكوين مسؤول Azure AD واحد فقط (مستخدم أو مجموعة) في أي وقت.

admin structure

الأذونات

لإنشاء مستخدمين جدد، يجب أن يكون لديك ALTER ANY USER إذن في قاعدة البيانات. يمكن منح ALTER ANY USER الإذن لأي مستخدم قاعدة بيانات. يتم الاحتفاظ بالإذن ALTER ANY USER أيضاً بواسطة حسابات مسؤول الخادم ومستخدمي قاعدة البيانات مع CONTROL ON DATABASE أو ALTER ON DATABASE الإذن لقاعدة البيانات هذه، وبواسطة أعضاء db_ownerدور قاعدة البيانات.

لإنشاء مستخدم قاعدة بيانات مُضمن في Azure SQL Database أو مثيل SQL المدار أو Azure Synapse، يجب الاتصال بقاعدة البيانات أو المثيل باستخدام هوية Azure AD. لإنشاء أول مستخدم قاعدة بيانات مُضمن، يجب الاتصال بقاعدة البيانات باستخدام مسؤول Azure AD (مالك قاعدة البيانات). يتم عرض هذا في تكوين وإدارة مصادقة Azure Active Directory باستخدام SQL Database أو Azure Synapse. مصادقة Azure AD ممكنة فقط إذا تم إنشاء مسؤول Azure AD لـ Azure SQL Database أو مثيل SQL المدار أو Azure Synapse. إذا حُذف مسؤول Azure Active Directory من الخادم، فلن يتمكن مستخدمو Azure Active Directory الحاليون الذين تم إنشاؤهم مسبقاً في SQL Server من الاتصال بقاعدة البيانات باستخدام بيانات اعتماد Azure Active Directory الخاصة بهم.

ميزات وقيود Azure AD

  • يمكن تزويد أعضاء Azure AD التالين فيAzure SQL Database:

  • لا يمكن لمستخدمي Azure AD الذين يشكلون جزءاً من مجموعة لها دور خادم db_owner استخدام بناء جملة CREATE DATABASE SCOPED CREDENTIAL مقابل Azure SQL Database وAzure Synapse. سترى الخطأ التالي:

    SQL Error [2760] [S0001]: The specified schema name 'user@mydomain.com' either does not exist or you do not have permission to use it.

    منح الدور db_owner مباشرة إلى مستخدم Azure AD الفردي لتخفيف مشكلة CREATE DATABASE SCOPED CREDENTIAL.

  • ترجع دالات النظام هذه قيماً فارغة عند تنفيذها ضمن أساسيات Azure AD:

    • SUSER_ID()
    • SUSER_NAME(<admin ID>)
    • SUSER_SNAME(<admin SID>)
    • SUSER_ID(<admin name>)
    • SUSER_SID(<admin name>)

مثيل SQL المدار

  • يتم دعم أساسيات خادم Azure AD (تسجيلات الدخول) والمستخدمين لمثيل SQL المدار.
  • تعيين أساسيات خادم Azure AD (تسجيلات الدخول) المعينة لمجموعة Azure AD كمالك قاعدة بيانات غير مدعوم فيمثيل SQL المدار.
    • ملحق هذا هو أنه عند إضافة مجموعة كجزء من dbcreator دور الخادم، يمكن للمستخدمين من هذه المجموعة الاتصال بمثيل SQL المدار وإنشاء قواعد بيانات جديدة، ولكن لن يتمكنوا من الوصول إلى قاعدة البيانات. ويرجع ذلك إلى أن مالك قاعدة البيانات الجديد هو SA، وليس مستخدم Azure AD. لا تظهر هذه المشكلة إذا تمت إضافة المستخدم الفردي إلى dbcreator دور الخادم.
  • يتم دعم إدارة SQL Agent وتنفيذ المهام لأساسيات خادم Azure AD (تسجيلات الدخول).
  • يمكن تنفيذ عمليات النسخ الاحتياطي والاستعادة على قاعدة البيانات بواسطة أساسيات خادم Azure AD (تسجيلات الدخول).
  • يتم دعم تدقيق جميع العبارات المتعلقة بأساسيات خادم AD Azure (تسجيلات الدخول) وأحداث المصادقة.
  • يتم دعم اتصال مسؤول مخصص لأساسيات خادم Azure AD (تسجيلات الدخول) التي تمثل أعضاء في دور خادم مسؤول النظام.
    • معتمد خلال الأداة المساعدة SQLCMD وSQL Server Management Studio.
  • يتم دعم مشغلات تسجيل الدخول لأحداث تسجيل الدخول القادمة من أساسيات خادم Azure AD (عمليات تسجيل الدخول).
  • يمكن تعيين وسيط الخدمة وبريد قاعدة البيانات باستخدام أساسيات خادم Azure AD (تسجيلات الدخول).

الاتصال باستخدام هويات Azure AD

تدعم مصادقة Azure Active Directory أساليب الاتصال التالية بقاعدة البيانات باستخدام هويات Azure AD التالية:

  • كلمة مرور Azure Active Directory
  • Azure Active Directory متكامل
  • Azure Active Directory عام ومصادقة متعددة العوامل
  • استخدام مصادقة رمز التطبيق

أساليب المصادقة التالية مدعومة لأساسيات خادم Azure AD (عمليات تسجيل الدخول):

  • كلمة مرور Azure Active Directory
  • Azure Active Directory متكامل
  • Azure Active Directory عام ومصادقة متعددة العوامل

اعتبارات إضافية

  • لتحسين إمكانية الإدارة، نوصيك بتزويد مجموعة Azure AD مخصصة كمسؤول.
  • يمكن تكوين مسؤول Azure AD واحد فقط (مستخدم أو مجموعة) للخادم في SQL Database أو Azure Synapse في أي وقت.
    • تسمح إضافة أساسيات خادم Azure AD (عمليات تسجيل الدخول) لمثيل SQL المدار بإمكانية إنشاء العديد من أساسيات خادم Azure AD (عمليات تسجيل الدخول) التي يمكن إضافتها إلى sysadminالدور.
  • يمكن فقط لمسؤول Azure AD للخادم الاتصال بالخادم أو المثيل المدار باستخدام حساب Azure Active Directory. يمكن لمسؤول Active Directory تكوين مستخدمي قاعدة بيانات Azure AD اللاحقين.
  • لا يتم دعم مستخدمي Azure AD وأساسيات الخدمة (تطبيقات Azure AD) الأعضاء في أكثر من 2048 مجموعة أمانAzure AD لتسجيل الدخول إلى قاعدة البيانات في SQL Database أو المثيل المُدار أو Azure Synapse.
  • نوصي بتعيين مهلة الاتصال على 30 ثانية.
  • يدعم SQL Server 2016 Management Studio وSQL Server Data Tools لـ Visual Studio 2015 (الإصدار 14.0.60311.1April 2016 أو أحدث) مصادقة Azure Active Directory. (يتم دعم مصادقة Azure AD بواسطة .NET FRAMEWORK Data Provider لـ SqlServer؛ الإصدار .NET Framework 4.6) على الأقل. لذلك، يمكن أن تستخدم أحدث إصدارات هذه الأدوات وتطبيقات طبقة البيانات (DAC وBACPAC) مصادقة Azure AD.
  • يدعم بداية من الإصدار 15.0.1، والأداة المساعدة sqlcmdوالأداة المساعدة bcp المصادقة التفاعلية لـ Active Directory مع المصادقة متعددة العوامل.
  • يتطلب SQL Server Data Tools لـ Visual Studio 2015 إصدار أبريل 2016 من Data Tools (الإصدار 14.0.60311.1) على الأقل. حالياً، لا يظهر مستخدمو Azure AD في SSDT Object Explorer. كحل بديل، اعرض المستخدمين في sys.database_principals.
  • يدعم Microsoft JDBC Driver 6.0 لـ SQL Server مصادقة Azure AD. راجع أيضاً تعيين خصائص الاتصال.
  • لا يمكن مصادقة PolyBase باستخدام مصادقة Azure AD.
  • مصادقة Azure AD معتمدة لAzure SQL Database و Azure Synapse باستخدام استيراد قاعدة بيانات لمدخل Azure وشفرات تصدير قاعدة البيانات. كما يتم أيضا دعم الاستيراد والتصدير باستخدام مصادقة Azure AD من أمر PowerShell.
  • مصادقة Azure AD معتمدة لSQL Database ومثيل SQL المدار وAzure Synapse باستخدام CLI. لمزيد من المعلومات، راجع تكوين وإدارة مصادقة Azure AD باستخدام SQL Database أو Azure Synapse و SQL Server - az sql server.

الخطوات التالية