Obtener appRoleAssignment

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.

Lee las propiedades y relaciones de un objeto appRoleAssignment .

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

En la tabla siguiente se muestran los permisos con privilegios mínimos necesarios para llamar a esta API en cada tipo de recurso admitido. Siga las prácticas recomendadas para solicitar permisos con privilegios mínimos. 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.

Recurso admitido Delegado (cuenta profesional o educativa) Delegado (cuenta de Microsoft personal) Aplicación
grupo Group.Read.All No admitida. Group.Read.All
servicePrincipal Application.Read.All No admitida. Application.Read.All
usuario User.Read No admitida. Directory.Read.All

Importante

Para el acceso delegado con cuentas profesionales o educativas, el usuario que ha iniciado sesión debe tener asignado un rol compatible de Microsoft Entra o un rol personalizado que conceda los permisos necesarios para esta operación. Esta operación admite los siguientes roles integrados, que proporcionan solo el privilegio mínimo necesario:

  • Invitador de invitados: leer asignaciones de roles de aplicación solo para usuarios
  • Lectores de directorios
  • Cuentas de sincronización de directorios - para servicios de sincronización en la nube de Microsoft Entra Connect y Microsoft Entra
  • Escritor de directorios
  • Administrador de identidades híbridas
  • Administrador de gobernanza de identidades
  • Administrador de roles con privilegios
  • Administrador de usuarios
  • Administrador de la aplicación
  • Administrador de aplicaciones en la nube
  • Administrador de ID de agente: solo para usuarios del agente

Otros permisos admitidos

Cada recurso admite los siguientes permisos con privilegios elevados:

  • Grupos:
    • Permisos delegados y de aplicación: Directory.Read.All, AppRoleAssignment.ReadWrite.All, Directory.ReadWrite.All
  • Usuarios:
    • Permisos delegados: User.ReadBasic.All, Directory.Read.All, AppRoleAssignment.ReadWrite.All
    • Permisos de aplicación: Directory.Read.All, AppRoleAssignment.ReadWrite.All
  • Entidades de servicio:
    • Permisos delegados: Directory.Read.All, Application.ReadWrite.All, Directory.ReadWrite.All
    • Permisos de aplicación: Application.ReadWrite.OwnedBy, Application.ReadWrite.All, Directory.ReadWrite.All

Solicitud HTTP

Para obtener detalles de un appRole concedido a una entidad de servicio:

GET /servicePrincipals/{client-serviceprincipal-id}/appRoleAssignments/{appRoleAssignment-id}
GET /servicePrincipals(appId='{client-servicePrincipal-appId}')/appRoleAssignments/{appRoleAssignment-id}

Para obtener detalles de un appRole concedido a una entidad de servicio de usuario, grupo o cliente para la entidad de servicio de recursos dada:

GET /servicePrincipals(appId='{resource-servicePrincipal-appId}')/appRoleAssignedTo/{appRoleAssignment-id}
GET /servicePrincipals/{resource-serviceprincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}

Para obtener detalles de un appRole concedido a un grupo:

GET /groups/{group-id}/appRoleAssignments/{appRoleAssignment-id}

Para obtener detalles de un appRole concedido a un usuario:

GET /users/{user-id}/appRoleAssignments/{appRoleAssignment-id}
GET /me/appRoleAssignments/{appRoleAssignment-id}

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.

Parámetros de consulta opcionales

Este método admite el $select parámetro de consulta OData para ayudar a personalizar la respuesta. Para obtener información general, vea Parámetros de consulta OData.

Encabezados de solicitud

Nombre Descripción
Authorization {token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización.

Cuerpo de la solicitud

No proporcione un cuerpo de solicitud para este método.

Respuesta

Si se ejecuta correctamente, este método entrega un código de respuesta 200 OK y un objeto appRoleAssignment en el cuerpo de la respuesta.

Ejemplos

Ejemplo 1: Obtener detalles de un rol de aplicación concedido a una entidad de servicio de usuario, grupo o cliente para la entidad de servicio de recursos especificada

Solicitud

La siguiente solicitud consulta a la entidad de servicio de recursos para obtener detalles de un rol de aplicación que ha concedido a un cliente que puede ser un usuario, un grupo o una entidad de servicio de cliente en el inquilino.

GET https://graph.microsoft.com/beta/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/appRoleAssignedTo/ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA

Respuesta

En el ejemplo siguiente se muestra la respuesta. Muestra que a una entidad de servicio de cliente denominada Postman se le ha concedido un rol de aplicación con el identificador df021288-bdef-4463-88db-98f22de89214 , que es el permiso de aplicación User.Read.All , para la entidad de servicio de recursos denominada Microsoft Graph.

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#servicePrincipals('00000003-0000-0000-c000-000000000000')/appRoleAssignedTo/$entity",
    "id": "ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA",
    "deletedDateTime": null,
    "appRoleId": "df021288-bdef-4463-88db-98f22de89214",
    "createdDateTime": "2023-02-24T17:01:47.0988029Z",
    "principalDisplayName": "Postman",
    "principalId": "2a8f9e7a-af01-413a-9592-c32ec0e5c1a7",
    "principalType": "ServicePrincipal",
    "resourceDisplayName": "Microsoft Graph",
    "resourceId": "7408235b-7540-4850-82fe-a5f15ed019e2"
}

Ejemplo 2: Obtener detalles de un rol de aplicación concedido a una entidad de servicio

Solicitud

La siguiente solicitud consulta a la entidad de servicio cliente para obtener detalles de un rol de aplicación que se le ha concedido. En este caso, el rol de aplicación representa el permiso de la aplicación.

GET https://graph.microsoft.com/beta/servicePrincipals(appId='ceb96a54-de95-49a0-b38c-c55263fcf421')/appRoleAssignments/ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA

Respuesta

En el ejemplo siguiente se muestra la respuesta. Muestra que a una entidad de servicio de cliente denominada Postman se le ha concedido un rol de aplicación con el identificador df021288-bdef-4463-88db-98f22de89214 , que es el permiso de aplicación User.Read.All , para la entidad de servicio de recursos denominada Microsoft Graph.

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#servicePrincipals('ceb96a54-de95-49a0-b38c-c55263fcf421')/appRoleAssignments/$entity",
    "id": "ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA",
    "deletedDateTime": null,
    "appRoleId": "df021288-bdef-4463-88db-98f22de89214",
    "createdDateTime": "2023-02-24T17:01:47.0988029Z",
    "principalDisplayName": "Postman",
    "principalId": "2a8f9e7a-af01-413a-9592-c32ec0e5c1a7",
    "principalType": "ServicePrincipal",
    "resourceDisplayName": "Microsoft Graph",
    "resourceId": "7408235b-7540-4850-82fe-a5f15ed019e2"
}

Ejemplo 3: Obtener detalles de un rol de aplicación concedido al usuario que ha iniciado sesión

Solicitud

La siguiente solicitud consulta las appRoleAssignments del usuario que ha iniciado sesión.

GET https://graph.microsoft.com/beta/me/appRoleAssignments/Lo6gEKI-4EyAy9X91LBepo6Aq0Rt6QxBjWRl76txk8I

Respuesta

En el ejemplo siguiente se muestra la respuesta. Muestra que el usuario que ha iniciado sesión tiene el rol de aplicación predeterminado para una entidad de servicio de recursos denominada Postman.

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#users('10a08e2e-3ea2-4ce0-80cb-d5fdd4b05ea6')/appRoleAssignments/$entity",
    "id": "Lo6gEKI-4EyAy9X91LBepo6Aq0Rt6QxBjWRl76txk8I",
    "deletedDateTime": null,
    "appRoleId": "00000000-0000-0000-0000-000000000000",
    "createdDateTime": "2022-09-08T17:43:57.8423817Z",
    "principalDisplayName": "MOD Administrator",
    "principalId": "10a08e2e-3ea2-4ce0-80cb-d5fdd4b05ea6",
    "principalType": "User",
    "resourceDisplayName": "Postman",
    "resourceId": "2a8f9e7a-af01-413a-9592-c32ec0e5c1a7"
}