Share via


Administración de usuarios en Azure Data Manager for Energy

En este artículo, aprenderá a administrar usuarios y sus pertenencias a grupos de OSDU en Azure Data Manager for Energy. Las API de derechos se usan para agregar o quitar usuarios a grupos de OSDU y para comprobar los derechos cuando el usuario intenta acceder a los servicios o datos de OSDU. Para obtener más información sobre los conceptos del grupo de OSDU, consulte Derechos.

Requisitos previos

Captura de object-id

El id. de objeto (OID) de Azure es el OID de usuario de Microsoft Entra.

  1. Busque primero el OID de los usuarios. Si va a administrar el acceso de una aplicación, debe buscar y usar el id. de aplicación (o id. de cliente) en lugar del OID.

  2. Escriba el OID de los usuarios (o la aplicación o el id. de cliente si administra el acceso a una aplicación) como parámetros en las llamadas a la API de derechos de la instancia de Azure Data Manager for Energy. No puede usar el id. de correo electrónico del usuario en el parámetro y debe usar el id. de objeto.

    Captura de pantalla que muestra la búsqueda del Id. del objeto a partir del Microsoft Entra ID.

    Captura de pantalla que muestra cómo encontrar el OID del perfil.

Primera adición de usuarios en una nueva partición de datos

  1. Para agregar el primer administrador a una nueva partición de datos de una instancia de Azure Data Manager for Energy, use el token de acceso del OID que se usó para aprovisionar la instancia.

  2. Obtenga el token de acceso client-id mediante Generar token de acceso de client-id.

    Si intenta usar directamente su propio token de acceso para agregar derechos, se producirá un error 401. El token de acceso client-id debe usarse para agregar el primer conjunto de usuarios en el sistema. Esos usuarios (con acceso de administrador) pueden administrar más usuarios con su propio token de acceso.

  3. Use el token de acceso client-id para realizar los pasos siguientes mediante los comandos descritos en las secciones siguientes:

    1. Agregue el usuario al grupo OSDU users@<data-partition-id>.<domain> con el rol PROPIETARIO.
    2. Agregue el usuario al grupo OSDU users.datalake.ops@<data-partition-id>.<domain> con el rol PROPIETARIO para conceder acceso a todos los grupos de servicios.
    3. Agregue el usuario al grupo OSDU users.data.root@<data-partition-id>.<domain> con el rol PROPIETARIO para conceder acceso a todos los grupos de datos.
  4. El usuario se convierte en el administrador de la partición de datos. Después, el administrador puede agregar o quitar más usuarios de los grupos de derechos necesarios:

    1. Obtenga el token de autenticación del administrador mediante Generar token de acceso de usuario y el uso de los mismos valores client-id y client-secret.
    2. Obtenga el grupo OSDU, como service.legal.editor@<data-partition-id>.<domain>, al que desea agregar más usuarios mediante el token de acceso del administrador.
    3. Agregue más usuarios a ese grupo de OSDU mediante el token de acceso de administrador.

Para más información sobre los grupos de arranque de OSDU, consulte aquí.

Obtener la lista de todos los grupos a los que tiene acceso en una partición de datos

Ejecute el siguiente comando curl en Azure Cloud Shell para obtener todos los grupos disponibles para usted o a los que tenga acceso en la partición de datos específica de la instancia de Azure Data Manager for Energy.

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

Agregar miembros a un grupo de OSDU en una partición de datos

  1. Ejecute el siguiente comando curl en Azure Cloud Shell para agregar usuarios al grupo de usuarios mediante el servicio de derechos.

  2. El valor que se va a enviar para el parámetro email es el OID del usuario y no el correo electrónico del usuario.

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

    Solicitud de ejemplo para el grupo OSDU de usuarios

    Considere una instancia de Azure Data Manager for Energy denominada medstest con una partición de datos denominada 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"
                    }'
    

    Respuesta de muestra

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

    Solicitud de ejemplo para el grupo OSDU del editor de servicios legales

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

    Importante

    El id. de aplicación es el PROPIETARIO predeterminado de todos los grupos.

    Captura de pantalla que muestra el id. de la aplicación en Microsoft Entra ID.

Obtención de grupos de OSDU para un usuario determinado en una partición de datos

  1. Ejecute el siguiente comando curl en Azure Cloud Bash para obtener todos los grupos asociados al usuario.

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

    Solicitud de muestra

    Considere una instancia de Azure Data Manager for Energy denominada medstest con una partición de datos denominada 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.............'
    

    Respuesta de muestra

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

Quitar a un miembro de un grupo en una partición de datos

  1. Ejecute el siguiente comando curl en Azure Cloud Shell para quitar a un miembro específico de un grupo.

  2. Si la API intenta quitar un miembro de users@ grupo, pero el miembro ya forma parte de otros grupos, se producirá un error en la solicitud de API. Para eliminar a un miembro del users@ grupo y, por tanto, de la partición de datos, puede usar el comando Eliminar.

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

Eliminación de un usuario específico de todos los grupos de una partición de datos

  1. Ejecute el siguiente comando curl en Azure Cloud Shell para eliminar a un usuario específico de una partición de datos específica.

  2. NO elimine al PROPIETARIO de un grupo a menos que tenga otro PROPIETARIO que pueda administrar a los usuarios de ese grupo. Aunque users.data.root es el propietario predeterminado y permanente de todos los registros de datos.

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

    Solicitud de muestra

    Considere una instancia de Azure Data Manager for Energy denominada medstest con una partición de datos denominada 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.............'
    

    Respuesta de muestra

    No se genera ninguna salida para una respuesta correcta.

Pasos siguientes

Después de agregar usuarios a los grupos, puede hacer lo siguiente:

También puede ingerir datos en la instancia de Azure Data Manager for Energy: