directoryObject: checkMemberGroups

Espacio de nombres: microsoft.graph

Importante

Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.

Compruebe si pertenece a una lista especificada de identificadores de grupo y devuelva de esa lista los identificadores de grupos de los que un objeto especificado es miembro. El objeto especificado puede ser de uno de los siguientes tipos:

Esta función es transitiva.

Puede comprobarse un máximo de 20 grupos por solicitud. Esta función es compatible con todos los grupos aprovisionados en Microsoft Entra ID. Dado que los grupos de Microsoft 365 no pueden contener otros grupos, la pertenencia a un grupo de Microsoft 365 es siempre directa.

Importante

Microsoft Graph evalúa la colección groupIds como una sola solicitud. Si la solicitud no es válida (por ejemplo, un identificador de grupo con un formato incorrecto), se produce un error en toda la solicitud. Si el autor de la llamada no tiene acceso para evaluar determinados grupos (por ejemplo, grupos con pertenencia oculta), la respuesta podría incluir solo los grupos que el autor de la llamada está autorizado a evaluar.

Nota:

El tiempo de respuesta depende de la estructura de directorios de su inquilino, incluida la profundidad de anidamiento de grupos y el tamaño de la suscripción. Microsoft Graph no publica objetivos de latencia para las API de pertenencia transitiva.

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

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

Nota:

Los permisos Directory.* le permiten recuperar cualquier tipo de objeto de directorio compatible a través de esta API. Para recuperar solo un tipo específico, puede usar permisos específicos para el recurso.

Pertenencia a grupos para el usuario que ha iniciado sesión

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) User.Read 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. No admitida.
Aplicación No admitida. No admitida.

Pertenencia a grupos para otros usuarios

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
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. No admitida.
Aplicación User.ReadBasic.All y GroupMember.Read.All User.Read.All y GroupMember.Read.All, User.Read.All y Group.Read.All, Directory.Read.All

Pertenencia a grupos de un grupo

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

Pertenencia a grupos para una entidad de servicio

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) Application.Read.All Directory.Read.All, Application.ReadWrite.All, Directory.ReadWrite.All
Delegado (cuenta personal de Microsoft) No admitida. 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 con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) Directory.Read.All Directory.ReadWrite.All
Delegado (cuenta personal de Microsoft) No admitida. 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) Device.Read.All Directory.Read.All, Directory.ReadWrite.All
Delegado (cuenta personal de Microsoft) No admitida. No admitida.
Aplicación Device.Read.All Directory.Read.All, Directory.ReadWrite.All

Importante

Para evaluar la pertenencia a grupos con pertenencia oculta, se requiere acceso adicional:

  • Permisos de aplicación: la aplicación debe tener el Member.Read.Hidden permiso.
  • Permisos delegados: el usuario que ha iniciado sesión debe ser miembro del grupo de pertenencia oculta.

Si no se cumple ninguna de las condiciones, los grupos de pertenencia oculta no se evalúan y esos identificadores de grupo se omiten de la respuesta.

Solicitud HTTP

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

POST /directoryObjects/{id}/checkMemberGroups

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

POST /me/checkMemberGroups

Pertenencia a grupos para otros usuarios.

POST /users/{id | userPrincipalName}/checkMemberGroups

Pertenencia a grupos de un grupo.

POST /groups/{id}/checkMemberGroups

Pertenencia a grupos para una entidad de servicio.

POST /servicePrincipals/{id}/checkMemberGroups

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

POST /contacts/{id}/checkMemberGroups

Pertenencia a grupos para un dispositivo.

POST /devices/{id}/checkMemberGroups

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
groupIds Colección string Colección que contiene los identificadores de objeto de los grupos en los que se comprueba la pertenencia. Pueden especificarse hasta 20 grupos.

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/beta/directoryObjects/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e/checkMemberGroups
Content-type: application/json

{
    "groupIds": [
        "f448435d-3ca7-4073-8152-a1fd73c0fd09",
        "bd7c6263-4dd5-4ae8-8c96-556e1c0bece6",
        "93670da6-d731-4366-94b5-abed40b6016b",
        "f5484ab1-4d4d-41ec-a9b8-754b3957bfc7",
        "c9103f26-f3cf-4004-a611-2a14e81b8f79"
    ]
}

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/beta/$metadata#Collection(Edm.String)",
    "value": [
        "f448435d-3ca7-4073-8152-a1fd73c0fd09",
        "93670da6-d731-4366-94b5-abed40b6016b",
        "f5484ab1-4d4d-41ec-a9b8-754b3957bfc7",
        "c9103f26-f3cf-4004-a611-2a14e81b8f79"
    ]
}

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

Solicitud

POST https://graph.microsoft.com/beta/me/checkMemberGroups
Content-type: application/json

{
  "groupIds": [
        "fee2c45b-915a-4a64-b130-f4eb9e75525e",
        "4fe90ae7-065a-478b-9400-e0a0e1cbd540"
  ]
}

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/beta/$metadata#Collection(Edm.String)",
  "value": [
        "fee2c45b-915a-4a64-b130-f4eb9e75525e"
  ]
}