كيفية استخدام B2CORE كموفر هوية موثوق (OIDC)

تعرّف على كيفية السماح لتطبيق تابع لجهة خارجية بتوفير خيار "تسجيل الدخول باستخدام B2CORE" عبر الاتصال بـ B2CORE كموفر هوية OpenID Connect (OIDC)

هذا الدليل مخصص للوسطاء الذين يريدون أن يتيح تطبيق آخر — سواء كان منتجك الخاص أو تطبيق شريك أو منصة هوية مثل Keycloak — للمستخدمين تسجيل الدخول باستخدام حسابهم الحالي في B2CORE، بدلاً من إنشاء تسجيل دخول منفصل.

تعمل B2CORE بوصفها موفر الهوية OpenID Connect (OIDC). يعيد تطبيقك (الطرف المعتمد) توجيه المستخدمين إلى B2CORE لتسجيل الدخول، ثم يتلقى رمزاً يثبت هويتهم. يصادق المستخدمون مرة واحدة باستخدام هوية B2CORE الخاصة بهم؛ ولا ينشئون حساباً منفصلاً لتطبيقك.

يتيح ذلك تسجيل الدخول الموحّد (SSO): يسجّل المستخدمون الدخول مرة واحدة باستخدام حساب B2CORE الخاص بهم ويحصلون على إمكانية الوصول إلى تطبيقك المتصل من دون تسجيل دخول منفصل.

تتطلب هذه الميزة رسوماً للإعداد لمرة واحدة. تواصل مع مدير حسابك أو فريق الدعم لدينا لتأكيد الرسوم والتوفر قبل طلب الوصول.

هل هذا هو الخيار المناسب؟

استخدم هذا إذا:

  • كان لديك تطبيق ويب أو جوال وتريد إضافة خيار "تسجيل الدخول باستخدام B2CORE".
  • كنت تريد دمج B2CORE اتحادياً في نظام هوية آخر تديره بالفعل (على سبيل المثال، إضافة B2CORE كموفر هوية داخل نطاق Keycloak الخاص بك).

هذا OAuth2 / OIDC قياسي — يمكن لأي مكتبة أو منصة هوية شائعة (Keycloak، Auth0، oidc-client-ts، openid-client، go-oidc، Passport، NextAuth، وغيرها) استخدامه، إذ إن كل ما يحتاجه العميل منشور في مستند اكتشاف واحد.

ما الذي تحتاج إلى تحديده قبل طلب الوصول

جهّز إجابات لهذه النقاط — سيسألك مدير حسابك عنها عند تسجيل تطبيقك:

العنصرما نحتاج إليه
اسم التطبيقاسم قصير وسهل القراءة للأشخاص (لسجلاتنا وأي شاشة موافقة).
معرّف URI لإعادة التوجيهعنوان URL الدقيق في تطبيقك الذي ينبغي أن يتلقى استجابة تسجيل الدخول، على سبيل المثال https://app.example.com/auth/callback. يجب أن يكون مطابقاً تماماً — فالبروتوكول والمضيف والمسار والشرطة المائلة الختامية كلها مهمة.
معرّف URI لإعادة التوجيه بعد تسجيل الخروجالمكان الذي يصل إليه المستخدمون بعد تسجيل الخروج، على سبيل المثال https://app.example.com/.
النطاقاتopenid مطلوب دائماً. أضف profile وemail إذا كنت بحاجة إلى اسم المستخدم/بريده الإلكتروني. أضف offline_access فقط إذا كنت بحاجة إلى رموز تحديث طويلة الأمد.

ما الذي ستتلقاه منا

بمجرد تسجيل تطبيقك، ستتلقى:

  • معرّف العميل (يطابق اسم التطبيق الذي قدمته).

  • سر العميل، يتم تسليمه عبر قناة آمنة. خزّنه بالطريقة نفسها التي تخزّن بها كلمة مرور قاعدة البيانات؛ فهو لا تنتهي صلاحيته، ولكن يمكن تدويره عند الطلب (راجع معلومات مفيدة).

  • عنوان URL لاكتشاف OIDC لمثيل B2CORE الخاص بك:

    https://<your-api-host>/srvsz/auth/hydra/v1/.well-known/openid-configuration

    وجّه مكتبة OIDC الخاصة بك إلى عنوان URL الوحيد هذا — وستكتشف نقاط نهاية التفويض والرمز وuserinfo وJWKS وتسجيل الخروج تلقائياً. لن تحتاج إلى تضمين أي من نقاط النهاية الفردية بشكل ثابت.

دمج تطبيقك

  1. اضبط مكتبة عميل OIDC باستخدام عنوان URL للاكتشاف ومعرّف العميل وسر العميل أعلاه.
  2. استخدم تدفق رمز التفويض مع PKCE إذا كانت مكتبتك تدعمه (موصى به لتطبيقات الويب والجوال على حد سواء).
  3. اطلب النطاقات التي تحتاجها فعلياً فقط — openid كحد أدنى، بالإضافة إلى profile وemail وoffline_access حسب الاقتضاء.
  4. للحصول على معلومات ملف المستخدم، استدعِ نقطة النهاية /userinfo (أو فك ترميز id_token) بدلاً من محاولة قراءة أي شيء من access_token — فرمز الوصول معتم وغير مخصص للتحليل.
  5. لتسجيل خروج مستخدم، أعد توجيهه إلى end_session_endpoint في مستند الاكتشاف مع id_token_hint وpost_logout_redirect_uri المسجل لديك.

هل تريد الدمج الاتحادّي بدلاً من دمج تطبيق مخصص؟ إذا كنت تضيف B2CORE كموفر هوية داخل منصة هوية أخرى تديرها (على سبيل المثال، Keycloak) بدلاً من تطبيق مخصص، فاضبطه كموفر OpenID Connect عام باستخدام عنوان URL للاكتشاف ومعرّف العميل وسر العميل أعلاه — تعتمد الخطوات الدقيقة على منصتك. تستخدم بعض المنصات عنوان URL ثابتاً للعودة مرتبطاً باسم مستعار للموفر تختاره (نقطة نهاية الوسيط في Keycloak هي أحد الأمثلة)؛ إذا كانت منصتك كذلك، فاتفق معنا على ذلك الاسم المستعار قبل أن نسجل معرّفات URI لإعادة التوجيه الخاصة بك، إذ يجب أن تتطابق تماماً.

معلومات مفيدة

تسجيل الخروج محلي فقط. تؤدي إعادة التوجيه إلى نقطة نهاية تسجيل الخروج إلى إنهاء الجلسة لتطبيقك؛ لكنها لا تسجّل خروج المستخدم من B2CORE نفسها أو من أي تطبيق آخر سجّل الدخول إليه. لا يوجد حالياً "تسجيل خروج من كل التطبيقات" عبر التطبيقات.

رموز التحديث تُستخدم لمرة واحدة. يعيد كل تحديث رمز تحديث جديداً يحل محل السابق — لا تعِد استخدام رمز قديم بعد التحديث.

يجب أن تتطابق معرّفات URI لإعادة التوجيه تماماً. أضف أي عناوين URL محلية/خاصة بالتطوير تحتاجها أثناء الاختبار إلى طلبك الأولي؛ إذ إن تغييرها لاحقاً يعني التواصل معنا مرة أخرى.

يتطلب تدوير سر العميل التواصل مع دعم B2Broker. توجد نافذة قصيرة بين إنشائنا للسر الجديد وتحديثك لتطبيقك، ستفشل خلالها عمليات تسجيل الدخول باستخدام السر القديم — لذا خطط للتبديل في ساعات انخفاض حركة المرور.

الاختبار بعد الإعداد

  1. شغّل تدفق تسجيل الدخول من تطبيقك (أو من منصة الهوية الخاصة بك، إذا كنت تستخدم الدمج الاتحادي) وتأكد من إعادة التوجيه عبر صفحة تسجيل الدخول في B2CORE.
  2. سجّل الدخول باستخدام حساب B2CORE حقيقي وتأكد من عودتك إلى تطبيقك وأنت مسجّل الدخول، مع معلومات المستخدم المتوقعة.
  3. إذا طلبت offline_access، فاختبر تحديث الرمز.
  4. اختبر تدفق تسجيل الخروج وتأكد من أنه يمسح جلسة تطبيقك.

الأسئلة / الدعم

تواصل مع مدير حساب B2Broker أو قناة الدعم، مع ذكر اسم وسيطك وتفاصيل التطبيق من الجدول أعلاه.

آخر تحديث في

في هذه الصفحة