الإصدار 4.17.09 من Edge for Private Cloud
"المصادقة الأساسية" هي إحدى طرق المصادقة عند إجراء طلبات إلى واجهة برمجة التطبيقات Edge Management API. على سبيل المثال، يمكنك إرسال طلب cURL التالي إلى واجهة برمجة التطبيقات Edge Management API للوصول إلى معلومات عن مؤسستك:
curl -u userName:pWord https://ms_IP_DNS:8080/v1/organizations/orgName
في هذا المثال، يمكنك استخدام الخيار cURL -u لتمرير بيانات اعتماد المصادقة الأساسية. يمكنك بدلاً من ذلك تمرير رمز OAuth2 المميّز في عنوان Bearer لإجراء طلبات بيانات من Edge Management API. على سبيل المثال:
curl -H "Authorization: Bearer <access_token>" https://ms_IP_DNS:8080/v1/organizations/orgName
بعد تفعيل SAML، يمكنك إيقاف المصادقة الأساسية اختياريًا. في حال إيقاف المصادقة الأساسية، لن تعمل جميع النصوص البرمجية (نصوص Maven البرمجية ونصوص shell البرمجية وapigeetool وما إلى ذلك) التي تعتمد على طلبات بيانات من واجهة برمجة التطبيقات لإدارة Edge التي تتيح المصادقة الأساسية. يجب تعديل أي طلبات بيانات من واجهة برمجة التطبيقات ونصوص برمجية تستخدم "المصادقة الأساسية" لتمرير رموز الدخول المميزة لبروتوكول OAuth2 في عنوان Bearer.
استخدام get_token للحصول على الرموز المميّزة وإعادة تحميلها
تتبادل الأداة المساعدة get_token بيانات اعتماد المصادقة الأساسية ورمز المرور للوصول إلى OAuth2 والرمز المميز لإعادة التحميل. تقبل الأداة المساعدة get_token بيانات الاعتماد الخاصة بك وتطبع رمز دخول صالحًا. إذا كان من الممكن إعادة تحميل الرمز المميّز، ستتم إعادة تحميله
وطباعته. في حال انتهاء صلاحية الرمز المميز لإعادة التحميل، سيطلب منك إدخال بيانات اعتماد المستخدم.
تخزّن الأداة المساعدة get_token الرموز المميّزة على القرص، وتكون جاهزة للاستخدام عند الحاجة. وتطبع أيضًا رمز دخول صالحًا إلى stdout.
بعد ذلك، يمكنك استخدام Postman أو تضمين الرمز في متغيّر بيئة لاستخدامه في curl.
يوضّح الإجراء التالي كيفية استخدام get_token للحصول على رمز OAuth2 مميز للدخول من أجل
إجراء طلبات بيانات من واجهة برمجة تطبيقات إدارة Edge:
- نزِّل حزمة
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) في Edge. إذا ضبطت بروتوكول أمان طبقة النقل (TLS) على Edge SSO، استخدِم
httpsورقم منفذ TLS الصحيح. - فك ضغط حزمة
ssocli-bundle.zip:unzip ssocli-bundle.zip
- تثبيت "
get_token" في/usr/local/bin:
./install
استخدِم الخيار
-bلتحديد موقع جغرافي مختلف:./install -b path
- اضبط متغيّر البيئة
SSO_LOGIN_URLعلى عنوان URL لصفحة تسجيل الدخول، بالصيغة التالية:export SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099"
حيث edge_sso_IP_DNS هو عنوان IP لاسم نظام أسماء النطاقات للجهاز الذي يستضيف وحدة الدخول الموحّد (SSO) في Edge. إذا ضبطت بروتوكول أمان طبقة النقل (TLS) على Edge SSO، استخدِم
httpsورقم منفذ TLS الصحيح. - في المتصفّح، انتقِل إلى عنوان URL التالي للحصول على رمز مرور صالح لمرة واحدة:
http://edge_sso_IP_DNS:9099/passcode
إذا ضبطت بروتوكول أمان طبقة النقل (TLS) على Edge SSO، استخدِم
httpsورقم منفذ بروتوكول أمان طبقة النقل (TLS) الصحيح.يعرض عنوان URL هذا رمز مرور صالحًا لمرة واحدة يظل صالحًا إلى أن تتم إعادة تحميل عنوان URL هذا للحصول على رمز مرور جديد، أو إلى أن يتم استخدام رمز المرور مع
get_tokenلإنشاء رمز مميّز للوصول. - استدعاء
get_tokenللحصول على رمز الدخول عبر OAuth2:
get_token -u emailAddress
حيث emailAddress هو عنوان البريد الإلكتروني لمستخدم Edge. سيُطلب منك إدخال رمز المرور الصالح لمرة واحدة الذي حصلت عليه في الخطوة 3:
One Time Code ( Get one at https://edge_sso_IP.com/passcode ) Enter the passcode if SAML is enabled or press ENTER:أدخِل رمز المرور. تحصل الأداة المساعدة
get_tokenعلى رمز الدخول المميز لبروتوكول OAuth2، وتطبعه على الشاشة، وتكتبه هو والرمز المميز لإعادة التحميل في~/.sso-cli.يمكنك إدخال رمز المرور في سطر الأوامر باستخدام أمر
get_tokenفي النموذج:get_token -u emailAddress -p passcode
- مرِّر رمز الدخول إلى طلب بيانات من واجهة برمجة تطبيقات إدارة Edge كعنوان Bearer:
curl -H "Authorization: Bearer access_token" https://ms_IP:8080/v1/organizations/orgName
بعد الحصول على رمز دخول جديد للمرة الأولى، يمكنك الحصول على رمز الدخول وتمريره إلى طلب بيانات من واجهة برمجة التطبيقات في أمر واحد، كما هو موضّح أدناه:
header=`get_token` && curl -H "Authorization: Bearer $header" https://ms_IP:8080/v1/o/orgName
باستخدام هذا النموذج من الأمر، إذا انتهت صلاحية رمز الدخول، تتم إعادة تحميله تلقائيًا إلى أن تنتهي صلاحية الرمز المميز لإعادة التحميل.
بعد انتهاء صلاحية الرمز المميز لإعادة التحميل، يطلب منك get_token رمز مرور جديدًا. يجب
الانتقال إلى عنوان URL الموضّح أعلاه في الخطوة 3 وإنشاء رمز مرور جديد قبل أن تتمكّن من إنشاء
رمز دخول جديد لبروتوكول OAuth
استخدام Management API للحصول على الرموز المميّزة وإعادة تحميلها
استخدام أمان OAuth2 مع واجهة برمجة تطبيقات إدارة Apigee Edge يحتوي على تعليمات توضّح كيفية استخدام واجهة برمجة تطبيقات إدارة Edge للحصول على الرموز المميزة وإعادة تحميلها. يمكنك أيضًا استخدام طلبات بيانات من واجهة برمجة التطبيقات في Edge للرموز المميّزة التي تم إنشاؤها من تأكيدات SAML.
الفرق الوحيد بين طلبات البيانات من واجهة برمجة التطبيقات الموضّحة في استخدام أمان OAuth2 مع واجهة برمجة التطبيقات لإدارة Apigee Edge هو أنّ عنوان URL للطلب يجب أن يشير إلى اسم منطقتك. بالإضافة إلى ذلك، لإنشاء رمز الدخول الأولي، يجب تضمين رمز المرور، كما هو موضّح في الخطوة 3 من الإجراء أعلاه.
على سبيل المثال، استخدِم طلب البيانات التالي من واجهة برمجة التطبيقات لإنشاء الرمز المميز الأوّلي للوصول والرمز المميز لإعادة التحميل:
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'
للحصول على التفويض، يجب تمرير بيانات اعتماد عميل OAuth2 المحجوزة في العنوان Authorization. يطبع الطلب رمزَي الدخول والرمز المميز لإعادة التحميل على الشاشة.
لإعادة تحميل رمز الدخول لاحقًا، استخدِم الطلب التالي الذي يتضمّن الرمز المميز لإعادة التحميل:
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=refreshToken'