directoryObject: getMemberGroups

Espacio de nombres: microsoft.graph

Devuelva todos los identificadores de grupo de los grupos de los que el usuario, grupo, entidad de servicio, contacto de la organización, dispositivo u objeto de directorio especificado sea miembro. Esta función es transitiva.

Esta API devuelve hasta 11 000 identificadores de grupo. Si hay más de 11 000 resultados disponibles, devuelve un 400 Bad Request error con el código de Directory_ResultSizeLimitExceeded error. Si obtiene el código de Directory_ResultSizeLimitExceeded error, use la API memberOf transitiva del grupo de lista en su lugar.

Esta API está disponible en las siguientes implementaciones en la nube nacional.

Servicio global Administración pública de EE. UU. Gobierno de EE. UU. L5 (DOD) China operado por 21Vianet

Permisos

Se requiere uno de los siguientes permisos para llamar a esta API. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Pertenencia a grupos para un objeto de directorio

Aquí, el permiso permite leer cualquier objeto del directorio, independientemente del tipo de objeto. Para limitar la operación a un tipo de objeto específico y usar permisos con privilegios menores, consulte otras tablas de permisos en esta página.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) Directory.Read.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación Directory.Read.All

Pertenencia a grupos de un usuario

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) User.ReadBasic.All y GroupMember.Read.All, User.Read.All y GroupMember.Read.All, User.ReadBasic.All y Group.Read.All, User.Read.All y Group.Read.All, Directory.Read.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación User.ReadBasic.All y GroupMember.Read.All, User.Read.All y GroupMember.Read.All, User.ReadBasic.All y Group.Read.All, User.Read.All y Group.Read.All, Directory.Read.All

Pertenencia a grupos de un grupo

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) GroupMember.Read.All, Group.Read.All, Directory.Read.All, Group.ReadWrite.All, Directory.ReadWrite.All
Delegado (cuenta de Microsoft personal) No admitida.
Aplicación GroupMember.Read.All, Group.Read.All, Directory.Read.All, Group.ReadWrite.All, Directory.ReadWrite.All

Pertenencia a grupos para una entidad de servicio

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) Application.Read.All, Directory.Read.All, Application.ReadWrite.All, Directory.ReadWrite.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación Application.Read.All, Directory.Read.All, Application.ReadWrite.All, Directory.ReadWrite.All

Pertenencia a grupos para un contacto de la organización

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) Directory.Read.All, Directory.ReadWrite.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación Directory.Read.All, Directory.ReadWrite.All

Pertenencia a grupos para un dispositivo

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) Application.Read.All Application.ReadWrite.All, Device.Read.All, Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, Group.ReadBasic.All, Group.ReadWrite.All, GroupMember.Read.All, GroupMember.ReadBasic.All, User.Read.All
Delegado (cuenta personal de Microsoft) No admitida. No admitida.
Aplicación Application.Read.All Application.ReadWrite.All, Device.Read.All, Device.ReadWrite.All, Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, Group.ReadBasic.All, Group.ReadWrite.All, GroupMember.Read.All, GroupMember.ReadBasic.All, User.Read.All

Solicitud HTTP

Pertenencia a grupos de un objeto de directorio (usuario, grupo, entidad de servicio o contacto organizativo).

POST /directoryObjects/{id}/getMemberGroups

Pertenencia a grupos para el usuario que ha iniciado sesión u otros usuarios.

POST /me/getMemberGroups
POST /users/{id | userPrincipalName}/getMemberGroups

Nota:

Para llamar al punto de conexión /me, se requiere un usuario con la sesión iniciada y, por lo tanto, un permiso delegado. Los permisos de aplicación no se admiten al usar el /me punto de conexión.

Nota:

Para llamar al punto de conexión /me, se requiere un usuario con la sesión iniciada y, por lo tanto, un permiso delegado. Los permisos de aplicación no se admiten al usar el /me punto de conexión.

Pertenencia a grupos de un grupo.

POST /groups/{id}/getMemberGroups

Pertenencia a grupos para una entidad de servicio.

POST /servicePrincipals/{id}/getMemberGroups

Pertenencia a grupos para un contacto de la organización.

POST /contacts/{id}/getMemberGroups

Pertenencia a grupos para un dispositivo.

POST /devices/{id}/getMemberGroups

Encabezados de solicitud

Nombre Descripción
Authorization {token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización.
Content-Type application/json

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione un objeto JSON con los siguientes parámetros.

Parámetro Tipo Descripción
securityEnabledOnly Boolean true especificar que sólo deben devolverse los grupos de seguridad de los que la entidad es miembro; false para especificar que se deben devolver todos los grupos y roles de directorio de los que la entidad es miembro. true solo se puede especificar para que los usuarios o las entidades de servicio devuelvan grupos con seguridad habilitada.

Respuesta

Si se ejecuta correctamente, este método devuelve el código de respuesta 200 OK y el objeto de colección String en el cuerpo de la respuesta.

Ejemplos

Ejemplo 1: Comprobar la pertenencia a grupos para un objeto de directorio

Solicitud

POST https://graph.microsoft.com/v1.0/directoryObjects/0049d944-a805-4680-9f54-3ab292090309/getMemberGroups
Content-type: application/json

{
    "securityEnabledOnly": false
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(Edm.String)",
    "value": [
        "a8daa1fb-d24c-47d0-9e9e-c99e83394e3e"
    ]
}

Ejemplo 2: Comprobar la pertenencia a grupos del usuario que ha iniciado sesión

Solicitud

POST https://graph.microsoft.com/v1.0/me/getMemberGroups
Content-type: application/json

{
  "securityEnabledOnly": true
}

Respuesta

Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(Edm.String)",
    "value": [
        "6239671a-0db6-4e8b-9d2f-f280efb5a181",
        "2e2f1227-1586-45ae-bf51-fccc1de72625",
        "1dae9306-be75-4c3c-99ec-0316a4342c84",
        "0e2d1bbb-76f8-4140-bda7-2a858b74507e",
        "0049d944-a805-4680-9f54-3ab292090309",
        "a8daa1fb-d24c-47d0-9e9e-c99e83394e3e",
        "6f204729-1b8f-4067-bcc9-98fb6c069ffd",
        "59afd38d-441a-4358-b074-8b9b1e7de52f",
        "64ed3df3-53c7-4d4d-ac5c-5c8dd4dafe33",
        "8b676bab-4b1e-419e-a253-7f5aca97d739",
        "be4ef325-9fa8-40d7-b375-4758853ddf52",
        "f5987b5a-61f6-4c31-9fa2-7bfb845c8d2a"
    ]
}