إدارة المستخدمين في Azure Data Manager for Energy

في هذه المقالة، ستتعلم كيفية إدارة المستخدمين وعضوياتهم في مجموعات OSDU في Azure Data Manager for Energy. تستخدم واجهات برمجة تطبيقات الاستحقاقات لإضافة مستخدمين أو إزالتهم إلى مجموعات OSDU وللتحقق من الاستحقاقات عندما يحاول المستخدم الوصول إلى خدمات أو بيانات OSDU. لمزيد من المعلومات حول مفاهيم مجموعة OSDU، راجع الاستحقاقات.

المتطلبات الأساسية

إحضار معرف الكائن

معرف كائن Azure (OID) هو OID مستخدم Microsoft Entra.

  1. ابحث عن OID للمستخدمين أولا. إذا كنت تدير وصول أحد التطبيقات، فيجب عليك العثور على معرف التطبيق (أو معرف العميل) واستخدامه بدلا من OID.

  2. أدخل OID للمستخدمين (أو معرف التطبيق أو العميل إذا كانت إدارة الوصول لأحد التطبيقات) كمعلمات في الاستدعاءات إلى واجهة برمجة تطبيقات الاستحقاقات الخاصة ب Azure Data Manager لمثيل الطاقة. لا يمكنك استخدام معرف البريد الإلكتروني للمستخدم في المعلمة ويجب استخدام معرف الكائن.

    لقطة شاشة تظهر العثور على معرف الكائن من معرف Microsoft Entra.

    لقطة شاشة تظهر العثور على OID من ملف التعريف.

إضافة المستخدمين لأول مرة في قسم بيانات جديد

  1. لإضافة المسؤول الأول إلى قسم بيانات جديد لمثيل Azure Data Manager for Energy، استخدم رمز الوصول المميز ل OID الذي تم استخدامه لتوفير المثيل.

  2. client-id احصل على الرمز المميز للوصول باستخدام إنشاء رمز مميز للوصول إلى معرف العميل.

    إذا حاولت استخدام الرمز المميز للوصول الخاص بك مباشرة لإضافة الاستحقاقات، فإنه ينتج عنه خطأ 401. client-id يجب استخدام الرمز المميز للوصول لإضافة المجموعة الأولى من المستخدمين في النظام. يمكن لهؤلاء المستخدمين (مع وصول المسؤول) بعد ذلك إدارة المزيد من المستخدمين برمز الوصول المميز الخاص بهم.

  3. client-id استخدم الرمز المميز للوصول للقيام بالخطوات التالية باستخدام الأوامر الموضحة في الأقسام التالية:

    1. أضف المستخدم إلى users@<data-partition-id>.<domain> مجموعة OSDU مع دور OWNER.
    2. أضف المستخدم إلى users.datalake.ops@<data-partition-id>.<domain> مجموعة OSDU مع دور OWNER لمنح حق الوصول إلى جميع مجموعات الخدمة.
    3. أضف المستخدم إلى users.data.root@<data-partition-id>.<domain> مجموعة OSDU مع دور OWNER لمنح حق الوصول إلى جميع مجموعات البيانات.
  4. يصبح المستخدم مسؤول قسم البيانات. يمكن للمسؤول بعد ذلك إضافة المزيد من المستخدمين أو إزالتهم إلى مجموعات الاستحقاق المطلوبة:

    1. احصل على رمز المصادقة المميز للمسؤول باستخدام إنشاء رمز مميز لوصول المستخدم وباستخدام نفس client-id القيم و client-secret .
    2. احصل على مجموعة OSDU، مثل service.legal.editor@<data-partition-id>.<domain>، التي تريد إضافة المزيد من المستخدمين إليها باستخدام رمز الوصول المميز للمسؤول.
    3. أضف المزيد من المستخدمين إلى مجموعة OSDU هذه باستخدام رمز الوصول المميز للمسؤول.

لمعرفة المزيد حول مجموعات نظام تمهيد OSDU، راجع هنا.

الحصول على قائمة بجميع المجموعات التي لديك حق الوصول إليها في قسم البيانات

قم بتشغيل الأمر curl التالي في Azure Cloud Shell للحصول على جميع المجموعات المتوفرة لك أو التي لديك حق الوصول إليها في قسم البيانات المحدد من Azure Data Manager لمثيل الطاقة.

    curl --location --request GET "https://<adme-url>/api/entitlements/v2/groups/" \
    --header 'data-partition-id: <data-partition>' \
    --header 'Authorization: Bearer <access_token>'

إضافة أعضاء إلى مجموعة OSDU في قسم بيانات

  1. قم بتشغيل الأمر curl التالي في Azure Cloud Shell لإضافة المستخدمين إلى مجموعة المستخدمين باستخدام خدمة الاستحقاق.

  2. القيمة التي سيتم إرسالها للمعلمة email هي OID للمستخدم وليس عنوان البريد الإلكتروني للمستخدم.

        curl --location --request POST 'https://<adme-url>/api/entitlements/v2/groups/<group-name>@<data-partition-id>.<domain>/members' \
        --header 'data-partition-id: <data-partition-id>' \
        --header 'Authorization: Bearer <access_token>' \
        --header 'Content-Type: application/json' \
        --data-raw '{
                        "email": "<Object_ID_1>",
                        "role": "MEMBER"
                    },
                   {
                        "email": "<Object_ID_2>",
                        "role": "MEMBER"
                    }
                   '
    

    نموذج طلب للمستخدمين مجموعة OSDU

    ضع في اعتبارك Azure Data Manager لمثيل الطاقة المسمى medstest بقسم بيانات يسمى dp1.

        curl --location --request POST 'https://medstest.energy.azure.com/api/entitlements/v2/groups/users@medstest-dp1.dataservices.energy/members' \
        --header 'data-partition-id: medstest-dp1' \
        --header 'Authorization: Bearer abcdefgh123456.............' \
        --header 'Content-Type: application/json' \
        --data-raw '{
                        "email": "90e0d063-2f8e-4244-860a-XXXXXXXXXX",
                        "role": "MEMBER"
                    }'
    

    نموذج الاستجابة

        {
            "email": "90e0d063-2f8e-4244-860a-XXXXXXXXXX",
            "role": "MEMBER"
        }
    

    نموذج طلب لمجموعة OSDU لمحرر الخدمة القانونية

        curl --location --request POST 'https://medstest.energy.azure.com/api/entitlements/v2/groups/service.legal.editor@medstest-dp1.dataservices.energy/members' \
        --header 'data-partition-id: medstest-dp1' \
        --header 'Authorization: Bearer abcdefgh123456.............' \
        --header 'Content-Type: application/json' \
        --data-raw '{
                        "email": "90e0d063-2f8e-4244-860a-XXXXXXXXXX",
                        "role": "MEMBER"
                    }'
    

    هام

    معرف التطبيق هو المالك الافتراضي لجميع المجموعات.

    لقطة شاشة تعرض معرف التطبيق في معرف Microsoft Entra.

الحصول على مجموعات OSDU لمستخدم معين في قسم بيانات

  1. قم بتشغيل الأمر curl التالي في Azure Cloud Shell للحصول على جميع المجموعات المقترنة بالمستخدم.

        curl --location --request GET 'https://<adme-url>/api/entitlements/v2/members/<obejct-id>/groups?type=none' \
        --header 'data-partition-id: <data-partition-id>' \
        --header 'Authorization: Bearer <access_token>'
    

    نموذج الطلب

    ضع في اعتبارك Azure Data Manager لمثيل الطاقة المسمى medstest بقسم بيانات يسمى dp1.

        curl --location --request GET 'https://medstest.energy.azure.com/api/entitlements/v2/members/90e0d063-2f8e-4244-860a-XXXXXXXXXX/groups?type=none' \
        --header 'data-partition-id: medstest-dp1' \
        --header 'Authorization: Bearer abcdefgh123456.............'
    

    نموذج الاستجابة

        {
        "desId": "90e0d063-2f8e-4244-860a-XXXXXXXXXX",
        "memberEmail": "90e0d063-2f8e-4244-860a-XXXXXXXXXX",
        "groups": [
            {
            "name": "users",
            "description": "Datalake users",
            "email": "users@medstest-dp1.dataservices.energy"
            },
            {
            "name": "service.search.user",
            "description": "Datalake Search users",
            "email": "service.search.user@medstest-dp1.dataservices.energy"
            }
        ]
        }
    

إزالة عضو من مجموعة في قسم بيانات

  1. قم بتشغيل الأمر curl التالي في Azure Cloud Shell لإزالة عضو معين من مجموعة.

  2. إذا حاولت واجهة برمجة التطبيقات إزالة عضو من users@ المجموعة ولكن العضو هو بالفعل جزء من مجموعات أخرى، فسيفشل طلب واجهة برمجة التطبيقات. لإزالة عضو من users@ المجموعة وبالتالي من قسم البيانات، يمكنك استخدام الأمر Delete.

        curl --location --request DELETE 'https://<adme-url>/api/entitlements/v2/groups/<group-id>/members/<object-id>' \
        --header 'data-partition-id: <data-partition-id>' \
        --header 'Authorization: Bearer <access_token>'
    

حذف مستخدم معين من جميع المجموعات في قسم البيانات

  1. قم بتشغيل الأمر curl التالي في Azure Cloud Shell لحذف مستخدم معين من قسم بيانات معين.

  2. لا تحذف مالك مجموعة ما لم يكن لديك مالك آخر يمكنه إدارة المستخدمين في تلك المجموعة. على الرغم من أن users.data.root هو المالك الافتراضي والدائم لجميع سجلات البيانات.

        curl --location --request DELETE 'https://<adme-url>/api/entitlements/v2/members/<object-id>' \
        --header 'data-partition-id: <data-partition-id>' \
        --header 'Authorization: Bearer <access_token>'
    

    نموذج الطلب

    ضع في اعتبارك Azure Data Manager لمثيل الطاقة المسمى medstest بقسم بيانات يسمى dp1.

        curl --location --request DELETE 'https://medstest.energy.azure.com/api/entitlements/v2/members/90e0d063-2f8e-4244-860a-XXXXXXXXXX' \
        --header 'data-partition-id: medstest-dp1' \
        --header 'Authorization: Bearer abcdefgh123456.............'
    

    نموذج الاستجابة

    لا يوجد إخراج للاستجابة الناجحة.

الخطوات التالية

بعد إضافة مستخدمين إلى المجموعات، يمكنك:

يمكنك أيضا استيعاب البيانات في Azure Data Manager لمثيل الطاقة: