Criar unifiedRoleAssignment

Namespace: microsoft.graph

Crie um novo objeto unifiedRoleAssignment .

Permissões

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

Para o provedor de diretório (Azure AD)

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

Para o provedor de gerenciamento de direitos

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

Solicitação HTTP

Crie uma atribuição de função para o provedor de diretório:

POST /roleManagement/directory/roleAssignments

Crie uma atribuição de função para o provedor de gerenciamento de direitos:

POST /roleManagement/entitlementManagement/roleAssignments

Cabeçalhos de solicitação

Nome Descrição
Autorização Portador {token}

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto unifiedRoleAssignment . A solicitação deve ter um escopo definido no Azure Active Directory (Azure AD) especificado por directoryScopeId ou um escopo específico do aplicativo especificado pelo appScopeId. Exemplos de Azure AD escopos são locatário (/), unidade administrativa ou aplicativo. Para obter mais informações sobre appScope, consulte appScope.

A tabela a seguir mostra as propriedades que são necessárias ao criar um objeto unifiedRoleAssignment .

Parâmetro Tipo Descrição
roleDefinitionId Cadeia de caracteres Identificador da definição de função para a atribuição.
principalId Cadeia de caracteres O identificador da entidade de segurança à qual a atribuição é concedida.
directoryScopeId Cadeia de caracteres Identificador do objeto de diretório que representa o escopo da atribuição. Essa propriedade ou appScopeId é necessária. O escopo de uma atribuição determina o conjunto de recursos aos quais a entidade de segurança recebeu acesso. Os escopos de diretório são escopos compartilhados armazenados no diretório que são compreendidos por vários aplicativos. Use / para escopo de todo o locatário. Use appScopeId para limitar o escopo somente a um aplicativo.
appScopeId Cadeia de caracteres Identificador do escopo específico do aplicativo quando o escopo de atribuição é específico do aplicativo. Essa propriedade ou directoryScopeId é necessário. Os escopos do aplicativo são escopos definidos e compreendidos apenas por esse aplicativo. Use / para escopos de aplicativo em todo o locatário. Use directoryScopeId para limitar o escopo a objetos de diretório específicos, por exemplo, unidades administrativas.

Resposta

Se tiver êxito, este método retornará um código 201 Created de resposta e um novo objeto unifiedRoleAssignment no corpo da resposta.

Exemplos

Exemplo 1: Criar uma atribuição de função com escopo de locatário

Solicitação

Este é um exemplo de solicitação. Observe o uso do roleTemplateId para roleDefinitionId. roleDefinitionId pode ser a ID do modelo de todo o serviço ou a roleDefinitionId específica 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

Este é um exemplo de 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 escopo de unidade administrativa

Solicitação

O exemplo a seguir atribui a função de Administrador de Usuário a uma entidade de segurança com escopo 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

Este é um exemplo de 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 escopo do aplicativo

Solicitação

O exemplo a seguir atribui a uma entidade de segurança a função de Administrador de Aplicativos no escopo do aplicativo. A ID do objeto do registro do aplicativo é 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

Este é um exemplo de 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/beta/$metadata#roleManagement/directory/roleAssignments/$entity",
    "@odata.id": "https://graph.microsoft.com/v2/22350cac-d84b-466b-8c2c-f9326746709a/roleAssignments/kl2Jm9Msx0SdAqasLV6lw516k2sxx1tGqEQtW1NowWEQEx5mdr2VR4mnjzyPhVv8-1",
    "id": "kl2Jm9Msx0SdAqasLV6lw516k2sxx1tGqEQtW1NowWEQEx5mdr2VR4mnjzyPhVv8-1",
    "principalId": "6b937a9d-c731-465b-a844-2d5b5368c161",
    "principalOrganizationId": "22350cac-d84b-466b-8c2c-f9326746709a",
    "resourceScope": "/661e1310-bd76-4795-89a7-8f3c8f855bfc",
    "directoryScopeId": "/661e1310-bd76-4795-89a7-8f3c8f855bfc",
    "roleDefinitionId": "9b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3"
}

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

Solicitação

Este é um exemplo de 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

Este é um exemplo de 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"
}