لاحقة المجال المخصص لـ App Service Environments

App Service Environment هي إحدى ميزات خدمة تطبيقات Azure التي توفر بيئة معزولة تماماً ومخصصة لتشغيل تطبيقات خدمة التطبيقات بأمان على نطاق واسع. لا تقيد إعدادات DNS للاحقة المجال الافتراضي لبيئة App Service Environment تطبيقاتك بحيث لا يمكن الوصول إليها إلا من خلال هذه الأسماء. لاحقة المجال المخصص هي ميزة بيئة خدمة التطبيقات لموازنة التحميل الداخلي (ILB) التي تتيح لك استخدام لاحقة المجال الخاصة بك للوصول إلى التطبيقات في App Service Environment.

إذا لم يكن لديك App Service Environment، فاطلع على كيفية إنشاء App Service Environment v3.

إشعار

تتناول هذه المقالة الميزات والفوائد وحالات الاستخدام الخاصة ببيئة App Service Environment الإصدار 3، والتي يتم استخدامها مع خطط خدمة التطبيقات المعزولة الإصدار 2.

تحدد لاحقة المجال المخصص مجال جذر تستخدمه App Service Environment. في التباين العام لـ Azure App Service يكون المجال الجذر الافتراضي لجميع تطبيقات الويب azurewebsites.net. بالنسبة لبيئات خدمة تطبيقات ILB، فإن مجال الجذر الافتراضي هو appserviceenvironment.net. ومع ذلك، نظرًا لأن ILB App Service Environment داخلية للشبكة الظاهرية للعميل، يمكن للعملاء استخدام مجال جذر بالإضافة إلى النطاق الافتراضي الذي يكون منطقيًا للاستخدام داخل الشبكة الظاهرية الداخلية للشركة. على سبيل المثال، قد تستخدم شركة Contoso الافتراضية مجال جذر افتراضي internal.contoso.com للتطبيقات التي تهدف إلى أن تكون قابلة للحل ويمكن الوصول إليها فقط داخل الشبكة الظاهرية لشركة Contoso. يمكن الوصول إلى تطبيق في هذه الشبكة الظاهرية عن طريق الوصول إلى APP-NAME.internal.contoso.com.

لاحقة المجال المخصص لـ App Service Environment. تختلف هذه الميزة عن ربط المجال المخصص في App Service. لمزيد من المعلومات حول روابط المجال المخصص، راجع تعيين اسم DNS مخصص حالي إلى Azure App Service.

إذا كانت الشهادة المستخدمة للاحقة المجال المخصصة تحتوي على إدخال اسم بديل للموضوع (SAN) ل *.scm. CUSTOM-DOMAIN، يمكن الوصول إلى موقع scm أيضا من APP-NAME.scm.CUSTOM-DOMAIN. يمكنك فقط الوصول إلى scm عبر المجال المخصص باستخدام المصادقة الأساسية. تسجيل الدخول الأحادي ممكن فقط مع المجال الجذر الافتراضي.

على عكس الإصدارات السابقة، يمكن الوصول إلى نقاط نهاية FTPS لخدمات التطبيقات على App Service Environment v3 فقط باستخدام لاحقة المجال الافتراضية.

يحتاج الاتصال بنقطة نهاية لاحقة المجال المخصصة إلى استخدام إشارة اسم الخادم (SNI) للاتصالات المستندة إلى TLS.

المتطلبات الأساسية

  • تباين ILB لـ App Service Environment v3.
  • يجب تخزين شهادة SSL/TLS صالحة في Azure Key Vault في . تنسيق PFX. لمزيد من المعلومات حول استخدام الشهادات مع App Service، راجع إضافة شهادة TLS/SSL في Azure App Service.
  • يجب أن تكون الشهادة أقل من 20 كيلوبايت.

الهوية المُدارة

يتم استخدام هوية مُدارة للمصادقة مقابل Azure Key Vault حيث يتم تخزين شهادة SSL/ TLS. إذا لم يكن لديك حاليا هوية مدارة مقترنة ببيئة App Service، فأنت بحاجة إلى تكوين واحدة.

يمكنك استخدام إما هوية مُدارة مُعيَّنة من النظام أو مُدارة من قبل المستخدم. لإنشاء هوية مُدارة يعينها المستخدم، راجع إدارة الهويات المُدارة التي يعينها المستخدم. إذا كنت ترغب في استخدام هوية مدارة معينة من قبل النظام ولم يكن لديك هوية معينة بالفعل إلى App Service Environment، فإن تجربة مدخل لاحقة المجال المخصص ترشدك خلال عملية الإنشاء. بدلاً من ذلك، يمكنك الانتقال إلى صفحة Identity لـ App Service Environment وتكوين الهويات المدارة وتعيينها هناك.

لتمكين هوية مُدارة مخصصة للنظام، قم بتعيين الحالة على تشغيل.

لقطة شاشة لنموذج نظام تم تعيينه للهوية المدارة لـ App Service Environment.

لتعيين هوية مدارة معينة من قبل المستخدم، حدد "إضافة والعثور على الهوية المدارة التي تريد استخدامها.

لقطة شاشة لنموذج هوية مُدارة قام بتعيينها مستخدم لـ App Service Environment.

بمجرد تعيين الهوية المُدارة لـ App Service Environment الخاصة بك، تأكد من أن الهوية المُدارة لديها أذونات كافية لـ Azure Key Vault. يمكنك إما استخدام نهج الوصول إلى المخزن أو التحكم في الوصول استناداً إلى الدور في Azure.

إذا كنت تستخدم نهج الوصول إلى المخزن، فإن الهوية المدارة تحتاج على الأقل إلى إذن "الحصول على" البيانات السرية لخزنة المفاتيح.

لقطة شاشة لنموذج نهج الوصول إلى مخزن المفاتيح للهوية المُدارة.

إذا اخترت استخدام التحكم في الوصول المستند إلى دور Azure لإدارة الوصول إلى خزنة المفاتيح الخاصة بك، فستحتاج إلى منح هويتك المدارة كحد أدنى دور "مستخدم أسرار Key Vault".

لقطة شاشة لنموذج التحكم في الوصول استناداً إلى دور المخزن الرئيسي للهوية المدارة.

شهادة

يجب تخزين الشهادة الخاصة بلاحقة المجال المخصص في Azure Key Vault. يجب تحميل الشهادة في . تنسيق PFX ويكون أصغر من 20 كيلوبايت. الشهادات في . تنسيق PEM غير مدعوم في الوقت الحالي. تستخدم App Service Environment الهوية المدارة التي حددتها للحصول على الشهادة.

يجب أن تكون شهادتك عبارة عن شهادة حرف بدل لاسم المجال المخصص المحدد. على سبيل المثال، ستحتاج internal.contoso.com إلى شهادة تغطي *.internal.contoso.com. إذا كانت الشهادة المستخدمة من قبل لاحقة المجال المخصص تحتوي على إدخال اسم بديل للموضوع (SAN) ل scm، على سبيل المثال *.scm.internal.contoso.com، يتوفر موقع scm أيضا باستخدام لاحقة المجال المخصصة.

إذا قمت بتدوير شهادتك في Azure Key Vault، فإن App Service Environment تلتقط التغيير في غضون 24 ساعة.

وصول الشبكة إلى Key Vault

يمكن الوصول إلى مخزن المفاتيح بشكل عام أو من خلال نقطة نهاية خاصة يمكن الوصول إليها من الشبكة الفرعية التي يتم نشر App Service Environment إليها. لمعرفة كيفية تكوين نقطة نهاية خاصة، راجع دمج Key Vault مع Azure Private Link. إذا كنت تستخدم الوصول العام، يمكنك تأمين خزنة المفاتيح لقبول نسبة استخدام الشبكة فقط من عنوان IP الصادر لبيئة خدمة التطبيقات. تستخدم App Service Environment عنوان IP الصادر للنظام الأساسي كعنوان المصدر عند الوصول إلى مخزن المفاتيح. يمكنك العثور على عنوان IP في صفحة عناوين IP في مدخل Microsoft Azure.

لقطة شاشة لصفحة عناوين IP في مدخل Microsoft Azure.

استخدام مدخل Microsoft Azure لتكوين لاحقة المجال المخصص

  1. من مدخل Microsoft Azure، انتقل إلى صفحة لاحقة المجال المخصص لـ App Service Environment الخاصة بك.
  2. أدخل اسم المجال المخصص الخاص بك.
  3. حدد الهوية المدارة التي تحددها لبيئة خدمة التطبيقات الخاصة بك. يمكنك استخدام إما هوية مُدارة مُعيَّنة من النظام أو مُدارة من قبل المستخدم. يمكنك تكوين هويتك المدارة إذا لم تكن قد فعلت ذلك بالفعل. يمكنك تكوين الهوية المدارة مباشرة من صفحة لاحقة المجال المخصص باستخدام الخيار "إضافة هوية" في مربع تحديد الهوية المدارة. لقطة شاشة لجزء التكوين لتحديد وتحديث الهوية المُدارة لـ App Service Environment.
  4. حدد الشهادة الخاصة بلاحقة المجال المخصص.
    1. إذا كنت تستخدم نقطة نهاية خاصة للوصول إلى مخزن المفاتيح، نظرا لأن الوصول إلى الشبكة مقيد بنقطة النهاية الخاصة، فلا يمكنك استخدام واجهة المدخل لتحديد الشهادة. يجب إدخال عنوان URL للشهادة يدويا.
  5. حدد "Save" في الجزء العلوي من الصفحة. للاطلاع على آخر تحديثات التكوين، قم بتحديث الصفحة. لقطة شاشة لنظرة عامة على تجربة المدخل الخاص بلاحقة المجال المخصص.
  6. يستغرق الأمر بضع دقائق لتعيين تكوين لاحقة المجال المخصص. تحقق من الحالة عن طريق تحديد "Refresh" في أعلى الصفحة. يتم تحديث الشعار بأحدث التقدم. بمجرد الانتهاء، سيذكر الشعار أنه تم تكوين لاحقة المجال المخصص. لقطة شاشة لنموذج صفحة نجاح لاحقة المجال المخصص.

استخدام Azure Resource Manager لتكوين لاحقة المجال المخصص

لتكوين لاحقة مجال مخصصة لبيئة خدمة التطبيقات باستخدام قالب Azure Resource Manager، تحتاج إلى تضمين الخصائص أدناه. تأكد من تلبية المتطلبات الأساسية ومن إمكانية الوصول إلى الهوية المدارة والشهادة ولديك الأذونات المناسبة ل Azure Key Vault.

تحتاج إلى تكوين الهوية المدارة والتأكد من وجودها قبل تعيينها في القالب الخاص بك. لمزيد من المعلومات حول الهويات المُدارة، راجع نظرة عامة على الهوية المُدارة.

استخدام هوية مُدارة يعينها المستخدم

"resources": [
{
    "apiVersion": "2022-03-01",
    "type": "Microsoft.Web/hostingEnvironments",
    "name": ...,
    "location": ...,
    "identity": {
        "type": "UserAssigned",
        "userAssignedIdentities": {
            "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asev3-cdns-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ase-cdns-managed-identity"
        }
    },
    "properties": {
        "customDnsSuffixConfiguration": {
            "dnsSuffix": "antares-test.net",
            "certificateUrl": "https://kv-sample-key-vault.vault.azure.net/secrets/wildcard-antares-test-net",
            "keyVaultReferenceIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/asev3-cdns-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ase-cdns-managed-identity"
        },
        "internalLoadBalancingMode": "Web, Publishing",
        etc...
    }
}

استخدام الهوية المُدارة التي خصصها النظام

"resources": [
{
    "apiVersion": "2022-03-01",
    "type": "Microsoft.Web/hostingEnvironments",
    "name": ...,
    "location": ...,
    "identity": {
        "type": "SystemAssigned"
    }
    "properties": {
        "customDnsSuffixConfiguration": {
            "dnsSuffix": "antares-test.net",
            "certificateUrl": "https://kv-sample-key-vault.vault.azure.net/secrets/wildcard-antares-test-net",
            "keyVaultReferenceIdentity": "systemassigned"
        },
        "internalLoadBalancingMode": "Web, Publishing",
        etc...
    }
}

استخدام Azure Resource Explorer لتكوين لاحقة المجال المخصص

بدلاً من ذلك، يمكنك تحديث ILB App Service Environment الحالية لديك باستخدام Azure Resource Explorer.

  1. في Resource Explorer، انتقل إلى عقدة App Service Environment (اشتراكات>{اشتراكك}>resourceGroups>{مجموعة الموارد الخاصة بك}>المزودين>Microsoft.Web>hostingEnvironments). ثم حدد App Service Environment المحددة التي تريد تحديثها.
  2. اختر Read/Write في شريط الأدوات العلوي للسماح بالتحرير التفاعلي في Resource Explorer.
  3. حدد الزر Edit لجعل قالب Azure Resource Manager قابلاً للتحرير.
  4. قم بالتمرير إلى أسفل في الجزء الأيسر. السمة customDnsSuffixConfiguration موجودة في الأسفل.
  5. أدخل القيم الخاصة بك لـ dnsSuffix وCertificateUrl وkeyVaultReferenceIdentity.
  6. انتقل إلى السمة identity وأدخل التفاصيل المرتبطة بالهوية المدارة التي تستخدمها.
  7. حدد الزر PUT في الأعلى لتثبيت التغيير في App Service Environment.
  8. يوفر provisioningState ضمن customDnsSuffixConfiguration حالة على تحديث التكوين.

تكوين DNS

للوصول إلى تطبيقاتك في App Service Environment باستخدام لاحقة المجال المخصص، تحتاج إما إلى تكوين خادم DNS الخاص بك أو تكوين DNS في منطقة DNS خاصة ب Azure لمجالك المخصص.

إذا كنت ترغب في استخدام خادم DNS الخاص بك، فأضف السجلات التالية:

  1. قم بإنشاء منطقة للمجال المخصص الخاص بك.
  2. قم بإنشاء سجل A في تلك المنطقة يشير بـ * إلى عنوان IP الوارد المستخدم من قبل App Service Environment.
  3. قم بإنشاء سجل A في تلك المنطقة يشير بـ @ إلى عنوان IP الوارد المستخدم من قبل App Service Environment الخاصة بك.
  4. إنشاء منطقة ل scm subdomain اختياريا باستخدام سجل * A يشير إلى عنوان IP الوارد المستخدم بواسطة App Service Environment

لتكوين DNS في مناطق Azure DNS الخاصة:

  1. قم بإنشاء منطقة خاصة لـ Azure DNS باسم مجالك المخصص. في المثال التالي، المجال المخصص internal.contoso.com.
  2. قم بإنشاء سجل A في تلك المنطقة يشير بـ * إلى عنوان IP الوارد المستخدم من قبل App Service Environment.
  3. قم بإنشاء سجل A في تلك المنطقة يشير بـ @ إلى عنوان IP الوارد المستخدم من قبل App Service Environment الخاصة بك. لقطة شاشة لتكوين نموذج DNS للاحقة مجالك المخصص.
  4. اربط المنطقة الخاصة لـ Azure DNS بالشبكة الظاهرية لـ App Service Environment الخاصة بك. لقطة شاشة لنموذج ارتباط شبكة ظاهرية لمنطقة DNS الخاصة.
  5. إنشاء سجل A اختياريا في تلك المنطقة يشير *.scm إلى عنوان IP الوارد المستخدم من قبل App Service Environment.

لمزيد من المعلومات حول تكوين DNS لمجالك، راجع استخدام App Service Environment.

إشعار

بالإضافة إلى تكوين DNS للاحقة المجال المخصص، يجب عليك أيضا التفكير في تكوين DNS للاحقة المجال الافتراضية لضمان عمل جميع ميزات App Service كما هو متوقع.

الوصول إلى تطبيقاتك

بعد تكوين لاحقة المجال المخصص وDNS لـ App Service Environment لديك، يمكنك الانتقال إلى صفحة المجالات المخصصة لأحد تطبيقات App Service في App Service Environment وتأكيد إضافة المجال المخصص للتطبيق.

لقطة شاشة لنموذج مجال مخصص لتطبيق تم إنشاؤه بواسطة ميزة لاحقة المجال المخصص لـ App Service Environment.

يمكن الوصول إلى التطبيقات على ILB App Service Environment بأمان عبر HTTPS عن طريق الانتقال إلى المجال المخصص الذي قمت بتكوينه أو المجال الافتراضي appserviceenvironment.net كما هو الحال في الصورة السابقة. القدرة على الوصول إلى تطبيقاتك باستخدام مجال App Service Environment الافتراضي ومجالك المخصص هي ميزة فريدة مدعومة فقط على App Service Environment v3.

ومع ذلك، تماما مثل التطبيقات التي تعمل على الخدمة العامة متعددة المستأجرين، يمكنك أيضا تكوين أسماء مضيفين مخصصة للتطبيقات الفردية، ثم تكوين روابط شهادات SNI TLS/SSL فريدة للتطبيقات الفردية.

استكشاف الأخطاء وإصلاحها

يتحقق النظام الأساسي ل App Service بشكل دوري من إمكانية وصول App Service Environment إلى مخزن المفاتيح وما إذا كانت شهادتك صالحة. إذا لم يتم تعيين الأذونات أو إعدادات الشبكة للهوية المدارة أو key vault أو App Service Environment بشكل مناسب أو تم تغييرها مؤخرا، فلن تتمكن من تكوين لاحقة مجال مخصصة. تتلقى خطأ مشابها للمثال الموضح في لقطة الشاشة. راجع المتطلبات الأساسية للتأكد من تكوين الأذونات المطلوبة. سترى أيضا رسالة خطأ مماثلة إذا اكتشف النظام الأساسي لخدمة التطبيقات أن شهادتك متدهورة أو منتهية الصلاحية.

لقطة شاشة لنموذج رسالة خطأ لاحقة المجال المخصص.

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