تصف هذه المقالة كيفية استخدام واجهة برمجة التطبيقات SCIM من Cato لتوفير المستخدمين ومجموعات المستخدمين مع مقدم الهوية (IdP).
لمزيد من المعلومات حول تطبيقات SCIM المخصصة في مستأجر IdP، انظر إنشاء تطبيق SCIM مخصص لمستأجر IdP.
تطبيق Cato SCIM المخصص
لإستخدام تطبيق SCIM مخصص لتوفير المستخدمين ومجموعات المستخدمين لحسابك في Cato، إنشاء التطبيق في تطبيق إدارة Cato (CMA). بالإضافة إلى ذلك، تحتاج إلى مطابقة سمات SCIM من Cato مع السمات لمقدم الهوية (IdP).
إنشاء تطبيق SCIM مخصص في CMA
لاستخدام واجهة برمجة التطبيقات SCIM، يجب أولاً إنشاء تطبيق SCIM مخصص في CMA. يتيح لك هذا التطبيق دمج مزود الهوية الخاص بك (IdP) مع منصة Cato.
لإنشاء تطبيق SCIM مخصص في CMA:
من القائمة التنقل، اختر الوصول > خدمات الدليل.
تحت علامة تبويب SCIM، انقر على جديد.
أدخل اسمًا للتطبيق.
تحت المزود، حدد مخصص.
انقر على توليد الرمز ونسخ القيمة؛ لن تكون متاحة بعد الحفظ وستحتاج إلى إنشاء رمز جديد.
انقر فوق حفظ.
عند الاتصال بنقاط نهاية SCIM API الموضحة أدناه، ستحتاج إلى القيم التالية للمصادقة:
عنوان URL الأساسي لـ SCIM: يستخدم كنقطة أساس لطلبات واجهة برمجة التطبيقات
رمز حامل: يستخدم لمصادقة طلبات واجهة برمجة التطبيقات
سمات SCIM من Cato
هذه هي السمات SCIM لمستخدمي Cato ومجموعات المستخدمين التي تحتاج إلى مطابقتها مع السمات المقابلة لمقدم الهوية (IdP).
سمة مستخدم Cato | الوصف |
|---|---|
اسم المستخدم | اسم المستخدم للتوثيق |
user.firstName | الاسم الأول للمستخدم |
user.lastName | الاسم الأخير للمستخدم |
user.email | عنوان البريد الإلكتروني |
user.displayName | اسم العرض للمستخدم |
phoneNumbers[type eq "work"].value | رقم الهاتف للعمل للمستخدم (بما في ذلك البادئة) |
معرف خارجي | المعرف للمستخدم (يستخدم في الأحداث) |
سمة مجموعة مستخدمي Cato | وصف |
|---|---|
نشط | المستخدم معين ونشط في تطبيق SCIM |
displayName | اسم مجموعة المستخدمين |
members | المستخدمون الذين ينتمون إلى مجموعة المستخدمين |
معرف خارجي | رمز مجموعة المستخدمين (يستخدم في الأحداث) |
فهم واجهة برمجة التطبيقات Cato SCIM
مصادقة واجهة برمجة التطبيقات Cato SCIM
يقوم العملاء بالمصادقة لواجهة برمجة التطبيقات SCIM باستخدام مصادقة الرمز الحامل، كما هو معرفًا بواسطة RFC 6750. يجب أن تتضمن جميع طلبات واجهة برمجة التطبيقات رؤوس HTTP التالية:
التفويض: حامل <access_token>
نوع المحتوى: application/jsonيمكنك الحصول على رمز الوصول من تطبيق إدارة Cato.
المسار الأساسي لنقاط نهاية SCIM
تستخدم جميع نقاط نهاية واجهة برمجة التطبيقات SCIM المسار الأساسي التالي:
/scim/v2/{accountId}/{sourceId}معلمات المسار:
accountId(string): معرف فريد لحساب مستأجر Cato الخاص بكsourceId(integer): معرف مخصص من قبل Cato لتمثيل تكامل IdP محدد بشكل فريد
هذه المعلمات مطلوبة في جميع الطلبات ولكن تم حذفها من مسارات نقاط النهاية الفردية في هذه المقالة لتوفير الوقت.
إدارة المستخدمين
يتناول هذا القسم كيفية إنشاء وتحديث وحذف واسترجاع كيانات المستخدم SCIM باستخدام واجهة برمجة التطبيقات Cato SCIM.
إنشاء مستخدم
طريقة HTTP:POST /Users
الحقول المطلوبة:
userName(string): اسم مستخدم فريد (مثل عنوان البريد الإلكتروني)externalId(string): معرف خارجي من IdPactive(boolean): يجب أن يكونtrueلتفعيل المستخدم
ملحوظة:id يُرجع بواسطة خدمة SCIM ويجب استخدامه في المكالمات التالية لواجهة برمجة التطبيقات. externalId اختياري ولا يمكن استخدامه في مسارات واجهة برمجة التطبيقات.
الاستجابة:
الحالة:
201 تم الإنشاء
الأخطاء:
400 طلب سيء: مخطط غير صالح401 غير مصرح به409 تعارض: تكرارuserNameأوexternalId
تحديث مستخدم
PUT
طريقة HTTP:PUT /Users/{id}
الحقل المطلوب:
id: معرف SCIM الداخلي من Cato
الاستجابة:
الحالة:
200 تم
الأخطاء:
401 غير مصرح به404 لم يتم العثور على409 تعارض: تكرارuserNameأوexternalId
PATCH
طريقة HTTP:PATCH /Users/{id}
الاستجابة:
الحالة:
200 تم
الأخطاء:
400 طلب غير صالح: بنية غير صالحة أو خطأ في التصحيح401 غير مصرح به404 لم يتم العثور على409 تعارض: معرفات مكررة
حذف مستخدم
طريقة HTTP:DELETE /Users/{id}
استجابة:
الحالة:
204 لا يوجد محتوى
هذه عملية حذف ناعمة. يبقى المستخدم في النظام ولكن لا يتم إعادته في عمليات البحث.
الحصول على مستخدم بواسطة الرمز
طريقة HTTP:GET /Users/{id}
استجابة:
الحالة:
200 تم
الأخطاء:
401 غير مصرح404 غير موجود
بحث المستخدمين
طريقة HTTP:GET /Users
معايير الاستعلام:
filter: استعلام لتصفية المستخدمين (مثل،userName eq "user@domain.com")count(اختياري)startIndex(اختياري)
المرشحات المدعمة:
فقط
eqمدعومالسمات المدعومة:
userName,email,givenName,familyNameتُدعم المرشحات المركبة فقط بهذا الشكل:
filter=emails[type eq "work"] و email eq "bob@cato.com"
استجابة:
الحالة:
200 تم
الأخطاء:
401 غير مصرح
إدارة المجموعات
يشرح هذا القسم كيفية استخدام SCIM API لإنشاء، تحديث، حذف، واسترجاع الكيانات الجماعية في بيئة Cato الخاصة بك.
إنشاء مجموعة
طريقة HTTP:POST /Groups
استجابة:
الحالة:
201 تم الإنشاء
الأخطاء:
401 غير مصرح409 تعارض: تكرارdisplayNameأو معرف الكائن
تحديث مجموعة
PUT
طريقة HTTP:PUT /Groups/{id}
استجابة:
الحالة:
200 تم
الأخطاء:
401 غير مصرح404 غير موجود409 تعارض
PATCH
طريقة HTTP:PATCH /Groups/{id}
مسارات التصحيح المدعومة:
displayNamemembers
استجابة:
الحالة:
200 تم
الأخطاء:
400 طلب غير صالح: بنية غير صالحة أو خطأ في التصحيح401 غير مصرح404 غير موجود409 تعارض
حذف مجموعة
طريقة HTTP:DELETE /Groups/{id}
استجابة:
الحالة:
204 لا يوجد محتوى
مهم:
هذه عملية حذف نهائية. يتم إزالة المجموعة بشكل دائم.
الحصول على مجموعة حسب المعرف
طريقة HTTP:GET /Groups/{id}
معايير استعلام اختيارية:
excludeAttributes(مثال:members)
استجابة:
الحالة:
200 تم
الأخطاء:
401 غير مصرح404 غير موجود
البحث في المجموعات
طريقة HTTP:GET /Groups
معايير الاستعلام:
filter: فقطdisplayName eq "اسم المجموعة"مدعومcount(اختياري)startIndex(اختياري)
مرشحات مركبة أو مشغلات غير مدعومة تُرجع جميع المجموعات بدون تصفية.
استجابة:
الحالة:
200 تم
الأخطاء:
401 غير مصرح
الملاحظات
سلوك حقل المعرف عند الإنشاء
حقل
idاختياري في طلبات إنشاء المستخدم والمجموعة.إذا تم حذفه، يقوم SCIM بإنشاء معرف
idفريد.يجب دائمًا استخدام القيمة
idالمرجعة في مكالمات API اللاحقة.
مهم:
تجنب استخدام معرفات العميل إلا إذا كان ذلك مطلوبًا. معرف SCIM هو المعرف الرسمي.
سلوك الحذف
حذف المستخدم عبر
DELETE /Users/{id}يقوم بأداء حذف ناعم بتعيين حقلactiveإلىfalse. يمكن استرجاع المستخدم عبرGET /Users/{id}ولكنه مستبعد من نتائجGET /Users.حذف المجموعة عبر
DELETE /Groups/{id}يقوم بأداء حذف نهائي. يتم إزالة المجموعة بشكل دائم.