En este artículo se describe cómo enumerar los roles que ha asignado en Microsoft Entra ID mediante el Centro de administración de Microsoft Entra, Microsoft Graph PowerShell o Microsoft Graph API.
Las asignaciones de roles contienen información que vincula una entidad de seguridad determinada (un usuario, grupo o entidad de servicio de aplicación) a una definición de rol. Enumerar usuarios, grupos y roles asignados son permisos de usuario predeterminados.
En Microsoft Entra ID, los roles se pueden asignar en distintos ámbitos.
Ver mis asignaciones de roles
También es fácil enumerar sus propios permisos. En la página Roles y administradores , seleccione Su rol para ver los roles asignados actualmente.
Lista de las asignaciones de rol de un usuario
Siga estos pasos para listar los roles de Microsoft Entra para un usuario utilizando el centro de administración de Microsoft Entra. Su experiencia será diferente en función de si tiene habilitado Microsoft Entra Privileged Identity Management (PIM).
Inicie sesión en el Centro de administración de Microsoft Entra.
Vaya a Entra ID>Usuarios.
Seleccione el nombre> de usuarioRoles asignados.
Puede ver la lista de los roles asignados al usuario en distintos ámbitos. Además, es posible ver si el rol se asignó directamente o a través de un grupo.
Si tiene una licencia de Microsoft Entra ID P2, verá la interfaz de PIM, que contiene los detalles de asignación de roles elegibles, activos y vencidos.
Lista de asignaciones de roles de un grupo
Inicie sesión en el Centro de administración de Microsoft Entra.
Vaya a Entra ID>Grupos>Todos los grupos.
Seleccione un grupo al que se puedan asignar roles.
Para determinar si un grupo es asignable a roles, puede ver las propiedades del grupo.
Seleccione Roles asignados.
Ahora puede ver todos los roles de Microsoft Entra asignados a este grupo. Si no ve la opción Roles asignados, el grupo no es un grupo al que se puedan asignar roles.
Descarga de asignaciones de rol
Para descargar todas las asignaciones de roles activas en todos los roles, incluidos los roles integrados y personalizados, siga estos pasos.
Las operaciones masivas solo se pueden ejecutar durante un máximo de una hora y tienen limitaciones en los inquilinos grandes. Para obtener más información, consulte Operaciones masivas y Creación masiva de usuarios en Microsoft Entra ID.
En la página Roles y administradores , seleccione Todos los roles.
Seleccione Descargar asignaciones.
Especifique un nombre de archivo y seleccione Iniciar descarga.
Se descargará un archivo CSV en el que se enumeran las asignaciones en todos los ámbitos para todos los roles.
Para descargar asignaciones de roles para un rol específico, siga estos pasos.
En la página Roles y administradores , seleccione un rol.
Seleccione Descargar asignaciones.
Si tiene una licencia de Microsoft Entra ID P2, podrá acceder a la experiencia de PIM. Seleccione Exportar para descargar las asignaciones de roles.
Se descargará un archivo CSV en el que se enumeran las asignaciones en todos los ámbitos para ese rol.
Enumeración de asignaciones de roles con ámbito de inquilino
En este procedimiento se describe cómo enumerar las asignaciones de roles con ámbito de inquilino.
Inicie sesión en el Centro de administración de Microsoft Entra.
Vaya a Entra ID>Roles y administradores.
Seleccione un nombre de rol para abrir el rol. No agregue una marca de verificación junto al rol.
Seleccione Asignaciones para enumerar las asignaciones de roles.
En la columna Ámbito , consulte las asignaciones de roles con ámbito de directorio .
Enumeración de asignaciones de roles con ámbito de registro de aplicaciones
En esa sección se describe cómo enumerar las asignaciones de roles con ámbito de aplicación única.
Inicie sesión en el Centro de administración de Microsoft Entra.
Vaya a Entra ID>Registros de aplicaciones.
Seleccione un registro de aplicación para la lista de asignaciones de roles que desea ver.
Es posible que tenga que seleccionar Todas las aplicaciones para ver la lista completa de registros de aplicaciones en su organización de Microsoft Entra.
Seleccione Roles y administradores.
Seleccione un nombre de rol para abrir el rol.
Seleccione Asignaciones para enumerar las asignaciones de roles.
Al abrir la página de asignaciones desde el registro de la aplicación, se muestran las asignaciones de roles que se limitan a este recurso de Microsoft Entra.
En la columna Ámbito , consulte las asignaciones de roles con este ámbito de recurso .
Enumeración de asignaciones de roles con ámbito de unidad administrativa
Puede ver todas las asignaciones de roles creadas con un ámbito de unidad administrativa en la sección Unidades de administración del Centro de administración de Microsoft Entra.
Inicie sesión en el Centro de administración de Microsoft Entra.
Vaya a Entra ID>Roles y administradores>Unidades de administración.
Seleccione una unidad administrativa para la lista de asignaciones de roles que desea ver.
Seleccione Roles y administradores.
Seleccione un nombre de rol para abrir el rol.
Seleccione Asignaciones para enumerar las asignaciones de roles.
En la columna Ámbito , consulte las asignaciones de roles con este ámbito de recurso .
En esta sección se explica cómo visualizar las asignaciones de un rol con ámbito de inquilino. En esta sección se usa el módulo de PowerShell de Microsoft Graph .
Configuración
Instale el módulo de Microsoft Graph mediante Install-Module.
Install-Module -name Microsoft.Graph
Use el comando Connect-MgGraph para iniciar sesión y usar cmdlets de PowerShell de Microsoft Graph.
Connect-MgGraph
Enumeración de asignaciones de roles con ámbito de inquilino
Use los comandos Get-MgRoleManagementDirectoryRoleDefinition y Get-MgRoleManagementDirectoryRoleAssignment para enumerar las asignaciones de roles.
En el ejemplo siguiente se muestra cómo enumerar las asignaciones de roles para el rol Administrador de grupos .
# Get a specific directory role by ID
$role = Get-MgRoleManagementDirectoryRoleDefinition -UnifiedRoleDefinitionId fdd7a751-b60b-444a-984c-02652fe8fa1c
# Get role assignments for a given role definition
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '$($role.Id)'"
Id PrincipalId RoleDefinitionId DirectoryScopeId AppScop
eId
-- ----------- ---------------- ---------------- -------
lAPpYvVpN0KRkAEhdxReEH2Fs3EjKm1BvSKkcYVN2to-1 aaaaaaaa-bbbb-cccc-1111-222222222222 62e90394-69f5-4237-9190-012177145e10 /
lAPpYvVpN0KRkAEhdxReEMdXLf2tIs1ClhpzQPsutrQ-1 bbbbbbbb-cccc-dddd-2222-333333333333 62e90394-69f5-4237-9190-012177145e10 /
En el ejemplo siguiente se muestra cómo enumerar todas las asignaciones de roles activas en todos los roles, incluidos los roles integrados y personalizados.
$roles = Get-MgRoleManagementDirectoryRoleDefinition
foreach ($role in $roles)
{
Get-MgRoleManagementDirectoryRoleAssignment -Filter "roleDefinitionId eq '$($role.Id)'"
}
Id PrincipalId RoleDefinitionId DirectoryScopeId AppScop
eId
-- ----------- ---------------- ---------------- -------
lAPpYvVpN0KRkAEhdxReEH2Fs3EjKm1BvSKkcYVN2to-1 aaaaaaaa-bbbb-cccc-1111-222222222222 62e90394-69f5-4237-9190-012177145e10 /
lAPpYvVpN0KRkAEhdxReEMdXLf2tIs1ClhpzQPsutrQ-1 bbbbbbbb-cccc-dddd-2222-333333333333 62e90394-69f5-4237-9190-012177145e10 /
4-PYiFWPHkqVOpuYmLiHa3ibEcXLJYtFq5x3Kkj2TkA-1 cccccccc-dddd-eeee-3333-444444444444 88d8e3e3-8f55-4a1e-953a-9b9898b8876b /
4-PYiFWPHkqVOpuYmLiHa2hXf3b8iY5KsVFjHNXFN4c-1 dddddddd-eeee-ffff-4444-555555555555 88d8e3e3-8f55-4a1e-953a-9b9898b8876b /
BSub0kaAukSHWB4mGC_PModww03rMgNOkpK77ePhDnI-1 eeeeeeee-ffff-aaaa-5555-666666666666 d29b2b05-8046-44ba-8758-1e26182fcf32 /
BSub0kaAukSHWB4mGC_PMgzOWSgXj8FHusA4iaaTyaI-1 ffffffff-aaaa-bbbb-6666-777777777777 d29b2b05-8046-44ba-8758-1e26182fcf32 /
Enumeración de asignaciones de roles para una entidad de seguridad
Utilice el comando Get-MgRoleManagementDirectoryRoleAssignment para ver las asignaciones de roles de una entidad de seguridad.
# Get role assignments for a given principal
Get-MgRoleManagementDirectoryRoleAssignment -Filter "PrincipalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'"
Enumerar asignaciones de roles directas y transitivas para un principal
Use la API List transitiveRoleAssignments para obtener roles asignados directamente y transitivamente a un usuario.
$response = $null
$uri = "https://graph.microsoft.com/beta/roleManagement/directory/transitiveRoleAssignments?`$count=true&`$filter=principalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'"
$method = 'GET'
$headers = @{'ConsistencyLevel' = 'eventual'}
$response = (Invoke-MgGraphRequest -Uri $uri -Headers $headers -Method $method -Body $null).value
Lista de asignaciones de roles de un grupo
Use el comando Get-MgGroup para obtener un grupo.
Get-MgGroup -Filter "DisplayName eq 'Contoso_Helpdesk_Administrators'"
Use el comando Get-MgRoleManagementDirectoryRoleAssignment para enumerar las asignaciones de roles del grupo.
Get-MgRoleManagementDirectoryRoleAssignment -Filter "PrincipalId eq '<object id of group>'"
Enumeración de asignaciones de roles con ámbito de unidad administrativa
Use el comando Get-MgDirectoryAdministrativeUnitScopedRoleMember para enumerar las asignaciones de roles con ámbito de unidad administrativa.
$adminUnit = Get-MgDirectoryAdministrativeUnit -Filter "displayname eq 'Example_admin_unit_name'"
Get-MgDirectoryAdministrativeUnitScopedRoleMember -AdministrativeUnitId $adminUnit.Id | FL *
En esta sección se describe cómo enumerar las asignaciones de roles con ámbito de inquilino. Use la API list unifiedRoleAssignments para obtener las asignaciones de roles.
Enumeración de asignaciones de roles para una entidad de seguridad
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=principalId+eq+'<object-id-of-principal>'
Respuesta
HTTP/1.1 200 OK
{
"value":[
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/"
} ,
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
"directoryScopeId": "/"
}
]
}
Enumerar asignaciones de roles directas y transitivas para un principal
Siga estos pasos para enumerar los roles de Microsoft Entra asignados a un usuario mediante Microsoft Graph API en el Explorador de Graph.
Inicie sesión en el Explorador de Graph.
Use la API List transitiveRoleAssignments para obtener roles asignados directamente y transitivamente a un usuario. Agregue la siguiente consulta a la URL.
GET https://graph.microsoft.com/beta/rolemanagement/directory/transitiveRoleAssignments?$count=true&$filter=principalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'
Vaya a la pestaña Encabezados de solicitud . Agregue ConsistencyLevel
como clave y Eventual
como su valor.
Seleccione Ejecutar consulta.
Lista de asignaciones de roles de un grupo
Use la API Obtener grupo para obtener un grupo.
GET https://graph.microsoft.com/v1.0/groups?$filter=displayName+eq+'Contoso_Helpdesk_Administrator'
Utiliza la API List unifiedRoleAssignments para obtener la asignación de roles.
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=principalId eq
Enumeración de asignaciones para una definición de rol
En el ejemplo siguiente se muestra cómo enumerar las asignaciones de roles para una definición de roles específica.
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=roleDefinitionId eq '<template-id-of-role-definition>'
Respuesta
HTTP/1.1 200 OK
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1",
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "00000000-0000-0000-0000-000000000000",
"directoryScopeId": "/"
}
Listar una asignación de rol por ID
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments/lAPpYvVpN0KRkAEhdxReEJC2sEqbR_9Hr48lds9SGHI-1
Respuesta
HTTP/1.1 200 OK
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1",
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/"
}
Enumeración de asignaciones de roles con ámbito de registro de aplicaciones
GET https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments?$filter=directoryScopeId+eq+'/d23998b1-8853-4c87-b95f-be97d6c6b610'
Respuesta
HTTP/1.1 200 OK
{
"value":[
{
"id": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0uIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "10dae51f-b6af-4016-8d66-8c2a99b929b3",
"directoryScopeId": "/d23998b1-8853-4c87-b95f-be97d6c6b610"
} ,
{
"id": "C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1wIiSDKQoTVJrLE9etXyrY0-1"
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"roleDefinitionId": "00000000-0000-0000-0000-000000000000",
"directoryScopeId": "/d23998b1-8853-4c87-b95f-be97d6c6b610"
}
]
}
Enumeración de asignaciones de roles con ámbito de unidad administrativa
Utilice la API List scopedRoleMembers para enumerar las asignaciones de roles con ámbito de unidad administrativa.
Solicitud
GET /directory/administrativeUnits/{admin-unit-id}/scopedRoleMembers
Cuerpo
{}