Share via


Lista transitiveRoleAssignment

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.

Obtenha a lista de objetos unifiedRoleAssignment diretos e transitivos para uma entidade de segurança específica. Por exemplo, se um usuário receber uma função Microsoft Entra por meio da associação de grupo, a atribuição de função será transitiva e essa solicitação listará a ID do grupo como principalId. Os resultados também podem ser filtrados pela roleDefinitionId e pelo diretórioScopeId. Com suporte apenas para o provedor de diretório (Microsoft Entra ID).

Para obter mais informações, consulte Usar grupos do Microsoft Entra para gerenciar atribuições de função.

Observação

Essa solicitação pode ter atrasos de replicação para atribuições de função que foram criadas, atualizadas ou excluídas recentemente.

Essa API está disponível nas seguintes implantações nacionais de nuvem.

Serviço global Governo dos EUA L4 GOVERNO DOS EUA L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões privilegiadas mais altas
Delegado (conta corporativa ou de estudante) RoleManagement.Read.Directory Directory.Read.All, Directory.ReadWrite.All, RoleManagement.ReadWrite.Directory
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo RoleManagement.Read.Directory Directory.Read.All, Directory.ReadWrite.All, RoleManagement.ReadWrite.Directory

Solicitação HTTP

Para listar atribuições de função transitiva para um provedor de diretório:

GET /roleManagement/directory/transitiveRoleAssignments?$filter=principalId eq '{principalId}'

Parâmetros de consulta

Esse método requer o $filter parâmetro de consulta OData (eq) para escopo das atribuições de função transitiva para uma entidade. Você pode restringir o escopo da solicitação expandindo o filtro para outras propriedades com suporte. Esse método também dá suporte aos $count parâmetros de $select consulta E OData para ajudar a personalizar a resposta. Para obter informações gerais, acesse Parâmetros de consulta OData.

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
ConsistencyLevel eventualmente. Esse cabeçalho, $counte $filter são necessários. Para obter mais informações sobre o uso de ConsistencyLevel e $count$filter, consulte Recursos de consulta avançados em objetos de diretório.

Corpo da solicitação

Não forneça um corpo de solicitação para esse método.

Resposta

Se for bem-sucedido, esse método retornará um 200 OK código de resposta e uma coleção de objetos unifiedRoleAssignment no corpo da resposta.

Se sua solicitação não incluir o cabeçalho ConsistencyLevel definido como eventual, esse método retornará o 404 Not Found código de resposta.

Exemplos

Para os exemplos nesta seção, considere o cenário de atribuição de função a seguir. Um usuário chamado Alice tem atribuições de função diretas e transitivas da seguinte maneira:

Usuário Agrupar Role Escopo ID da atribuição de função
Alice
2c7936bc-3517-40f3-8eda-4806637b6516
Administrador do usuário
fe930be7-5e62-47db-91af-98c3a49a38b1
Tenant RA1
857708a7-b5e0-44f9-bfd7-53531d72a739
G1
ae2fc327-4c71-48ed-b6ca-f48632186510
(Alice é membro)
Administrador do usuário
fe930be7-5e62-47db-91af-98c3a49a38b1
Tenant RA2
8a021d5f-7351-4713-aab4-b088504d476e
G2
6ffb34b8-5e6d-4727-a7f9-93245e7f6ea8
(Alice é membro)
Administrador da Assistência Técnica
729827e3-9c14-49f7-bb1b-9608f156bbb8
Unidade administrativa (AU1)
26e79164-0c5c-4281-8c5b-be7bc7809fb2
RA3
6cc86637-13c8-473f-afdc-e0e65c9734d2
  • Alice recebe a função de Administrador de Usuário diretamente no escopo do locatário com a atribuição de função RA1.
  • Alice é membro de um grupo G1 e o G1 recebe a função administrador de usuário no escopo do locatário com a atribuição de função RA2.
  • Alice também é membro do grupo G2 e o G2 recebe a função de Administrador do Helpdesk em um escopo da unidade administrativa AU1 com a atribuição de função RA3.

Exemplo 1: obter atribuições de função diretas e transitivas de uma entidade de segurança

Solicitação

O exemplo a seguir mostra uma solicitação. Essa solicitação requer o cabeçalho ConsistencyLevel definido como eventual e os $count=true parâmetros e $filter consulta. Para obter mais informações sobre o uso de ConsistencyLevel e $count$filter, consulte Recursos de consulta avançados em objetos de diretório.

GET https://graph.microsoft.com/beta/roleManagement/directory/transitiveRoleAssignments?$count=true&$filter=principalId eq '2c7936bc-3517-40f3-8eda-4806637b6516'
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade. Todas as propriedades serão retornadas de uma chamada real.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/transitiveRoleAssignments",
    "value": [
        {
            "id": "857708a7-b5e0-44f9-bfd7-53531d72a739",
            "principalId": "2c7936bc-3517-40f3-8eda-4806637b6516",
            "directoryScopeId": "/",
            "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1"
        },
        {
            "id": "8a021d5f-7351-4713-aab4-b088504d476e",
            "principalId": "ae2fc327-4c71-48ed-b6ca-f48632186510",
            "directoryScopeId": "/",
            "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1"
        },
        {
            "id": "6cc86637-13c8-473f-afdc-e0e65c9734d2",
            "principalId": "6ffb34b8-5e6d-4727-a7f9-93245e7f6ea8",
            "directoryScopeId": "/administrativeUnits/26e79164-0c5c-4281-8c5b-be7bc7809fb2",
            "roleDefinitionId": "729827e3-9c14-49f7-bb1b-9608f156bbb8"
        }
    ]
}

Exemplo 2: obter atribuições diretas e transitivas de uma entidade, mas apenas definições de função específicas

Solicitação

O exemplo a seguir mostra uma solicitação. Essa solicitação requer o cabeçalho ConsistencyLevel definido como eventual e os $count=true parâmetros e $filter consulta. Para obter mais informações sobre o uso de ConsistencyLevel e $count$filter, consulte Recursos de consulta avançados em objetos de diretório.

GET https://graph.microsoft.com/beta/roleManagement/directory/transitiveRoleAssignments?$count=true&$filter=principalId eq '2c7936bc-3517-40f3-8eda-4806637b6516' and roleDefinitionId eq 'fe930be7-5e62-47db-91af-98c3a49a38b1'
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade. Todas as propriedades serão retornadas de uma chamada real.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/transitiveRoleAssignments",
    "value": [
        {
            "id": "857708a7-b5e0-44f9-bfd7-53531d72a739",
            "principalId": "2c7936bc-3517-40f3-8eda-4806637b6516",
            "directoryScopeId": "/",
            "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1"
        },
        {
            "id": "8a021d5f-7351-4713-aab4-b088504d476e",
            "principalId": "6ffb34b8-5e6d-4727-a7f9-93245e7f6ea8",
            "directoryScopeId": "/",
            "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1"
        }
    ]
}

Exemplo 3: obter atribuições de função diretas e transitivas de uma entidade, mas apenas uma unidade administrativa com escopo

Solicitação

O exemplo a seguir mostra uma solicitação. Essa solicitação requer o cabeçalho ConsistencyLevel definido como eventual e os $count=true parâmetros e $filter consulta. Para obter mais informações sobre o uso de ConsistencyLevel e $count$filter, consulte Recursos de consulta avançados em objetos de diretório.

GET https://graph.microsoft.com/beta/roleManagement/directory/transitiveRoleAssignments?$count=true&$filter=principalId eq '2c7936bc-3517-40f3-8eda-4806637b6516' and directoryScopeId eq '/administrativeUnits/26e79164-0c5c-4281-8c5b-be7bc7809fb2'
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade. Todas as propriedades serão retornadas de uma chamada real.

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/transitiveRoleAssignments",
    "value": [
        {
            "id": "6cc86637-13c8-473f-afdc-e0e65c9734d2",
            "principalId": "6ffb34b8-5e6d-4727-a7f9-93245e7f6ea8",
            "directoryScopeId": "/administrativeUnits/26e79164-0c5c-4281-8c5b-be7bc7809fb2",
            "roleDefinitionId": "729827e3-9c14-49f7-bb1b-9608f156bbb8"
        }
    ]
}