إعداد معرف Microsoft Entra لمصادقة العميل

تحذير

في هذا الوقت، مصادقة عميل Microsoft Entra وخدمة الرمز المميز للهوية المدارة غير متوافقة بشكل متبادل على Linux.

بالنسبة للمجموعات التي تعمل على Azure، يوصى باستخدام معرف Microsoft Entra لتأمين الوصول إلى نقاط نهاية الإدارة. توضح هذه المقالة كيفية إعداد معرف Microsoft Entra لمصادقة العملاء لمجموعة Service Fabric.

على Linux، يجب إكمال الخطوات التالية قبل إنشاء الكتلة. في Windows، لديك أيضا خيار تكوين مصادقة Microsoft Entra لنظام مجموعة موجود.

في هذه المقالة، يشير مصطلح "التطبيق" إلى تطبيقات Microsoft Entra، وليس تطبيقات Service Fabric؛ يتم التمييز عند الضرورة. يتيح معرف Microsoft Entra للمؤسسات (المعروفة باسم المستأجرين) إدارة وصول المستخدم إلى التطبيقات.

توفر مجموعة Service Fabric العديد من نقاط الإدخال إلى وظائف الإدارة الخاصة بها، بما في ذلك مستكشف Service Fabric المستند إلى الويب وVisual Studio. ونتيجة لذلك، ستقوم بإنشاء تطبيقين من تطبيقات Microsoft Entra للتحكم في الوصول إلى نظام المجموعة: تطبيق ويب واحد وتطبيق أصلي واحد. بعد إنشاء التطبيقات، ستقوم بتعيين المستخدمين لأدوار القراءة فقط والمسؤول.

إشعار

في هذا الوقت، لا يدعم Service Fabric مصادقة Microsoft Entra للتخزين.

إشعار

إنها مشكلة معروفة أنه لا يمكن عرض التطبيقات والعقد على أنظمة المجموعات الممكنة لمعرف Linux Microsoft Entra في مدخل Microsoft Azure.

إشعار

يتطلب معرف Microsoft Entra الآن التحقق من مجال ناشري التطبيق (تسجيل التطبيق) أو استخدام النظام الافتراضي. راجع تكوين مجال ناشر تطبيق وAppId Uri في تطبيقات المستأجر الفردي يتطلب استخدام نظام افتراضي أو مجالات تم التحقق منها للحصول على معلومات إضافية.

إشعار

بدءا من Service Fabric 11.0، يتطلب Service Fabric Explorer عنوان URI لإعادة توجيه التطبيق من صفحة واحدة بدلا من عنوان URI لإعادة توجيه الويب.

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

في هذه المقالة، نفترض أنك قد أنشأت مستأجرًا بالفعل. إذا لم تكن قد قمت به، فابدأ بقراءة كيفية الحصول على مستأجر Microsoft Entra. لتبسيط بعض الخطوات المتضمنة في تكوين معرف Microsoft Entra مع مجموعة Service Fabric، أنشأنا مجموعة من البرامج النصية ل Windows PowerShell. تتطلب بعض الإجراءات الوصول على المستوى الإداري إلى معرف Microsoft Entra. إذا واجه البرنامج النصي خطأ "Authorization_RequestDenied" 401 أو 403، يحتاج المسؤول إلى تنفيذ البرنامج النصي.

  1. المصادقة باستخدام أذونات Azure الإدارية.
  2. استنساخ المستودع إلى جهاز الكمبيوتر الخاص بك.
  3. تأكد من تثبيت كافة المتطلبات الأساسية للبرامج النصية.

إنشاء تطبيقات Microsoft Entra وتعيين المستخدمين للأدوار

سنستخدم البرامج النصية لإنشاء تطبيقين من Microsoft Entra للتحكم في الوصول إلى نظام المجموعة: تطبيق ويب واحد وتطبيق أصلي واحد. بعد إنشاء تطبيقات لتمثيل نظام مجموعتك، ستنشئ مستخدمين ⁧للأدوار التي تدعمها Service Fabric⁧⁩: للقراءة فقط والمسؤول.

SetupApplications.ps1SetupApplications.ps1

قم بتشغيل SetupApplications.ps1 وتوفير معرّف المستأجر واسم المجموعة وعنوان URI لتطبيق الويب وعنوان URL للرد على تطبيق الويب كمعلمات. استخدم -remove لإزالة تسجيلات التطبيق. يؤدي استخدام -logFile <log file path> إلى إنشاء سجل نسخة. راجع تعليمات البرنامج النصي (تعليمات.\setupApplications.ps1 -full) للحصول على معلومات إضافية. ينشئ البرنامج النصي الويب والتطبيقات الأصلية لتمثيل مجموعة Service Fabric الخاصة بك. يوجد إدخالا تسجيل التطبيق الجديدان بالتنسيق التالي:

  • ClusterName_Cluster
  • ClusterName_Client

إشعار

بالنسبة للسحب الوطنية (على سبيل المثال Azure Government وMicrosoft Azure التي تديرها 21Vianet)، يجب عليك أيضا تحديد المعلمة -Location .

المعلمات

  • tenantId: يمكنك العثور على TenantId الخاص بك عن طريق تنفيذ أمر PowerShellGet-AzureSubscription. يؤدي تنفيذ هذا الأمر إلى عرض معرف المستأجر لكل اشتراك.

  • clusterName: يستخدم ClusterName لبادئة تطبيقات Microsoft Entra التي تم إنشاؤها بواسطة البرنامج النصي. لا يحتاج إلى مطابقة اسم نظام المجموعة الفعلي تماما. يهدف فقط إلى تسهيل تعيين عناصر Microsoft Entra إلى مجموعة Service Fabric التي يتم استخدامها معها.

  • SpaApplicationReplyUrl: SpaApplicationReplyUrl هي نقطة النهاية الافتراضية التي يرجعها معرف Microsoft Entra للمستخدمين بعد الانتهاء من تسجيل الدخول. عيّن نقطة النهاية هذه كنقطة نهاية Service Fabric Explorer للمجموعة الخاصة بك. إذا كنت تقوم بإنشاء تطبيقات Microsoft Entra لتمثيل مجموعة موجودة، فتأكد من أن عنوان URL هذا يطابق نقطة نهاية نظام المجموعة الحالي. إذا كنت تقوم بإنشاء تطبيقات لمجموعة جديدة، فخطط نقطة النهاية لنظام المجموعة وتأكد من عدم استخدام نقطة النهاية لنظام مجموعة موجود. بشكل افتراضي، تكون نقطة نهاية Service Fabric Explorer هي: https://<cluster_domain>:19080/Explorer/index.html

  • webApplicationUri: WebApplicationUri هو إما URI ل "مجال تم التحقق منه" أو URI باستخدام تنسيق نظام واجهة برمجة التطبيقات API://{{tenant Id}}/{{cluster name}}. راجع AppId Uri في تطبيقات المستأجر الواحد يتطلب استخدام النظام الافتراضي أو المجالات التي تم التحقق منها للحصول على معلومات إضافية.

    مثال على نظام واجهة برمجة التطبيقات: API://0e3d2646-78b3-4711-b8be-74a381d9890c/mysftestcluster

SetupApplications.ps1 example

# if using cloud shell
# cd clouddrive 
# git clone https://github.com/Azure-Samples/service-fabric-aad-helpers
# cd service-fabric-aad-helpers
# code .

$tenantId = '0e3d2646-78b3-4711-b8be-74a381d9890c'
$clusterName = 'mysftestcluster'
$spaApplicationReplyUrl = 'https://mysftestcluster.eastus.cloudapp.azure.com:19080/Explorer/index.html' # <--- client browser redirect url
#$webApplicationUri = 'https://mysftestcluster.contoso.com' # <--- must be verified domain due to AAD changes
$webApplicationUri = "API://$tenantId/$clusterName" # <--- doesn't have to be verified domain

$configObj = .\SetupApplications.ps1 -TenantId $tenantId `
  -ClusterName $clusterName `
  -SpaApplicationReplyUrl $spaApplicationReplyUrl `
  -AddResourceAccess `
  -WebApplicationUri $webApplicationUri `
  -Verbose

يقوم البرنامج النصي بإخراج متغير $ configObj للأوامر اللاحقة ويطبع JSON المطلوب بواسطة قالب Azure Resource Manager. انسخ إخراج JSON واستخدمه عند إنشاء نظام مجموعة موجود أو تعديله لإنشاء نظام مجموعة Microsoft Entra ID ممكن.

مثال إخراج SetupApplications.ps1

Name                           Value
----                           -----
WebAppId                       f263fd84-ec9e-44c0-a419-673b1b9fd345
TenantId                       0e3d2646-78b3-4711-b8be-74a381d9890c
ServicePrincipalId             3d10f55b-1876-4a62-87db-189bfc54a9f2
NativeClientAppId              b22cc0e2-7c4e-480c-89f5-25f768ecb439

-----ARM template-----
"azureActiveDirectory": {
  "tenantId":"0e3d2646-78b3-4711-b8be-74a381d9890c",
  "clusterApplication":"f263fd84-ec9e-44c0-a419-673b1b9fd345",
  "clientApplication":"b22cc0e2-7c4e-480c-89f5-25f768ecb439"
},

عنصر معلمات azureActiveDirectory JSON

"azureActiveDirectory": {
  "tenantId":"<guid>",
  "clusterApplication":"<guid>",
  "clientApplication":"<guid>"
},

SetupUser.ps1

يُستخدم SetupUser.ps1 لإضافة حسابات مستخدمين إلى تسجيل التطبيق الذي تم إنشاؤه حديثًا باستخدام متغير الإخراج $configObj أعلاه. حدد اسم المستخدم لحساب المستخدم المراد تهيئته مع تسجيل التطبيق وحدد "isAdmin" للحصول على أذونات إدارية. إذا كان حساب المستخدم جديدًا، فقم بتوفير كلمة المرور المؤقتة للمستخدم الجديد أيضًا. يجب تغيير كلمة المرور عند تسجيل الدخول الأول. إذا كنت تستخدم "-remove"، فستزيل حساب المستخدم، وليس فقط تسجيل التطبيق.

مثال مستخدم SetupUser.ps1 (قراءة)

.\SetupUser.ps1 -ConfigObj $configobj `
  -UserName 'TestUser' `
  -Password 'P@ssword!123' `
  -Verbose

مثال على مسؤول SetupUser.ps1 (قراءة/كتابة)

.\SetupUser.ps1 -ConfigObj $configobj `
  -UserName 'TestAdmin' `
  -Password 'P@ssword!123' `
  -IsAdmin `
  -Verbose

SetupClusterResource.ps1

يمكن استخدام SetupClusterResource.ps1 اختياريًا لتصدير قالب ARM لمورد نظام المجموعة الحالي، وإضافة / تعديل تكوين 'azureActiveDirectory'، وإعادة نشر القالب. استخدم '-Whatif' لتصدير القالب وتعديله فقط وليس إعادة توزيع تغيير التكوين. يتطلب هذا البرنامج النصي الوحدة النمطية Azure 'Az' واسم مجموعة الموارد للمجموعة.

SetupClusterResource.ps1 - مثال whatIf

# requires azure module 'az'
# install-module az
$resourceGroupName = 'mysftestcluster'
.\SetupClusterResource.ps1 -configObj $configObj `
  -resourceGroupName $resourceGroupName `
  -WhatIf

بمجرد التحقق من القالب وجاهز للمعالجة، إما إعادة تشغيل البرنامج النصي بدون '-WhatIf' أو استخدم أمر powershell 'New-AzResourceGroupDeployment' لتوزيع القالب.

مثال SetupClusterResource.ps1

$resourceGroupName = 'mysftestcluster'
.\SetupClusterResource.ps1 -configObj $configObj `
  -resourceGroupName $resourceGroupName

إشعار

تحديث قوالب أو البرامج النصية لتوفير نظام المجموعة باستخدام موارد نظام المجموعة الجديدة تغييرات تكوين Microsoft Entra.

قد يكون من الضروري "منح موافقة المسؤول" لـ "أذونات واجهة برمجة التطبيقات" التي يتم تكوينها. انتقل إلى جزء تسجيلات تطبيق Azure وأضف اسم نظام المجموعة إلى عامل التصفية. لكلا التسجيلين، افتح "أذونات واجهة برمجة التطبيقات"، وحدد "منح موافقة المسؤول لـ" إذا كان متوفرًا.

لقطة شاشة تعرض موافقة المسؤول المحددة في جزء تسجيلات تطبيق Azure.

لقطة شاشة تعرض تأكيد موافقة مسؤول المنحة مع تمييز

التحقق من تكوين Microsoft Entra

انتقل إلى عنوان URL لمستكشف Service Fabric (SFX). يجب أن يكون هذا هو نفس المعلمة spaApplicationReplyUrl. يجب عرض مربع حوار مصادقة Azure. سجل الدخول باستخدام حساب تم تكوينه باستخدام تكوين Microsoft Entra الجديد. تحقق من أن حساب المسؤول لديه حق الوصول للقراءة/الكتابة وأن المستخدم لديه حق الوصول للقراءة. أي تعديل على نظام المجموعة، على سبيل المثال، تنفيذ إجراء، هو إجراء إداري.

تعليمات استكشاف الأخطاء وإصلاحها في إعداد معرف Microsoft Entra

قد يكون إعداد معرف Microsoft Entra واستخدامه أمرا صعبا، لذلك إليك بعض المؤشرات حول ما يمكنك القيام به لتصحيح المشكلة. يمكن تمكين تسجيل نص PowerShell باستخدام الوسيطة "-logFile" على البرامج النصية "SetupApplications.ps1" و"SetupUser.ps1" لمراجعة الإخراج.

إشعار

من خلال ترحيل الأنظمة الأساسية للهويات (ADAL إلى MSAL)، وإهمال AzureRM لصالح Azure AZ، ودعم إصدارات متعددة من PowerShell، قد لا تكون التبعيات دائمًا صحيحة أو محدثة مما يتسبب في حدوث أخطاء في تنفيذ البرنامج النصي. يؤدي تشغيل أوامر PowerShell والبرامج النصية من Azure Cloud Shell إلى تقليل احتمالية حدوث أخطاء في المصادقة التلقائية للجلسة والهوية المُدارة.

زر لتشغيل Azure Cloud Shell.

Request_BadRequest

مشكلة

تحديث مرجع غير صحيح. رمز حالة HTTP: 400.

VERBOSE: POST with 157-byte payload
VERBOSE: received -byte response of content type application/json
>> TerminatingError(Invoke-WebRequest): "{"error":{"code":"Request_BadRequest","message":"Not a valid reference update.","innerError":{"date":"2022-09-11T22:17:16","request-id":"61fadb2a-478b-4483-8f23-d17e13732104","client-request-id":"61fadb2a-478b-4483-8f23-d17e13732104"}}}"
confirm-graphApiRetry returning:True
VERBOSE: invoke-graphApiCall status: 400
exception:
Response status code doesn't indicate success: 400 (Bad Request).

Invoke-WebRequest: /home/<user>/clouddrive/service-fabric-aad-helpers/Common.ps1:239
Line |
 239 |  …   $result = Invoke-WebRequest $uri -Method $method -Headers $headers  …
     |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | {"error":{"code":"Request_BadRequest","message":"Not a valid reference update.","innerError":{"date":"2022-09-11T22:17:16","request-id":"61fadb2a-478b-4483-8f23-d17e13732104","client-request-id":"61fadb2a-478b-4483-8f23-d17e13732104"}}}

at invoke-graphApiCall, /home/<user>/clouddrive/service-fabric-aad-helpers/Common.ps1: line 239
at invoke-graphApi, /home/<user>/clouddrive/service-fabric-aad-helpers/Common.ps1: line 275
at add-roleAssignment, /home/<user>/clouddrive/service-fabric-aad-helpers/SetupUser.ps1: line 193
at add-user, /home/<user>/clouddrive/service-fabric-aad-helpers/SetupUser.ps1: line 244
at enable-AADUser, /home/<user>/clouddrive/service-fabric-aad-helpers/SetupUser.ps1: line 178
at main, /home/<user>/clouddrive/service-fabric-aad-helpers/SetupUser.ps1: line 136
at <ScriptBlock>, /home/<user>/clouddrive/service-fabric-aad-helpers/SetupUser.ps1: line 378
at <ScriptBlock>, /home/<user>/clouddrive/aad-test.ps1: line 43
at <ScriptBlock>, <No file>: line 1
WARNING: invoke-graphApiCall response status: 400
invoke-graphApi count:0 statuscode:400 -uri https://graph.microsoft.com/v1.0/0e3d2646-78b3-4711-b8be-74a381d9890c/servicePrincipals/3d10f55b-1876-4a62-87db-189bfc54a9f2/appRoleAssignedTo -headers System.Collections.Hashtable -body System.Collections.Hashtable -method post
confirm-graphApiRetry returning:True

السبب

لم يتم نشر تغييرات التكوين. تعيد البرامج النصية المحاولة على طلبات معينة مع رموز حالة HTTP 400 و404.

الحل

تعيد البرامج النصية المحاولة على طلبات معينة مع رموز حالة HTTP 400 و404 حتى يتم توفير '-timeoutMin' الذي يكون افتراضيا 5 دقائق. يمكن إعادة تنفيذ البرنامج النصي حسب الحاجة.

يطالبك Service Fabric Explorer بتحديد شهادة

مشكلة

بعد تسجيل الدخول بنجاح إلى معرف Microsoft Entra في Service Fabric Explorer، يعود المستعرض إلى الصفحة الرئيسية ولكن رسالة تطالبك بتحديد شهادة.

مربع حوار شهادة SFX

السبب

لم يتم تعيين دور للمستخدم في تطبيق نظام مجموعة Microsoft Entra ID. وبالتالي، تفشل مصادقة Microsoft Entra على مجموعة Service Fabric. يعود Service Fabric Explorer إلى مصادقة الشهادة.

الحل

اتبع الإرشادات لإعداد معرف Microsoft Entra، وتعيين أدوار المستخدم. نوصي أيضًا بتشغيل "تعيين المستخدم مطلوب للوصول إلى التطبيق" كما هو الحالSetupApplications.ps1.

فشل الاتصال ب PowerShell مع وجود خطأ: "بيانات الاعتماد المحددة غير صالحة"

مشكلة

عند استخدام PowerShell للاتصال بالمجموعة باستخدام وضع الأمان "AzureActiveDirectory"، بعد تسجيل الدخول بنجاح إلى Microsoft Entra ID، يفشل الاتصال مع وجود خطأ: "بيانات الاعتماد المحددة غير صالحة."

الحل

هذا الحل هو نفسه الحل السابق.

يقوم Service Fabric Explorer بإرجاع فشل عند تسجيل الدخول: "AADSTS50011"

مشكلة

عند محاولة تسجيل الدخول إلى معرف Microsoft Entra في Service Fabric Explorer، ترجع الصفحة فشلا: "AADSTS50011: عنوان URL لعنوان <الرد لا يتطابق مع عناوين الرد التي تم تكوينها للتطبيق: <guid>.">

عنوان رد SFX غير متطابق

السبب

يحاول تطبيق نظام المجموعة (الويب) الذي يمثل Service Fabric Explorer المصادقة مقابل معرف Microsoft Entra، وكجزء من الطلب يوفر عنوان URL لإرجاع إعادة التوجيه. ولكن عنوان URL غير مدرج في قائمة عنوان URL للرد على تطبيق Microsoft Entra.

الحل

في صفحة تسجيل تطبيق Microsoft Entra لنظام المجموعة، حدد Authentication، وضمن قسم Redirect URIs ، أضف عنوان URL لمستكشف Service Fabric إلى القائمة. حفظ التغييرات.

عنوان URL للرد على تطبيق الويب

الاتصال بالمجموعة باستخدام مصادقة Microsoft Entra عبر PowerShell يعطي خطأ عند تسجيل الدخول: "AADSTS50011"

مشكلة

عند محاولة الاتصال بمجموعة Service Fabric باستخدام معرف Microsoft Entra عبر PowerShell، ترجع صفحة تسجيل الدخول فشلا: "AADSTS50011: عنوان URL للرد المحدد في الطلب لا يتطابق مع عناوين URL للرد المكونة للتطبيق: <guid>."

السبب

على غرار المشكلة السابقة، يحاول PowerShell المصادقة مقابل معرف Microsoft Entra، والذي يوفر عنوان URL لإعادة التوجيه غير مدرج في قائمة عناوين URL للرد على تطبيق Microsoft Entra.

الحل

استخدم نفس العملية كما في العدد السابق، ولكن يجب تعيين عنوان URL إلى urn:ietf:wg:oauth:2.0:oob، إعادة توجيه خاصة لمصادقة سطر الأوامر.

ينتج عن تنفيذ البرنامج النصي خطأ في خطأ التخويل

مشكلة

قد يفشل برنامج PowerShell النصي في تنفيذ جميع أوامر REST المطلوبة لإكمال تكوين Microsoft Entra مع ظهور الخطأ "Authorization_RequestDenied"، "امتيازات غير كافية لإكمال العملية". مثال على الخطأ:

Invoke-WebRequest: /home/<user>/clouddrive/service-fabric-aad-helpers/Common.ps1:239
Line |
 239 |  …   $result = Invoke-WebRequest $uri -Method $method -Headers $headers  …
     |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | {"error":{"code":"Authorization_RequestDenied","message":"Insufficient privileges to complete the
     | operation.","innerError":{"date":"2022-08-29T14:46:37","request-id":"c4fd3acc-1558-4950-8028-68bb058f7bf0","client-request-id":"c4fd3acc-1558-4950-8028-68bb058f7bf0"}}}
...
invoke-graphApi count:0 statuscode:403 -uri https://graph.microsoft.com/v1.0/72f988bf-86f1-41af-91ab-2d7cd011db47/oauth2PermissionGrants -headers System.Collections.Hashtable -body System.Collections.Hashtable -method post
Write-Error: /home/<user>/clouddrive/service-fabric-aad-helpers/SetupApplications.ps1:364
Line |
 364 |      assert-notNull $result "aad app service principal oauth permissio …
     |      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | aad app service principal oauth permissions User.Read configuration failed

Write-Error: /home/<user>/clouddrive/service-fabric-aad-helpers/SetupApplications.ps1:656
Line |
 656 |  main
     |  ~~~~
     | exception:  exception: assertion failure: object: message:aad app service principal oauth permissions User.Read configuration failed  Exception:
     | /home/<user>/clouddrive/service-fabric-aad-helpers/Common.ps1:22 Line |   22 |          throw "assertion failure: object:$obj message:$msg"      |         
     | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~      | assertion failure: object: message:aad app service principal oauth permissions User.Read configuration failed  
...

السبب

يتم إرجاع هذا الخطأ عندما لا يمتلك حساب المستخدم الذي يقوم بتنفيذ البرنامج النصي الأذونات اللازمة لإجراء استدعاء REST. يمكن أن يحدث هذا إذا لم يكن لدى المستخدم أذونات المسؤول/الإدارة/الكتابة للكائنات التي يتم إنشاؤها أو تعديلها.

الحل

العمل مع مسؤول مستأجر Azure أو معرف Microsoft Entra لإكمال جميع الإجراءات المتبقية. البرامج النصية المقدمة متكررة، بحيث يمكن إعادة تنفيذها لإكمال العملية.

توصيل نظام المجموعة باستخدام مصادقة Microsoft Entra عبر PowerShell

لتوصيل نظام المجموعة "نسيج الخدمة"، استخدم مثال الأمر PowerShell التالي:

Connect-ServiceFabricCluster -ConnectionEndpoint <endpoint> -KeepAliveIntervalInSec 10 -AzureActiveDirectory -ServerCertThumbprint <thumbprint>

لمعرفة المزيد، راجع Connect-ServiceFabricCluster cmdlet.

هل يمكنني إعادة استخدام نفس مستأجر Microsoft Entra في مجموعات متعددة؟

نعم. ولكن تذكر إضافة عنوان URL الخاص بـService Fabric Explorer إلى تطبيق الكتلة (الويب). وإلا، فلن يعمل Service Fabric Explorer.

لماذا ما زلت بحاجة إلى شهادة خادم أثناء تمكين معرف Microsoft Entra؟

يقوم FabricClient وFabricGateway بإجراء مصادقة متبادلة. أثناء مصادقة Microsoft Entra، يوفر تكامل Microsoft Entra هوية العميل للخادم، ويتم استخدام شهادة الخادم من قبل العميل للتحقق من هوية الخادم. لمزيد من المعلومات حول شهادات نسيج الخدمة، راجع شهادات X.509 ونسيج الخدمة.

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

بعد إعداد تطبيقات Microsoft Entra وإعداد الأدوار للمستخدمين، قم بتكوين نظام مجموعة ونشره.