Partilhar via


Criar unifiedRoleAssignment

Namespace: microsoft.graph

Crie um novo objeto unifiedRoleAssignment .

Esta API está disponível nas seguintes implementações de cloud nacionais.

Serviço global US Government L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Uma das seguintes permissões é necessária para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões.

Para o fornecedor de diretório (Microsoft Entra ID)

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante) RoleManagement.ReadWrite.Directory
Delegado (conta pessoal da Microsoft) Sem suporte.
Application RoleManagement.ReadWrite.Directory

Importante

Em cenários delegados com contas escolares ou profissionais, o utilizador com sessão iniciada tem de ter uma função de Microsoft Entra suportada ou uma função personalizada com uma permissão de função suportada. O Administrador de Funções Com Privilégios é a função com menos privilégios suportada para esta operação.

Para o fornecedor de gestão de direitos

Tipo de permissão Permissões (da com menos para a com mais privilégios)
Delegado (conta corporativa ou de estudante) EntitlementManagement.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte.
Application EntitlementManagement.ReadWrite.All

Solicitação HTTP

Crie uma atribuição de função para o fornecedor de diretórios:

POST /roleManagement/directory/roleAssignments

Crie uma atribuição de função para o fornecedor de gestão de direitos:

POST /roleManagement/entitlementManagement/roleAssignments

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.

Corpo da solicitação

No corpo do pedido, forneça uma representação JSON de um objeto unifiedRoleAssignment .

Pode especificar as seguintes propriedades ao criar um unifiedRoleAssignment.

Propriedade Tipo Descrição
appScopeId Cadeia de caracteres Obrigatório. Identificador do âmbito específico da aplicação quando o âmbito de atribuição é específico da aplicação. O âmbito de uma atribuição determina o conjunto de recursos ao qual foi concedido acesso ao principal. Os âmbitos da aplicação são âmbitos definidos e compreendidos apenas por uma aplicação de recursos.

Para o fornecedor de gestão de direitos, utilize esta propriedade para especificar um catálogo, por exemplo /AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997.

AppScopeId ou directoryScopeId têm de ser especificados.
directoryScopeId Cadeia de caracteres Obrigatório. Identificador do objeto de diretório que representa o âmbito da atribuição. O âmbito de uma atribuição determina o conjunto de recursos ao qual foi concedido acesso ao principal. Os âmbitos de diretório são âmbitos partilhados armazenados no diretório que são compreendidos por várias aplicações, ao contrário dos âmbitos de aplicações definidos e compreendidos apenas por uma aplicação de recursos.

Para o fornecedor de diretórios (Microsoft Entra ID), esta propriedade suporta os seguintes formatos:
  • / para âmbito ao nível do inquilino
  • /administrativeUnits/{administrativeunit-ID} para definir o âmbito de uma unidade administrativa
  • /{application-objectID} para definir o âmbito de uma aplicação de recursos

    Para o fornecedor de gestão de direitos, / para âmbito ao nível do inquilino. Para definir o âmbito de um catálogo de pacotes de acesso, utilize a propriedade appScopeId .

    AppScopeId ou directoryScopeId têm de ser especificados.
  • principalId Cadeia de caracteres Obrigatório. Identificador do principal ao qual a atribuição é concedida.
    roleDefinitionId Cadeia de caracteres Identificador da unifiedRoleDefinition para a qual a atribuição se destina. Somente leitura. Suporta $filter (eq, in).

    Resposta

    Se for bem-sucedido, este método devolve um 201 Created código de resposta e um novo objeto unifiedRoleAssignment no corpo da resposta.

    Exemplos

    Exemplo 1: Criar uma atribuição de função com o âmbito do inquilino

    Solicitação

    O exemplo a seguir mostra uma solicitação. Tenha em atenção a utilização de roleTemplateId para roleDefinitionId. roleDefinitionId pode ser o ID de modelo ao nível do serviço ou o roleDefinitionId específico do diretório.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    { 
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "c2cf284d-6c41-4e6b-afac-4b80928c9034",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/"
    }
    

    Resposta

    O exemplo a seguir mostra a resposta.

    Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "YUb1sHQtUEyvox7IA_Eu_mm3jqnUe4lEhvatluHVi2I-1",
        "roleDefinitionId": "c2cf284d-6c41-4e6b-afac-4b80928c9034",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/"
    }
    

    Exemplo 2: Criar uma atribuição de função com âmbito de unidade administrativa

    Solicitação

    O exemplo seguinte atribui a função Administrador de Utilizadores a um principal com âmbito de unidade administrativa.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    {
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/administrativeUnits/5d107bba-d8e2-4e13-b6ae-884be90e5d1a"
    }
    

    Resposta

    O exemplo a seguir mostra a resposta.

    Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "BH21sHQtUEyvox7IA_Eu_mm3jqnUe4lEhvatluHIWb7-1",
        "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/administrativeUnits/5d107bba-d8e2-4e13-b6ae-884be90e5d1a"
    }
    

    Exemplo 3: Criar uma atribuição de função com o âmbito da aplicação

    Solicitação

    O exemplo seguinte atribui a um principal a função de Administrador de Aplicações no âmbito da aplicação. O ID de objeto do registo da aplicação é 661e1310-bd76-4795-89a7-8f3c8f855bfc.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    {
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "principalId": "6b937a9d-c731-465b-a844-2d5b5368c161",
        "roleDefinitionId": "9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3",
        "directoryScopeId": "/661e1310-bd76-4795-89a7-8f3c8f855bfc"
    }
    

    Resposta

    O exemplo a seguir mostra a resposta.

    Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "kl2Jm9Msx0SdAqasLV6lw516k2sxx1tGqEQtW1NowWEQEx5mdr2VR4mnjzyPhVv8-1",
        "principalId": "6b937a9d-c731-465b-a844-2d5b5368c161",
        "directoryScopeId": "/661e1310-bd76-4795-89a7-8f3c8f855bfc",
        "roleDefinitionId": "9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3"
    }
    

    Exemplo 4: Criar uma atribuição de função com o âmbito do catálogo de pacotes de acesso

    Solicitação

    O exemplo a seguir mostra uma solicitação.

    POST https://graph.microsoft.com/v1.0/roleManagement/entitlementManagement/roleAssignments
    Content-type: application/json
    
    {
        "principalId": "679a9213-c497-48a4-830a-8d3d25d94ddc",
        "roleDefinitionId": "ae79f266-94d4-4dab-b730-feca7e132178",
        "appScopeId": "/AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997"
    }
    

    Resposta

    O exemplo a seguir mostra a resposta.

    Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#roleManagement/entitlementManagement/roleAssignments/$entity",
        "id": "f3092518-7874-462e-93e9-0cd6c11ffc52",
        "principalId": "679a9213-c497-48a4-830a-8d3d25d94ddc",
        "roleDefinitionId": "ae79f266-94d4-4dab-b730-feca7e132178",
        "appScopeId": "/AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997"
    }