Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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.
Obtenga los grupos, las funciones de directorio y las unidades administrativas de las que es miembro el usuario mediante la pertenencia directa o 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 |
|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use uno o varios permisos con privilegios más altos solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Permisos para la pertenencia de los usuarios que han iniciado sesión
| Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
|---|---|---|
| Delegado (cuenta profesional o educativa) | User.Read | Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, GroupMember.Read.All, User.Read.All |
| Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
| Aplicación | No admitida. | No admitida. |
Permisos para la pertenencia de otro usuario
| Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
|---|---|---|
| Delegado (cuenta profesional o educativa) | User.Read.All | Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, GroupMember.Read.All |
| Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
| Application | User.Read.All | Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, GroupMember.Read.All |
Importante
Cuando una aplicación consulta una relación que devuelve una colección de tipos directoryObject , si no tiene permiso para leer un tipo de recurso determinado, se devuelven miembros de ese tipo, pero con información limitada. Por ejemplo, solo se devuelve la propiedad @odata.type para el tipo de objeto y el id ., mientras que las demás propiedades se indican como null. Con este comportamiento, las aplicaciones pueden solicitar los permisos con privilegios mínimos que necesitan, en lugar de depender del conjunto de directorios.* permisos. Para información, consulte Información limitada devuelta para objetos de miembros inaccesibles.
Sugerencia
- Para llamar al punto de conexión
/me/transitiveMemberOf, se requiere un usuario con la sesión iniciada y, por lo tanto, un permiso delegado. Los permisos de aplicación no se admiten cuando se usa el/me/transitiveMemberOfpunto de conexión. - Para enumerar los miembros de un grupo con pertenencia oculta, se requiere el
Member.Read.Hiddenpermiso.
Solicitud HTTP
GET /me/transitiveMemberOf
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.
GET /users/{id | userPrincipalName}/transitiveMemberOf
Parámetros de consulta opcionales
Este método admite los parámetros de $filterconsulta , $count, $select, $search, $topOData para ayudar a personalizar la respuesta.
- La conversión de OData también está habilitada. Por ejemplo, puede transmitir para obtener solo la pertenencia transitiva a grupos.
-
$searchsolo se admite en la propiedad displayName . - El tamaño de página predeterminado y máximo son 100 y 999 objetos respectivamente.
- El uso de parámetros de consulta con esta API solo se admite con parámetros de consulta avanzados. Para obtener más información, vea Funcionalidades avanzadas de consulta en objetos de directorio.
Encabezados de solicitud
| Encabezado | Valor |
|---|---|
| Authorization | {token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización. |
| ConsistencyLevel | eventual. Este encabezado y $count son requeridos al usar los parámetros de consulta $search, $filter, $orderby u OData. Usa un índice que podría no estar actualizado con los cambios recientes realizados en el objeto. |
Cuerpo de la solicitud
No proporcione un cuerpo de solicitud para este método.
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK y la colección de objetos directoryObject en el cuerpo de la respuesta.
Ejemplos
Ejemplo 1: Obtener grupos, roles de directorio y unidades administrativas de los que es miembro el usuario
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/beta/users/{id}/transitiveMemberOf
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#directoryObjects",
"value":[
{
"@odata.type":"#microsoft.graph.group",
"displayName":"All_Contoso_Licensing",
"mailEnabled":true,
"mailNickname":"ContosoMailNickName",
"securityEnabled":true
},
{
"@odata.type":"#microsoft.graph.group",
"displayName":"ContosoAudience_PugetSound",
"mailEnabled":true,
"mailNickname":"Contoso_PugetSound",
"securityEnabled":true
}
]
}
Ejemplo 2: Obtener solo un recuento de pertenencia transitiva en grupos, roles de directorio y unidades administrativas
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/beta/users/{id}/transitiveMemberOf/$count
ConsistencyLevel: eventual
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 200 OK
Content-type: text/plain
893
Ejemplo 3: Usar la conversión de OData para obtener solo un recuento de la pertenencia transitiva en grupos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/beta/users/{id}/transitiveMemberOf/microsoft.graph.group/$count
ConsistencyLevel: eventual
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 200 OK
Content-type: text/plain
588
Ejemplo 4: Usar $search y OData cast para obtener la pertenencia transitiva a grupos con nombres para mostrar que contienen las letras "tier", incluido un recuento de objetos devueltos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/beta/users/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$search="displayName:tier"&$select=displayName,id
ConsistencyLevel: eventual
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#groups(displayName,id)",
"@odata.count":7,
"value":[
{
"displayName":"Contoso-tier Query Notification",
"id":"11111111-2222-3333-4444-555555555555"
}
]
}
Ejemplo 5: Usar $filter y OData cast para obtener la pertenencia transitiva a grupos con un nombre para mostrar que comienza con "a", incluido un recuento de objetos devueltos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/beta/users/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$filter=startswith(displayName, 'a')
ConsistencyLevel: eventual
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#groups",
"@odata.count":76,
"value":[
{
"displayName":"AAD Contoso Users",
"mail":"AADContoso_Users@contoso.com",
"mailEnabled":true,
"mailNickname":"AADContoso_Users",
"securityEnabled":true
}
]
}