مشاركة عبر


إعداد التسجيل وتسجيل الدخول باستخدام حساب SwissID باستخدام Azure Active Directory B2C

هام

اعتبارا من 1 مايو 2025، لن يكون Azure AD B2C متوفرا للشراء للعملاء الجدد. تعرف على المزيد في الأسئلة المتداولة.

قبل البدء، استخدم محدد اختيار نوع نهج في أعلى هذه الصفحة لاختيار نوع النهج الذي تقوم بإعداده. يوفر Azure Active Directory B2C طريقتين لتحديد كيفية تفاعل المستخدمين مع تطبيقاتك: من خلال تدفقات محددة مسبقا للمستخدمين أو من خلال سياسات مخصصة قابلة للتكوين بشكل كامل. تختلف الخطوات المطلوبة في هذه المقالة لكل أسلوب.

في هذه المقالة، ستتعلم كيفية توفير الاشتراك وتسجيل الدخول للعملاء الذين لديهم حسابات SwissID في تطبيقاتك باستخدام Azure Active Directory B2C (Azure AD B2C). يمكنك إضافة SwissID إلى تدفقات المستخدم أو النهج المخصص باستخدام بروتوكول OpenID Connect. لمزيد من المعلومات، راجع إرشادات تكامل SwissID - OpenID Connect.

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

إنشاء تطبيق SwissID

لتمكين تسجيل الدخول للمستخدمين الذين لديهم حساب SwissID في Azure AD B2C، تحتاج إلى إنشاء تطبيق. لإنشاء تطبيق SwissID، اتبع الخطوات التالية:

  1. اتصل بدعم SwissID Business Partner.

  2. بعد التسجيل باستخدام SwissID، قم بتوفير معلومات حول مستأجر Azure AD B2C:

    المفتاح إشعار
    عنوان URI لإعادة التوجيه‬ https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp قم بتوفير URI. إذا كنت تستخدم مجالا مخصصا، أدخل https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp. استبدل your-tenant-name باسم المستأجر الخاص بك، ومجالك your-domain-name المخصص.
    أسلوب مصادقة نقطة نهاية الرمز المميز client_secret_post
  3. بعد تسجيل التطبيق، سيتم توفير المعلومات التالية بواسطة SwissID. استخدم هذه المعلومات لتكوين تدفق المستخدم أو النهج المخصص.

    المفتاح إشعار
    البيئة نقطة نهاية التكوين المعروفة ل SwissID OpenId. على سبيل المثال، https://login.sandbox.pre.swissid.ch/idp/oauth2/.well-known/openid-configuration
    معرف العميل معرف عميل SwissID. على سبيل المثال، 00001111-aaaa-2222-bbbb-3333cccc4444
    كلمة المرور سر عميل SwissID.

تكوين SwissID كموفر هوية

  1. إذا كان لديك حق الوصول إلى عدة مستأجرين، فحدد أيقونة الإعدادات في القائمة العلوية للتبديل إلى مستأجر Azure AD B2C من قائمة الدلائل + الاشتراكات .

  2. اختر جميع الخدمات في الزاوية العلوية اليمنى من مدخل Microsoft Azure، ثم ابحث عن Azure AD B2C وحدده.

  3. حدد موفري الهوية، ثم حدد موفر اتصال OpenID جديد.

  4. أدخل اسمًا. على سبيل المثال، أدخل SwissID.

  5. بالنسبة إلى Metadata url، أدخل نقطة نهاية التكوين المعروفة ل URL SwissID OpenId. على سبيل المثال:

    https://login.sandbox.pre.swissid.ch/idp/oauth2/.well-known/openid-configuration
    
  6. بالنسبة إلى معرف العميل، أدخل معرف عميل SwissID.

  7. بالنسبة إلى سر العميل، أدخل سر عميل SwissID.

  8. بالنسبة للنطاق، أدخل openid profile email.

  9. اترك القيم الافتراضية لنوع الاستجابةووضع الاستجابة.

  10. (اختياري) للحصول على تلميح المجال، أدخل swissid.com. للمزيد من المعلومات، راجع إعداد تسجيل الدخول المباشر باستخدام Azure Active Directory B2C.

  11. ضمن تعيين مطالبات موفر الهوية، حدد المطالبات التالية:

    • معرف المستخدم: فرعي
    • الاسم المحدد: given_name
    • اللقب: family_name
    • البريد الإلكتروني: البريد الإلكتروني
  12. حدد حفظ.

إضافة موفر هوية SwissID إلى تدفق المستخدم

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

  1. في مستأجر Azure AD B2C، حدد تدفقات المستخدم.
  2. انقر فوق تدفق المستخدم الذي تريد إضافة موفر هوية SwissID.
  3. ضمن موفري الهوية الاجتماعية، حدد SwissID.
  4. حدد حفظ.
  5. لاختبار النهج الخاص بك، حدد تشغيل تدفق المستخدم.
  6. بالنسبة للتطبيق، حدد تطبيق الويب المسمى testapp1 الذي قمت بتسجيله مسبقا. يجب أن يظهر https://jwt.ms .
  7. حدد الزر Run user flow .
  8. من صفحة الاشتراك أو تسجيل الدخول، حدد SwissID لتسجيل الدخول باستخدام حساب SwissID.

إذا نجحت عملية تسجيل الدخول، تتم إعادة توجيه المستعرض إلى https://jwt.ms، والذي يعرض محتويات الرمز المميز الذي تم إرجاعه بواسطة Azure AD B2C.

إنشاء مفتاح نهج

تحتاج إلى تخزين سر العميل الذي تلقيته من SwissID في مستأجر Azure AD B2C.

  1. قم بتسجيل الدخول إلى بوابة Azure.
  2. تأكد من استخدام الدليل الذي يحتوي على مستأجر Azure AD B2C. حدد عامل تصفية الدليل + الاشتراك في القائمة العلوية واختر الدليل الذي يحتوي على المستأجر الخاص بك.
  3. اختر جميع الخدمات في الزاوية العلوية اليمنى من مدخل Microsoft Azure، ثم ابحث عن Azure AD B2C وحدده.
  4. في صفحة Overview، حدد Identity Experience Framework.
  5. حدد Policy Keys ثم حدد Add.
  6. بالنسبة إلى خيارات، اختر Manual.
  7. أدخل اسما لمفتاح النهج. على سبيل المثال، SwissIDSecret تتم إضافة البادئة B2C_1A_ تلقائيا إلى اسم المفتاح.
  8. في Secret، أدخل سر عميل SwissID الخاص بك.
  9. بالنسبة لاستخدام المفتاح، حدد Signature.
  10. انقر فوق إنشاء.

تكوين SwissID كموفر هوية

لتمكين المستخدمين من تسجيل الدخول باستخدام حساب SwissID، تحتاج إلى تعريف الحساب كموفر مطالبات يمكن ل Azure AD B2C الاتصال به من خلال نقطة نهاية. توفر نقطة النهاية مجموعة من المطالبات التي يستخدمها Azure AD B2C للتحقق من مصادقة مستخدم معين.

يمكنك تعريف حساب SwissID كموفر مطالبات عن طريق إضافته إلى عنصر ClaimsProviders في ملف الملحق لسياستك.

  1. افتح TrustFrameworkExtensions.xml.

  2. ابحث عن عنصر ClaimsProviders . إذا لم يكن موجودا، أضفه ضمن العنصر الجذر.

  3. إضافة ClaimsProvider جديد كما يلي:

    <ClaimsProvider>
      <Domain>SwissID.com</Domain>
      <DisplayName>SwissID</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="SwissID-OpenIdConnect">
          <DisplayName>SwissID</DisplayName>
          <Protocol Name="OpenIdConnect" />
          <Metadata>
            <Item Key="METADATA">https://login.sandbox.pre.swissid.ch/idp/oauth2/.well-known/openid-configuration</Item>
            <Item Key="client_id">Your Swiss client ID</Item>
            <Item Key="response_types">code</Item>
            <Item Key="scope">openid profile email</Item>
            <Item Key="response_mode">form_post</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="UsePolicyInRedirectUri">false</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_SwissIDSecret" />
          </CryptographicKeys>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" PartnerClaimType="iss" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" />
            <OutputClaim ClaimTypeReferenceId="surName" PartnerClaimType="family_name" />
            <OutputClaim ClaimTypeReferenceId="email" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" />
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" />
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" />
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" />
            <OutputClaimsTransformation ReferenceId="CreateDisplayName" />
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. تعيين client_id إلى معرف عميل SwissID.

  5. حفظ الملف.

إضافة رحلة مستخدم

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

  1. افتح ملف TrustFrameworkBase.xml من حزمة البداية.
  2. ابحث عن المحتويات الكاملة لعنصر UserJourney الذي يتضمن Id="SignUpOrSignIn"وانسخها.
  3. افتح TrustFrameworkExtensions.xml وابحث عن عنصر UserJourneys . إذا لم يكن العنصر موجودا، أضف واحدا.
  4. الصق المحتوى الكامل لعنصر UserJourney الذي نسخته كعنصر تابع لعنصر UserJourneys .
  5. أعد تسمية معرف رحلة المستخدم. على سبيل المثال، Id="CustomSignUpSignIn"

إضافة موفر الهوية إلى رحلة مستخدم

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

  1. ابحث عن عنصر خطوة التزامن الذي يتضمن Type="CombinedSignInAndSignUp"، أو Type="ClaimsProviderSelection" في رحلة المستخدم. عادة ما تكون خطوة التنسيق الأولى. يحتوي عنصر ClaimsProviderSelections على قائمة بموفري الهوية التي يمكن للمستخدم تسجيل الدخول باستخدامها. يتحكم ترتيب العناصر في ترتيب أزرار تسجيل الدخول المقدمة للمستخدم. إضافة عنصر ClaimsProviderSelection XML. تعيين قيمة TargetClaimsExchangeId إلى اسم مألوف.

  2. في خطوة التنسيق التالية، أضف عنصر ClaimsExchange . تعيين المعرف إلى قيمة معرف تبادل المطالبات الهدف. قم بتحديث قيمة TechnicalProfileReferenceId إلى معرف ملف التعريف الفني الذي أنشأته سابقا.

يوضح XML التالي أول خطوتين للتنسيق لرحلة المستخدم مع موفر الهوية:

<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
  <ClaimsProviderSelections>
    ...
    <ClaimsProviderSelection TargetClaimsExchangeId="SwissIDExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="SwissIDExchange" TechnicalProfileReferenceId="SwissID-OpenIdConnect" />
  </ClaimsExchanges>
</OrchestrationStep>

تكوين نهج جهة الاعتماد

يحدد نهج الطرف المعتمد، على سبيل المثال SignUpSignIn.xml، رحلة المستخدم التي سينفذها Azure AD B2C. ابحث عن عنصر DefaultUserJourney داخل جهة الاعتماد. قم بتحديث ReferenceId لمطابقة معرف رحلة المستخدم، الذي أضفت فيه موفر الهوية.

في المثال التالي، بالنسبة لرحلة CustomSignUpSignIn المستخدم، يتم تعيين ReferenceId إلى CustomSignUpSignIn:

<RelyingParty>
  <DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
  ...
</RelyingParty>

تحميل النهج المخصص

  1. قم بتسجيل الدخول إلى بوابة Azure.
  2. حدد أيقونة الدليل + الاشتراك في شريط أدوات المدخل، ثم حدد الدليل الذي يحتوي على مستأجر Azure AD B2C.
  3. في مدخل Microsoft Azure، ابحث عن Azure AD B2C وحددها.
  4. ضمن Policies، حدد Identity Experience Framework.
  5. حدد Upload Custom Policy، ثم قم بتحميل ملفي النهج اللذين قمت بتغييرهما، بالترتيب التالي: نهج الملحق، على سبيل المثال TrustFrameworkExtensions.xml، ثم نهج الطرف المعتمد، مثل SignUpSignIn.xml.

اختبار النهج المخصص

  1. حدد نهج جهة الاعتماد، على سبيل المثال B2C_1A_signup_signin.
  2. بالنسبة للتطبيق، حدد تطبيق ويب قمت بتسجيله مسبقا. يجب أن يظهر https://jwt.ms .
  3. حدد الزر تشغيل الآن .
  4. من صفحة الاشتراك أو تسجيل الدخول، حدد SwissID لتسجيل الدخول باستخدام حساب SwissID.

إذا نجحت عملية تسجيل الدخول، تتم إعادة توجيه المستعرض إلى https://jwt.ms، والذي يعرض محتويات الرمز المميز الذي تم إرجاعه بواسطة Azure AD B2C.

الانتقال إلى الإنتاج

يوفر SwissID IdP بيئات ما قبل الإنتاج والإنتاج. يستخدم التكوين الموضح في هذه المقالة بيئة ما قبل الإنتاج. لاستخدام بيئة الإنتاج، اتبع الخطوات التالية:

  1. اتصل بدعم SwissId لبيئة إنتاج.
  2. تحديث تدفق المستخدم أو النهج المخصص باستخدام URI لنقطة نهاية التكوين المعروفة.

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

تعرف على كيفية تمرير الرمز المميز SwissID إلى التطبيق الخاص بك.