Freigeben über


Verwalten von Benutzern und Benutzerinnen in Azure Data Manager for Energy

In diesem Artikel erfahren Sie, wie Sie Benutzer und Benutzerinnen und ihre Mitgliedschaften in OSDU-Gruppen in Azure Data Manager for Energy verwalten. Berechtigungs-APIs werden verwendet, um Benutzer und Benutzerinnen zu OSDU-Gruppen hinzuzufügen oder daraus zu entfernen und die Berechtigungen zu überprüfen, wenn der Benutzer oder die Benutzerin versucht, auf die OSDU-Dienste oder -Daten zuzugreifen. Weitere Informationen über OSDU-Gruppenkonzepte finden Sie unter Berechtigungen.

Voraussetzungen

Fetchen der Objekt-ID

Die Azure-Objekt-ID (OID) ist der Microsoft Entra-Benutzer OID.

  1. Suchen Sie zuerst die OID der Benutzer und Benutzerinnen. Wenn Sie den Zugriff einer Anwendung verwalten, müssen Sie die Anwendungs-ID (oder Client-ID) anstelle der OID suchen und verwenden.

  2. Geben Sie die OID der Benutzer und Benutzerinnen (oder die Anwendung oder Client-ID beim Verwalten des Zugriffs für eine Anwendung) als Parameter in den Aufrufen der Berechtigungs-API Ihrer Azure Data Manager for Energy-Instanz an. Sie können die E-Mail-ID der Benutzer oder Benutzerinnen nicht im Parameter verwenden, sondern müssen die Objekt-ID verwenden.

    Screenshot der Suche nach der Objekt-ID aus der Microsoft Entra-ID.

    Screenshot, der zeigt, wie das OID aus dem Profil gefunden wird.

Erstmaliges Hinzufügen von Benutzern und Benutzerinnen in einer neuen Datenpartition

  1. Um den ersten Administrator einer neuen Datenpartition einer Azure Data Manager for Energy-Instanz hinzuzufügen, verwenden Sie das Zugriffstoken der OID, die zum Bereitstellen der Instanz verwendet wurde.

  2. Rufen Sie das client-id-Zugriffstoken ab, indem Sie die Anleitung unter Generieren des Client-ID-Zugriffstokens generieren befolgen.

    Wenn Sie versuchen, direkt ihr eigenes Zugriffstoken zum Hinzufügen von Berechtigungen zu verwenden, führt dies zu einem 401-Fehler. Das client-id-Zugriffstoken muss zum Hinzufügen der ersten Benutzergruppe zum System verwendet werden. Diese Benutzer und Benutzerinnen (mit Administratorzugriff) können dann weitere Benutzer und Benutzerinnen mit ihrem eigenen Zugriffstoken verwalten.

  3. Verwenden Sie das client-id-Zugriffstoken, um die folgenden Schritte mit Hilfe der in den folgenden Abschnitten beschriebenen Befehle auszuführen:

    1. Fügen Sie den Benutzer oder die Benutzerin der OSDU-Gruppe users@<data-partition-id>.<domain> mit der Rolle BESITZER hinzu.
    2. Fügen Sie den Benutzer oder die Benutzerin der OSDU-Gruppe users.datalake.ops@<data-partition-id>.<domain> mit der Rolle BESITZER hinzu, um Zugriff auf alle Dienstgruppen zu gewähren.
  4. Der Benutzer bzw. die Benutzerin wird zum Administrator bzw. zur Administratorin der Datenpartition. Der Administrator bzw. die Administratorin kann dann weitere Benutzer und Benutzerinnen zu den erforderlichen Berechtigungsgruppen hinzufügen oder daraus entfernen:

    1. Rufen Sie das Authentifizierungstoken des Administrators wie unter Generieren von Benutzerzugriffstoken beschrieben ab, und verwenden Sie dieselben Werte für client-id und client-secret.
    2. Rufen Sie die OSDU-Gruppe ab, z. B. service.legal.editor@<data-partition-id>.<domain>, zu der Sie weitere Benutzer oder Benutzerinnen hinzufügen möchten, indem Sie das Zugriffstoken des Administrators bzw. der Administratorin verwenden.
    3. Fügen Sie dieser OSDU-Gruppe weitere Benutzer oder Benutzerinnen hinzu, indem Sie das Zugriffstoken des Administrators bzw. der Administratorin verwenden.
  5. users.data.root ist der standardmäßige und permanente Besitzer aller Datensätze, wenn die Datensätze automatisch im System erstellt werden. Wenn der Benutzer, der den Datensatz erstellt hat und Besitzer des Datensatzes ist, die Organisation verlässt, haben die Mitglieder von users.data.root immer zugriff auf alle Datensätze. Weitere Informationen finden Sie unter Datenstammgruppe.

  6. Wenn Sie einer bestimmten OSDU-Gruppe weitere Mitglieder hinzufügen, gibt es eine Beschränkung von 5000 Mitgliedschaften für eine bestimmte Identität, die von der OSDU-Community definiert wird.

Weitere Informationen zu den OSDU-Bootstrap-Gruppen finden Sie hier.

Abrufen der Liste aller Gruppen, auf die Sie Zugriff haben, in einer Datenpartition

Führen Sie den folgenden curl-Befehl in Azure Cloud Shell aus, um alle Gruppen abzurufen, die für Sie verfügbar sind oder auf die Sie in der betreffenden Datenpartition der Azure Data Manager for Energy-Instanz zugreifen können.

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

Hinzufügen von Mitgliedern zu einer OSDU-Gruppe in einer Datenpartition

  1. Führen Sie den folgenden curl-Befehl in Azure Cloud Shell aus, um die Benutzer oder Benutzerinnen mithilfe des Berechtigungsdiensts der Benutzergruppe hinzuzufügen.

  2. Der Wert, der für den Parameter email gesendet wird, ist der OID-Wert des Benutzers bzw. der Benutzerin und nicht dessen bzw. deren E-Mail-Adresse.

        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"
                    }
                   '
    

    Beispielanforderung für Benutzer bzw. Benutzerinnen der OSDU-Gruppe

    Betrachten Sie eine Azure Data Manager for Energy-Instanz namens medstest mit einer Datenpartition namens 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"
                    }'
    

    Beispiel für eine Antwort

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

    Beispielanforderung für die OSDU-Gruppe „Legal Service Editor“

        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"
                    }'
    

    Wichtig

    Die App-ID ist standardmäßig der BESITZER aller Gruppen.

    Screenshot der App-ID in Microsoft Entra ID.

Abrufen von OSDU-Gruppen für bestimmte Benutzer oder Benutzerinnen in einer Datenpartition

  1. Führen Sie den folgenden curl-Befehl in Azure Cloud Shell aus, um alle Gruppen abzurufen, die dem Benutzer bzw. der Benutzerin zugeordnet sind.

        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>'
    

    Beispielanfrage

    Betrachten Sie eine Azure Data Manager for Energy-Instanz namens medstest mit einer Datenpartition namens 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.............'
    

    Beispiel für eine Antwort

        {
        "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"
            }
        ]
        }
    

Entfernen eines Mitglieds aus einer Gruppe in einer Datenpartition

  1. Führen Sie den folgenden curl-Befehl in Azure Cloud Shell aus, um ein bestimmtes Mitglied aus einer Gruppe zu entfernen.

  2. Wenn die API versucht, ein Mitglied aus users@ Gruppe zu entfernen, aber das Mitglied bereits Teil anderer Gruppen ist, schlägt die API-Anforderung fehl. Um Mitglied aus Gruppe users@ und damit aus der Datenpartition zu entfernen, können Sie den Befehl „Löschen“ verwenden.

        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>'
    

Löschen eines bestimmten Benutzers aus allen Gruppen in einer Datenpartition

  1. Führen Sie den folgenden curl-Befehl in Azure Cloud Shell aus, um einen bestimmten Benutzer oder eine Benutzerin aus einer bestimmten Datenpartition zu löschen.

  2. Sie dürfen den BESITZER einer Gruppe NICHT löschen, es sei denn, es gibt einen anderen BESITZER, der Benutzer und Benutzerinnen in dieser Gruppe verwalten kann. Obwohl users.data.root der Standard- und permanente Besitzer aller Datensätze ist.

        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>'
    

    Beispielanfrage

    Betrachten Sie eine Azure Data Manager for Energy-Instanz namens medstest mit einer Datenpartition namens 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.............'
    

    Beispiel für eine Antwort

    Keine Ausgabe für eine erfolgreiche Antwort.

Nächste Schritte

Nachdem Sie den Gruppen Benutzer und Benutzerinnen hinzugefügt haben, können Sie Folgendes tun:

Sie können Daten auch in Ihrer Azure Data Manager for Energy-Instanz erfassen: