استخدام موفِّر هوية (idP) خارجي مع Edge Management API

المصادقة الأساسية هي إحدى طرق المصادقة عند إجراء طلبات إلى واجهة برمجة التطبيقات Edge management API. على سبيل المثال، يمكنك تقديم طلب curl التالي إلى واجهة برمجة تطبيقات إدارة Edge للوصول إلى للحصول على المعلومات حول مؤسستك:

curl -u USER_NAME:PASSWORD https://MS_IP_DNS:8080/v1/organizations/ORG_NAME

في هذا المثال، يتم استخدام الخيار curl -u لتمرير بيانات اعتماد مصادقة curl -u الأساسية. بدلاً من ذلك، يمكنك تمرير رمز OAuth2 المميز في العنوان Bearer لإجراء طلبات البيانات من واجهة برمجة التطبيقات لإدارة Edge، كما يبيِّن المثال التالي:

curl -H "Authorization: Bearer ACCESS_TOKEN" https://MS_IP_DNS:8080/v1/organizations/ORG_NAME

بعد تفعيل موفِّر هوية (idP) خارجي للمصادقة، يمكنك إيقاف الخيار "أساسي" المصادقة. في حال إيقاف مصادقة Basic، لن تعمل بعد ذلك جميع النصوص البرمجية (مثل Maven وshell وapigeetool) التي تعتمد على طلبات البيانات من واجهة برمجة التطبيقات لإدارة Edge التي تتيح مصادقة Basic. يجب تعديل أي طلبات بيانات من واجهات برمجة التطبيقات والنصوص البرمجية التي تستخدم المصادقة الأساسية لتمرير رموز الوصول OAuth2 في عنوان Bearer.

الحصول على الرموز المميّزة وإعادة تحميلها باستخدام get_token

تتبادل الأداة get_token بيانات اعتماد المصادقة الأساسية (وفي بعض الحالات رمز المرور) للرمز المميز للدخول إلى OAuth2 وإعادة التحميل. تقبل الأداة get_token بيانات الاعتماد وتعرض رمز دخول صالحًا. إذا كان من الممكن إعادة تحميل رمز مميّز، سيتم تحديث الأداة المساعدة وإعادته. إذا انتهت صلاحية الرمز المميّز لإعادة التحميل، سيظهر لطلب بيانات اعتماد المستخدم.

تخزِّن الأداة get_token الرموز المميّزة على القرص، وتصبح جاهزة للاستخدام عند الحاجة. ويؤدي ذلك أيضًا إلى طباعة رمز دخول صالح إلى stdout. من هناك، يمكنك استخدام إضافة متصفح مثل Postman أو تضمينها في متغير بيئة للاستخدام في curl.

للحصول على رمز الدخول OAuth2 لإجراء طلبات البيانات من واجهة برمجة التطبيقات لإدارة Edge:

  1. تنزيل حزمة sso-cli:
    curl http://EDGE_SSO_IP_DNS:9099/resources/scripts/sso-cli/ssocli-bundle.zip -o "ssocli-bundle.zip"

    حيث EDGE_SSO_IP_DNS هو عنوان IP أو اسم نظام أسماء النطاقات للجهاز الذي يستضيف وحدة الدخول المُوحَّد (SSO) في Apigee في حال ضبط بروتوكول أمان طبقة النقل (TLS) في الدخول المُوحَّد (SSO) في Apigee، استخدِم https وطريقة رقم منفذ بروتوكول أمان طبقة النقل (TLS)

  2. عليك فكّ ضغط الحزمة ssocli-bundle.zip، كما يبيِّن المثال التالي:
    unzip ssocli-bundle.zip
  3. ثبِّت get_token في /usr/local/bin، كما هو موضّح في المثال التالي:
    ./install -b PATH

    يحدّد الخيار -b موقعًا جغرافيًا مختلفًا.

  4. اضبط متغيّر البيئة SSO_LOGIN_URL على عنوان URL لتسجيل الدخول في ما يلي: النموذج:
    export SSO_LOGIN_URL="http://EDGE_SSO_IP_DNS:9099"

    حيث يكون EDGE_SSO_IP_DNS هو عنوان IP للجهاز الذي يستضيف الدخول المُوحَّد (SSO) في Apigee واحدة. في حال ضبط بروتوكول أمان طبقة النقل (TLS) في الدخول المُوحَّد (SSO) في Apigee، استخدِم https ومنفذ بروتوكول أمان طبقة النقل الصحيحَين. الصف.

  5. (SAML فقط) في المتصفّح، انتقِل إلى عنوان URL التالي للحصول على عنوان URL لمرة واحدة رمز المرور:
    http://EDGE_SSO_IP_DNS:9099/passcode

    في حال ضبط بروتوكول أمان طبقة النقل (TLS) في الدخول المُوحَّد (SSO) في Apigee، استخدِم https ومنفذ بروتوكول أمان طبقة النقل الصحيحَين. الصف.

    يعرض هذا الطلب رمز مرور لمرّة واحدة يظل صالحًا إلى أن تُعيد تحميل عنوان URL هذا يمكنك الحصول على رمز مرور جديد أو استخدام رمز المرور مع "get_token" لإنشاء .

    وتجدر الإشارة إلى أنّه لا يمكنك استخدام رمز مرور إلا عند المصادقة باستخدام موفِّر الهوية (idP) عبر SAML. لا يمكنك استخدام رمز مرور للمصادقة باستخدام موفِّر هوية (idP) لبروتوكول LDAP.

  6. استدعِ get_token للحصول على رمز الدخول OAuth2، كما يبيِّن المثال التالي:
    get_token -u EMAIL_ADDRESS

    حيث EMAIL_ADDRESS هو عنوان البريد الإلكتروني لمستخدم Edge.

    (SAML فقط) أدخِل رمز المرور في سطر الأوامر بالإضافة إلى البريد الإلكتروني كما يبيِّن المثال التالي:

    get_token -u EMAIL_ADDRESS -p PASSCODE

    تحصل الأداة get_token على رمز الدخول عبر OAuth2، وتطبعه على الشاشة، وتكتبه مع الرمز المميّز لإعادة التحميل في ~/.sso-cli.

  7. نقْل رمز الدخول إلى استدعاء واجهة برمجة التطبيقات لإدارة Edge على أنه العنوان Bearer، كما يبيِّن المثال التالي:
    curl -H "Authorization: Bearer ACCESS_TOKEN"
      https://MS_IP:8080/v1/organizations/ORG_NAME
  8. بعد الحصول على رمز دخول جديد لأول مرة، يمكنك الحصول على رمز الدخول وتمريره إلى طلب بيانات من واجهة برمجة التطبيقات في أمر واحد، كما يبيِّن المثال التالي:
    header=`get_token` && curl -H "Authorization: Bearer $header"
      https://MS_IP:8080/v1/o/ORG_NAME

    باستخدام نموذج الأمر هذا، إذا انتهت صلاحية رمز الدخول، فسيتم تلقائيًا حتى انتهاء صلاحية الرمز المميز للتحديث.

(SAML فقط) بعد انتهاء صلاحية الرمز المميّز لإعادة التحميل، يطالبك get_token برمز مرور جديد. إِنْتَ الانتقال إلى عنوان URL الموضّح أعلاه في الخطوة 3 وإنشاء رمز مرور جديد قبل إنشاء رمز دخول جديد عبر OAuth.

استخدم واجهة برمجة تطبيقات الإدارة للحصول على التحديثات وإعادة تحميلها رموز مميزة

يوضّح مقالة استخدام أمان OAuth2 مع واجهة برمجة التطبيقات Apigee Edge management API كيفية استخدام واجهة برمجة التطبيقات Edge management API للحصول على الرموز المميّزة وإعادة تحميلها. يمكنك أيضًا استخدام طلبات بيانات Edge API للحصول على الرموز المميّزة التي تم إنشاؤها من تأكيدات SAML.

الاختلاف الوحيد بين طلبات البيانات من واجهة برمجة التطبيقات الموثقة في استخدام OAuth2 الأمان باستخدام واجهة برمجة التطبيقات Apigee Edge management API هو أن عنوان URL للمكالمة يجب أن يشير إلى اسم المنطقة. بالإضافة إلى ذلك، لإنشاء رمز الدخول الأولي باستخدام موفِّر هوية (idP) SAML، يجب تضمين رمز المرور، كما هو موضح في الخطوة 3 من الإجراء أعلاه.

للحصول على التفويض، يجب تمرير بيانات اعتماد عميل OAuth2 محجوزة في الرأس Authorization . تطبع المكالمة رموز الدخول وإعادة التحميل على الشاشة.

الحصول على رمز الدخول

(LDAP) استخدام طلب البيانات من واجهة برمجة التطبيقات التالي لإنشاء الوصول الأولي وإعادة التحميل الرموز المميزة:

curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
  -H "accept: application/json;charset=utf-8" \
  -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \
  http://EDGE_SSO_IP_DNS:9099/oauth/token -s \
  -d 'grant_type=password&username=USER_EMAIL&password=USER_PASSWORD'

(SAML) استخدام طلب البيانات من واجهة برمجة التطبيقات التالي لإنشاء الوصول الأولي وإعادة التحميل الرموز المميزة:

curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
  -H "accept: application/json;charset=utf-8" \
  -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \
  https://EDGE_SSO_IP_DNS:9099/oauth/token -s \
  -d 'grant_type=password&response_type=token&passcode=PASSCODE'

تجدر الإشارة إلى أن المصادقة باستخدام موفِّر هوية (idP) SAML تتطلب رمز مرور مؤقت، في حين أن موفِّر الهوية (idP) في LDAP لا.

إعادة تحميل رمز الدخول

لإعادة تحميل رمز الدخول لاحقًا، يمكنك استخدام المكالمة التالية التي تتضمّن الرمز المميّز لإعادة التحميل:

curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \
  -H "Accept: application/json;charset=utf-8" \
  -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \
  https://EDGE_SSO_IP_DNS:9099/oauth/token \
  -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'