عند استخدام IDP خارجي مع Edge API، تُعرف العملية التي تستخدمها للحصول على رموز مميزة للوصول والتحديث من تفاعل موفِّر الهوية باسم تدفق رمز المرور. في مسار رمز المرور، يمكنك استخدام متصفّح للحصول على رمز مرور صالح لمرة واحدة، ثم استخدامه للحصول على رموز مميّزة لبروتوكول OAuth2.
ومع ذلك، قد تتيح بيئة التطوير إمكانية التشغيل الآلي لمهام التطوير الشائعة، مثل التشغيل الآلي للاختبار أو التكامل المستمر/التسليم المستمر. لإجراء هذه المهام آليًا عند تفعيل موفّر خدمة هوية خارجي، تحتاج إلى طريقة للحصول على رموز OAuth2 المميزة وتحديثها بدون الحاجة إلى نسخ/لصق رمز مرور من متصفّح.
يتيح Edge إنشاء الرموز المميزة تلقائيًا من خلال استخدام حسابات الآلة ضمن المؤسسات التي تم تفعيل موفّر IDP فيها. يمكن لمستخدم الجهاز الحصول على رموز OAuth2 المميزة بدون الحاجة إلى تحديد رمز مرور. وهذا يعني أنّه يمكنك برمجة عملية الحصول على رموز OAuth2 المميزة وتحديثها بالكامل باستخدام Edge Management API.
هناك طريقتان لإنشاء مستخدم آلي لمؤسسة مفعَّل فيها موفّر خدمة تحديد الهوية:
يتم وصف كل طريقة من هذه الطرق في الأقسام التالية.
لا يمكنك إنشاء مستخدم آلي للمؤسسات التي لم تفعّل موفِّر هوية خارجيًا.
إنشاء مستخدم آلي باستخدام apigee-ssoadminapi.sh
استخدِم الأداة المساعدة apigee-ssoadminapi.sh
لإنشاء مستخدم آلي ضمن مؤسسة مفعَّلة فيها خدمة إدارة الهوية والمصادقة. لمزيد من المعلومات، راجِع استخدام
apigee-ssoadminapi.sh. يمكنك إنشاء مستخدم آلي واحد تستخدمه جميع مؤسساتك، أو إنشاء مستخدم آلي منفصل لكل مؤسسة.
يتم إنشاء مستخدم الآلة وتخزينه في Edge datastore، وليس في موفّر خدمة تحديد الهوية (IDP). وبالتالي، لن تكون مسؤولاً عن الحفاظ على مستخدم الجهاز من خلال استخدام واجهة مستخدم Edge وواجهة برمجة التطبيقات لإدارة Edge.
عند إنشاء مستخدم الجهاز، يجب تحديد عنوان بريد إلكتروني وكلمة مرور. بعد إنشاء حساب مستخدم الجهاز، عليك تخصيصه لمؤسسة واحدة أو أكثر.
لإنشاء مستخدم آلي باستخدام apigee-ssoadminapi.sh، اتّبِع الخطوات التالية:
- استخدِم الأمر
apigee-ssoadminapi.shالتالي لإنشاء مستخدم الجهاز:apigee-ssoadminapi.sh saml machineuser add --admin SSO_ADMIN_NAME \ --secret SSO_ADMIN_SECRET --host Edge_SSO_IP_or_DNS \ -u machine_user_email -p machine_user_password
المكان:
- SSO_ADMIN_NAME هو اسم مستخدم المشرف الذي تحدّده السمة
SSO_ADMIN_NAMEفي ملف الإعداد المستخدَم لضبط وحدة Apigee SSO. القيمة التلقائية هيssoadmin. - SSO_ADMIN_SECRET هي كلمة مرور المشرف كما هو محدّد في الخاصية
SSO_ADMIN_SECRETفي ملف الإعداد.في هذا المثال، يمكنك حذف قيمتَي
--portو--sslلأنّ الوحدةapigee-ssoتستخدم القيم التلقائية 9099 لـ--portوhttp لـ--ssl. إذا كان التثبيت لا يستخدم هذه القيم التلقائية، حدِّدها حسب الاقتضاء.
- SSO_ADMIN_NAME هو اسم مستخدم المشرف الذي تحدّده السمة
- سجِّل الدخول إلى واجهة مستخدم Edge وأضِف عنوان البريد الإلكتروني لمستخدم الجهاز إلى مؤسستك، ثم امنح مستخدم الجهاز الدور اللازم. لمزيد من المعلومات، يُرجى الاطّلاع على إضافة مستخدمين على مستوى العالم.
إنشاء مستخدم آلي باستخدام واجهة برمجة تطبيقات إدارة Edge
يمكنك إنشاء مستخدم آلي باستخدام Edge Management API بدلاً من استخدام الأداة المساعدة
apigee-ssoadminapi.sh.
لإنشاء مستخدم آلي باستخدام Management API، اتّبِع الخطوات التالية:
- استخدِم الأمر
curlالتالي للحصول على رمز مميّز للمستخدمssoadmin، وهو اسم المستخدم لحساب المشرف فيapigee-sso:curl "http://Edge_SSO_IP_DNS:9099/oauth/token" -i -X POST \ -H 'Accept: application/json' / -H 'Content-Type: application/x-www-form-urlencoded' \ -d "response_type=token" -d "grant_type=client_credentials" \ --data-urlencode "client_secret=SSO_ADMIN_SECRET" \ --data-urlencode "client_id=ssoadmin"
حيث SSO_ADMIN_SECRET هي كلمة مرور المشرف التي ضبطتها عند تثبيت
apigee-ssoكما هو محدّد في السمةSSO_ADMIN_SECRETفي ملف الإعداد.يعرض هذا الأمر رمزًا مميزًا تحتاج إليه لإجراء المكالمة التالية.
- استخدِم الأمر
curlالتالي لإنشاء مستخدم الجهاز، مع تمرير الرمز المميز الذي تلقّيته في الخطوة السابقة:curl "http://edge_sso_IP_DNS:9099/Users" -i -X POST \ -H "Accept: application/json" -H "Content-Type: application/json" \ -d '{"userName" : "machine_user_email", "name" : {"formatted":"DevOps", "familyName" : "last_name", "givenName" : "first_name"}, "emails" : [ {"value" : "machine_user_email", "primary" : true } ], "active" : true, "verified" : true, "password" : "machine_user_password" }' \ -H "Authorization: Bearer token"ستحتاج إلى كلمة مرور مستخدم الجهاز في خطوات لاحقة.
- سجِّل الدخول إلى واجهة مستخدم Edge.
- أضِف عنوان البريد الإلكتروني لمستخدم الآلة إلى مؤسساتك، وامنح مستخدم الآلة الدور اللازم. لمزيد من المعلومات، يُرجى الاطّلاع على إضافة مستخدمين على مستوى العالم.
الحصول على رموز مميزة لمستخدمي الأجهزة وإعادة تحميلها
استخدِم Edge API للحصول على رموز OAuth2 وإعادة تحميلها من خلال تمرير بيانات اعتماد مستخدم الجهاز بدلاً من رمز مرور.
للحصول على رموز OAuth2 المميزة لمستخدم الجهاز، اتّبِع الخطوات التالية:
- استخدِم طلب بيانات من واجهة برمجة التطبيقات التالي لإنشاء رموز الدخول والرمز المميز لإعادة التحميل الأولية:
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=m_user_email&password=m_user_password'
احفظ الرموز المميزة لاستخدامها لاحقًا.
- مرِّر رمز الدخول إلى طلب بيانات من واجهة برمجة التطبيقات لإدارة Edge كعنوان
Bearer، كما هو موضّح في المثال التالي:curl -H "Authorization: Bearer access_token" \ http://MS_IP_DNS:8080/v1/organizations/org_name
حيث org_name هو اسم المؤسسة التي تضم مستخدم الجهاز.
- لتحديث الرمز المميز للدخول لاحقًا، استخدِم طلب البيانات التالي الذي يتضمّن الرمز المميز لإعادة التحميل:
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 \ -d 'grant_type=refresh_token&refresh_token=refreshToken'