ملاحظة
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
هام
اعتبارا من 1 مايو 2025، لن يكون Azure AD B2C متوفرا للشراء للعملاء الجدد. تعرف على المزيد في الأسئلة المتداولة.
قبل البدء، استخدم محدد اختيار نوع نهج في أعلى هذه الصفحة لاختيار نوع النهج الذي تقوم بإعداده. يوفر Azure Active Directory B2C طريقتين لتحديد كيفية تفاعل المستخدمين مع تطبيقاتك: من خلال تدفقات محددة مسبقا للمستخدمين أو من خلال سياسات مخصصة قابلة للتكوين بشكل كامل. تختلف الخطوات المطلوبة في هذه المقالة لكل أسلوب.
إشعار
في Azure Active Directory B2C، تم تصميم النُهج المخصصة بشكل أساسي لمعالجة السيناريوهات المعقدة. بالنسبة إلى معظم السيناريوهات، نوصي باستخدام تدفقات المستخدم المضمنة. إذا لم تقم بذلك، تعرف على حزمة بادئ النهج المخصصة في البدء باستخدام النهج المخصصة في Active Directory B2C.
المتطلبات الأساسية
- إنشاء تدفق مستخدم حتى يتمكن المستخدمون من التسجيل وتسجيل الدخول إلى التطبيق الخاص بك.
- تسجيل تطبيق ويب.
- أكمل الخطوات الواردة في بدء استخدام النهج المخصصة في Active Directory B2C. يرشدك هذا البرنامج التعليمي إلى كيفية تحديث ملفات النهج المخصصة لاستخدام تكوين مستأجر Azure AD B2C.
- تسجيل تطبيق ويب.
إنشاء تطبيق Apple ID
لتمكين تسجيل الدخول للمستخدمين الذين لديهم معرف Apple في Azure Active Directory B2C (Azure AD B2C)، تحتاج إلى إنشاء تطبيق في https://developer.apple.com. لمزيد من المعلومات، راجع تسجيل الدخول باستخدام Apple. إذا لم يكن لديك حساب مطور Apple بالفعل، فيمكنك التسجيل في برنامج مطوري Apple.
- سجل الدخول إلى Apple Developer Portal باستخدام بيانات اعتماد حسابك.
- من القائمة، حدد الشهادات والمعرفات وملفات التعريف، ثم حدد (+).
- لتسجيل معرف جديد، حدد معرفات التطبيق، ثم حدد متابعة.
- بالنسبة إلى Select a type، حدد App، ثم حدد Continue.
-
لتسجيل معرف التطبيق:
- أدخل وصفا
- أدخل معرف الحزمة، مثل
com.contoso.azure-ad-b2c
. - بالنسبة إلى القدرات، حدد تسجيل الدخول باستخدام Apple من قائمة الإمكانات.
- دون معرف الفريق (بادئة معرف التطبيق) من هذه الخطوة. سوف تحتاجها لاحقًا.
- حدد Continue ثم Register.
- من القائمة، حدد الشهادات والمعرفات وملفات التعريف، ثم حدد (+).
- لتسجيل معرف جديد، حدد معرفات الخدمات، ثم حدد متابعة.
-
لتسجيل معرف الخدمات:
- أدخِل الوصف. يتم عرض الوصف للمستخدم على شاشة الموافقة.
- أدخل المعرف، مثل
com.consoto.azure-ad-b2c-service
. دون معرف معرف الخدمة . المعرف هو معرف العميل الخاص بك لتدفق OpenID Connect. - حدد متابعة، ثم حدد تسجيل.
- من المعرفات، حدد المعرف الذي أنشأته.
- حدد تسجيل الدخول باستخدام Apple، ثم حدد تكوين.
- حدد معرف التطبيق الأساسي الذي تريد تكوين تسجيل الدخول باستخدام Apple باستخدامه.
- في المجالات والمجالات الفرعية، أدخل
your-tenant-name.b2clogin.com
. استبدل your-tenant-name باسم المستأجر الخاص بك. إذا كنت تستخدم مجالا مخصصا، أدخلhttps://your-domain-name
. - في Return URLs، أدخل
https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp
. إذا كنت تستخدم مجالا مخصصا، أدخلhttps://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp
. استبدلyour-tenant-name
باسم المستأجر الخاص بك، ومجالكyour-domain-name
المخصص. يجب أن يكون عنوان URL المرجع في جميع الأحرف الصغيرة. - حدد التالي، ثم حدد تم.
- عند إغلاق النافذة المنبثقة، حدد متابعة، ثم حدد حفظ.
إنشاء سر عميل Apple
- من قائمة مدخل Apple Developer، حدد Keys، ثم حدد (+).
-
لتسجيل مفتاح جديد:
- اكتب اسم مفتاح.
- حدد تسجيل الدخول باستخدام Apple، ثم حدد تكوين.
- بالنسبة إلى Primary App ID، حدد التطبيق الذي أنشأته مسبقا، وحدد Save.
- حدد Configure، ثم حدد Register لإنهاء عملية تسجيل المفتاح. دون معرف المفتاح. هذا المفتاح مطلوب عند تكوين تدفقات المستخدم.
- لتنزيل مفتاحك، حدد تنزيل لتنزيل ملف .p8 يحتوي على المفتاح الخاص بك.
تكوين Apple كموفر هوية
- سجل الدخول إلى مدخل Microsoft Azure باستخدام حساب يحتوي على امتيازات مسؤول موفر الهوية الخارجية على الأقل.
- إذا كان لديك حق الوصول إلى عدة مستأجرين، فحدد أيقونة الإعدادات في القائمة العلوية للتبديل إلى مستأجر Azure AD B2C من قائمة الدلائل + الاشتراكات .
- ضمن خدمات Azure، حدد Azure AD B2C. أو استخدم مربع البحث للبحث عن Azure AD B2C وتحديده.
- حدد موفري الهوية، ثم حدد Apple.
- بالنسبة إلى الاسم، أدخل تسجيل الدخول باستخدام Apple.
- أدخل معرف مطور Apple (معرف الفريق).
- أدخل معرف خدمة Apple (معرف العميل).
- أدخل معرف مفتاح Apple من الخطوة إنشاء سر عميل Apple.
- حدد بيانات شهادة Apple وقم بتحميلها.
- حدد Save.
هام
- يتطلب تسجيل الدخول باستخدام Apple من المسؤول تجديد سر العميل كل 6 أشهر.
- سيتم تجديد سر عميل Apple تلقائيا عند انتهاء صلاحيته. إذا كنت بحاجة إلى تجديد السر يدويا، فافتح Azure AD B2C في مدخل Microsoft Azure، وانتقل إلى موفري> الهويةApple، وحدد تجديد البيانات السرية.
- اتبع الإرشادات حول كيفية تقديم زر تسجيل الدخول باستخدام Apple.
إضافة موفر هوية Apple إلى تدفق المستخدم
لتمكين المستخدمين من تسجيل الدخول باستخدام معرف Apple، تحتاج إلى إضافة موفر هوية Apple إلى تدفق المستخدم. يمكن تكوين تسجيل الدخول باستخدام Apple فقط للإصدار الموصى به من تدفقات المستخدم. لإضافة موفر هوية Apple إلى تدفق المستخدم:
- في مستأجر Azure AD B2C، حدد تدفقات المستخدم.
- حدد تدفق المستخدم الذي تريد إضافة موفر هوية Apple له.
- ضمن موفري الهوية الاجتماعية، حدد Apple.
- حدد Save.
- لاختبار النهج الخاص بك، حدد تشغيل تدفق المستخدم.
- بالنسبة للتطبيق، حدد تطبيق الويب المسمى testapp1 الذي قمت بتسجيله مسبقا. يجب أن يظهر
https://jwt.ms
. - حدد الزر Run user flow .
- من صفحة الاشتراك أو تسجيل الدخول، حدد Apple لتسجيل الدخول باستخدام معرف Apple.
إذا نجحت عملية تسجيل الدخول، تتم إعادة توجيه المستعرض إلى https://jwt.ms
، والذي يعرض محتويات الرمز المميز الذي تم إرجاعه بواسطة Azure AD B2C.
توقيع سر العميل
استخدم ملف .p8 الذي قمت بتنزيله مسبقا لتوقيع سر العميل في JWT. هناك العديد من المكتبات التي يمكن إنشاء وتوقيع JWT بالنسبة لك. استخدم Azure Function التي تنشئ رمزا مميزا لك.
إنشاء دالة Azure.
ضمن Developer، حدد Code + Test.
انسخ محتوى الملف run.csx ، والصقه في المحرر.
حدد Save.
قم بإجراء طلب HTTP
POST
، وقدم المعلومات التالية:- appleTeamId: معرف فريق مطوري Apple
- appleServiceId: معرف خدمة Apple (معرف العميل)
- appleKeyId: معرف مفتاح المكون من 10 أرقام المخزن في رأس JWT (مطلوب بواسطة Apple)
-
p8key: مفتاح تنسيق PEM. يمكنك الحصول على ذلك عن طريق فتح ملف .p8 في محرر نص ونسخ كل شيء بين
-----BEGIN PRIVATE KEY-----
فواصل الأسطر وبدونها-----END PRIVATE KEY-----
.
json التالي هو مثال على استدعاء لدالة Azure:
{
"appleTeamId": "ABC123DEFG",
"appleServiceId": "com.yourcompany.app1",
"appleKeyId": "URKEYID001",
"p8key": "MIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQg+s07NiAcuGEu8rxsJBG7ttupF6FRe3bXdHxEipuyK82gCgYIKoZIzj0DAQehRANCAAQnR1W/KbbaihTQayXH3tuAXA8Aei7u7Ij5OdRy6clOgBeRBPy1miObKYVx3ki1msjjG2uGqRbrc1LvjLHINWRD"
}
تستجيب وظيفة Azure ب JWT سري للعميل منسق بشكل صحيح وموقع في استجابة، على سبيل المثال:
{
"token": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjb20ueW91cmNvbXBhbnkuYXBwMSIsIm5iZiI6MTU2MDI2OTY3NSwiZXhwIjoxNTYwMzU2MDc1LCJpc3MiOiJBQkMxMjNERUZHIiwiYXVkIjoiaHR0cHM6Ly9hcHBsZWlkLmFwcGxlLmNvbSJ9.Dt9qA9NmJ_mk6tOqbsuTmfBrQLFqc9BnSVKR6A-bf9TcTft2XmhWaVODr7Q9w1PP3QOYShFXAnNql5OdNebB4g"
}
إنشاء مفتاح نهج
تحتاج إلى تخزين سر العميل الذي قمت بتسجيله مسبقا في مستأجر Azure AD B2C.
- سجل الدخول إلى مدخل Microsoft Azure.
- إذا كان لديك حق الوصول إلى عدة مستأجرين، فحدد أيقونة الإعدادات في القائمة العلوية للتبديل إلى مستأجر Azure AD B2C من قائمة الدلائل + الاشتراكات .
- ضمن خدمات Azure، حدد Azure AD B2C. أو استخدم مربع البحث للبحث عن Azure AD B2C وتحديده.
- في صفحة Overview ، حدد Identity Experience Framework.
- حدد Policy Keys، ثم حدد Add.
- بالنسبة إلى خيارات، اختر يدوي.
- أدخل اسما لمفتاح النهج. على سبيل المثال، "AppleSecret". تتم إضافة البادئة "B2C_1A_" تلقائيا إلى اسم المفتاح.
- في Secret، أدخل قيمة رمز مميز تم إرجاعه بواسطة Azure Function (JWT).
- لاستخدام المفتاح، حدد توقيع.
- حدد Create.
هام
- يتطلب تسجيل الدخول باستخدام Apple من المسؤول تجديد سر العميل كل 6 أشهر.
- ستحتاج إلى تجديد سر عميل Apple يدويا إذا انتهت صلاحيته وتخزين القيمة الجديدة في مفتاح النهج.
- نوصي بتعيين التذكير الخاص بك في غضون 6 أشهر لإنشاء سر عميل جديد.
- اتبع الإرشادات حول كيفية تقديم زر تسجيل الدخول باستخدام Apple.
تكوين Apple كموفر هوية
لتمكين المستخدمين من تسجيل الدخول باستخدام معرف Apple، تحتاج إلى تعريف الحساب كموفر مطالبات يمكن ل Azure AD B2C الاتصال به من خلال نقطة نهاية. توفر نقطة النهاية مجموعة من المطالبات التي يستخدمها Azure AD B2C للتحقق من مصادقة مستخدم معين.
يمكنك تعريف معرف Apple كموفر مطالبات عن طريق إضافته إلى عنصر ClaimsProviders في ملف الملحق لسياستك.
افتح TrustFrameworkExtensions.xml.
ابحث عن عنصر ClaimsProviders . إذا لم يكن موجودا، أضفه ضمن العنصر الجذر.
إضافة ClaimsProvider جديد كما يلي:
<ClaimsProvider> <Domain>apple.com</Domain> <DisplayName>Apple</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="Apple-OIDC"> <DisplayName>Sign in with Apple</DisplayName> <Protocol Name="OpenIdConnect" /> <Metadata> <Item Key="ProviderName">apple</Item> <Item Key="authorization_endpoint">https://appleid.apple.com/auth/authorize</Item> <Item Key="AccessTokenEndpoint">https://appleid.apple.com/auth/token</Item> <Item Key="JWKS">https://appleid.apple.com/auth/keys</Item> <Item Key="issuer">https://appleid.apple.com</Item> <Item Key="scope">name email openid</Item> <Item Key="HttpBinding">POST</Item> <Item Key="response_types">code</Item> <Item Key="external_user_identity_claim_id">sub</Item> <Item Key="response_mode">form_post</Item> <Item Key="ReadBodyClaimsOnIdpRedirect">user.name.firstName user.name.lastName user.email</Item> <Item Key="client_id">You Apple ID</Item> <Item Key="UsePolicyInRedirectUri">false</Item> </Metadata> <CryptographicKeys> <Key Id="client_secret" StorageReferenceId="B2C_1A_AppleSecret"/> </CryptographicKeys> <OutputClaims> <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" /> <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="https://appleid.apple.com" AlwaysUseDefaultValue="true" /> <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" /> <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="user.name.firstName"/> <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="user.name.lastName"/> <OutputClaim ClaimTypeReferenceId="email" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName"/> <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName"/> <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId"/> <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId"/> </OutputClaimsTransformations> <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" /> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>
تعيين client_id إلى معرف الخدمة. على سبيل المثال،
com.consoto.azure-ad-b2c-service
حفظ الملف.
إضافة رحلة مستخدم
في هذه المرحلة، تم إعداد موفر الهوية، ولكنه غير متوفر بعد في أي من صفحات تسجيل الدخول. إذا لم يكن لديك رحلة مستخدم مخصصة خاصة بك، فبادر بإنشاء نسخة مكررة من رحلة مستخدم قالب موجودة، وإلا تابع إلى الخطوة التالية.
- افتح ملف TrustFrameworkBase.xml من حزمة البداية.
- ابحث عن المحتويات الكاملة لعنصر UserJourney الذي يتضمن
Id="SignUpOrSignIn"
وانسخها. - افتح TrustFrameworkExtensions.xml وابحث عن عنصر UserJourneys . إذا لم يكن العنصر موجودا، أضف واحدا.
- الصق المحتوى الكامل لعنصر UserJourney الذي نسخته كعنصر تابع لعنصر UserJourneys .
- أعد تسمية معرف رحلة المستخدم. على سبيل المثال،
Id="CustomSignUpSignIn"
إضافة موفر الهوية إلى رحلة مستخدم
الآن بعد أن أصبح لديك رحلة مستخدم، أضف موفر الهوية الجديد إلى رحلة المستخدم. يمكنك أولا إضافة زر تسجيل الدخول، ثم ربط الزر بإجراء. الإجراء هو ملف التعريف الفني الذي أنشأته سابقا.
ابحث عن عنصر خطوة التزامن الذي يتضمن
Type="CombinedSignInAndSignUp"
، أوType="ClaimsProviderSelection"
في رحلة المستخدم. عادة ما تكون خطوة التنسيق الأولى. يحتوي عنصر ClaimsProviderSelections على قائمة بموفري الهوية التي يمكن للمستخدم تسجيل الدخول باستخدامها. يتحكم ترتيب العناصر في ترتيب أزرار تسجيل الدخول المقدمة للمستخدم. إضافة عنصر ClaimsProviderSelection XML. تعيين قيمة TargetClaimsExchangeId إلى اسم مألوف.في خطوة التنسيق التالية، أضف عنصر ClaimsExchange . تعيين المعرف إلى قيمة معرف تبادل المطالبات الهدف. قم بتحديث قيمة TechnicalProfileReferenceId إلى معرف ملف التعريف الفني الذي أنشأته سابقا.
يوضح XML التالي أول خطوتين للتنسيق لرحلة المستخدم مع موفر الهوية:
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
...
<ClaimsProviderSelection TargetClaimsExchangeId="AppleExchange" />
</ClaimsProviderSelections>
...
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="AppleExchange" TechnicalProfileReferenceId="Apple-OIDC" />
</ClaimsExchanges>
</OrchestrationStep>
تكوين نهج جهة الاعتماد
يحدد نهج الطرف المعتمد، على سبيل المثال SignUpSignIn.xml، رحلة المستخدم التي سينفذها Azure AD B2C. ابحث عن عنصر DefaultUserJourney داخل جهة الاعتماد. قم بتحديث ReferenceId لمطابقة معرف رحلة المستخدم، الذي أضفت فيه موفر الهوية.
في المثال التالي، بالنسبة لرحلة CustomSignUpSignIn
المستخدم، يتم تعيين ReferenceId إلى CustomSignUpSignIn
:
<RelyingParty>
<DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
...
</RelyingParty>
تحميل النهج المخصص
- سجل الدخول إلى مدخل Microsoft Azure.
- حدد أيقونة الدليل + الاشتراك في شريط أدوات المدخل، ثم حدد الدليل الذي يحتوي على مستأجر Azure AD B2C.
- في مدخل Microsoft Azure، ابحث عن Azure AD B2C وحددها.
- ضمن Policies، حدد Identity Experience Framework.
- حدد Upload Custom Policy، ثم قم بتحميل ملفي النهج اللذين قمت بتغييرهما، بالترتيب التالي: نهج الملحق، على سبيل المثال
TrustFrameworkExtensions.xml
، ثم نهج الطرف المعتمد، مثلSignUpSignIn.xml
.
اختبار النهج المخصص
- حدد نهج جهة الاعتماد، على سبيل المثال
B2C_1A_signup_signin
. - بالنسبة للتطبيق، حدد تطبيق ويب قمت بتسجيله مسبقا. يجب أن يظهر
https://jwt.ms
. - حدد الزر تشغيل الآن .
- من صفحة الاشتراك أو تسجيل الدخول، حدد Apple لتسجيل الدخول باستخدام معرف Apple.
إذا نجحت عملية تسجيل الدخول، تتم إعادة توجيه المستعرض إلى https://jwt.ms
، والذي يعرض محتويات الرمز المميز الذي تم إرجاعه بواسطة Azure AD B2C.
تخصيص واجهة المستخدم
اتبع الإرشادات كيفية تقديم تسجيل الدخول باستخدام Apple. توفر Apple العديد من أزرار تسجيل الدخول باستخدام Apple التي يمكنك استخدامها للسماح للأشخاص بإعداد حساب وتسجيل الدخول. إذا لزم الأمر، قم بإنشاء زر مخصص لتقديم تسجيل الدخول باستخدام Apple. تعرف على كيفية عرض زر تسجيل الدخول باستخدام Apple.
للتوافق مع إرشادات واجهة مستخدم Apple:
- تخصيص واجهة المستخدم باستخدام قوالب HTML
- ترجمة اسم موفر الهوية.