Editar

Partilhar via


Criar e atribuir uma função personalizada no Microsoft Entra ID

Este artigo descreve como criar novas funções personalizadas no Microsoft Entra ID. Para obter as noções básicas de funções personalizadas, consulte a visão geral das funções personalizadas. A função pode ser atribuída apenas no escopo no nível do diretório ou em um escopo de recurso de registro de aplicativo.

As funções personalizadas podem ser criadas na página Funções e administradores do centro de administração do Microsoft Entra.

Pré-requisitos

  • Licença do Microsoft Entra ID P1 ou P2
  • Administrador de Funções com Privilégios
  • Módulo Microsoft.Graph ao usar o PowerShell
  • Consentimento do administrador ao utilizar os Testes de API do Graph para a Microsoft Graph API

Para obter mais informações, consulte Pré-requisitos para usar o PowerShell ou o Graph Explorer.

Criar uma função no centro de administração do Microsoft Entra

Criar uma nova função personalizada para conceder acesso para gerenciar registros de aplicativos

Gorjeta

As etapas neste artigo podem variar ligeiramente com base no portal a partir do qual você começou.

  1. Entre no centro de administração do Microsoft Entra como pelo menos um Administrador de Função Privilegiada.

  2. Navegue até Identity>Roles & admins>Roles & admins.

  3. Selecione Nova função personalizada.

    Criar ou editar funções a partir da página Funções e administradores

  4. Na guia Noções básicas, forneça um nome e uma descrição para a função.

    Você pode clonar as permissões de linha de base de uma função personalizada, mas não pode clonar uma função interna.

    forneça um nome e uma descrição para uma função personalizada na guia Noções básicas

  5. Na guia Permissões, selecione as permissões necessárias para gerenciar propriedades básicas e propriedades de credenciais de registros de aplicativos. Para obter uma descrição detalhada de cada permissão, consulte Subtipos e permissões de registro de aplicativo no Microsoft Entra ID.

    1. Primeiro, digite "credenciais" na barra de pesquisa e selecione a microsoft.directory/applications/credentials/update permissão.

      Selecione as permissões para uma função personalizada na guia Permissões

    2. Em seguida, digite "básico" na barra de pesquisa, selecione a microsoft.directory/applications/basic/update permissão e clique em Avançar.

  6. Na guia Revisar + criar, revise as permissões e selecione Criar.

    Sua função personalizada aparecerá na lista de funções disponíveis para atribuir.

Criar uma função usando o PowerShell

Iniciar sessão

Use o comando Connect-MgGraph para entrar no seu locatário.

Connect-MgGraph -Scopes "RoleManagement.ReadWrite.Directory"

Create the custom role

Create a new role using the following PowerShell script:

# Basic role information
$displayName = "Application Support Administrator"
$description = "Can manage basic aspects of application registrations."
$templateId = (New-Guid).Guid

# Set of permissions to grant
$allowedResourceAction =
@(
    "microsoft.directory/applications/basic/update",
    "microsoft.directory/applications/credentials/update"
)
$rolePermissions = @(@{AllowedResourceActions= $allowedResourceAction})

# Create new custom admin role
$customAdmin = New-MgRoleManagementDirectoryRoleDefinition -RolePermissions $rolePermissions -DisplayName $displayName -IsEnabled -Description $description -TemplateId $templateId

Assign the custom role using PowerShell

Assign the role using the below PowerShell script:

# Get the user and role definition you want to link
$user = Get-MgUser -Filter "userPrincipalName eq 'user@contoso.com'"
$roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Application Support Administrator'"

# Get app registration and construct resource scope for assignment.
$appRegistration = Get-MgApplication -Filter "Displayname eq 'MyApp1'"
$resourceScope = '/' + $appRegistration.objectId

# Create a scoped role assignment
$roleAssignment = New-MgRoleManagementDirectoryRoleAssignment -DirectoryScopeId $resourcescope -RoleDefinitionId $roledefinition.Id -PrincipalId $user.Id

Criar uma função com a API do Microsoft Graph

Siga estes passos:

  1. Use a API Create unifiedRoleDefinition para criar uma função personalizada.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleDefinitions
    

    Corpo

    {
      "description": "Can manage basic aspects of application registrations.",
      "displayName": "Application Support Administrator",
      "isEnabled": true,
      "templateId": "<GUID>",
      "rolePermissions": [
          {
              "allowedResourceActions": [
                  "microsoft.directory/applications/basic/update",
                  "microsoft.directory/applications/credentials/update"
              ]
          }
      ]
    }
    

    Nota

    O "templateId": "GUID" é um parâmetro opcional que é enviado no corpo dependendo do requisito. Se você tiver um requisito para criar várias funções personalizadas diferentes com parâmetros comuns, é melhor criar um modelo e definir um templateId valor. Você pode gerar um templateId valor de antemão usando o cmdlet (New-Guid).Guiddo PowerShell.

  2. Use a API Create unifiedRoleAssignment para atribuir a função personalizada.

    POST https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments
    

    Corpo

    {
        "principalId":"<GUID OF USER>",
        "roleDefinitionId":"<GUID OF ROLE DEFINITION>",
        "directoryScopeId":"/<GUID OF APPLICATION REGISTRATION>"
    }
    

Atribuir uma função personalizada com escopo a um recurso

Como as funções internas, as funções personalizadas são atribuídas por padrão no escopo padrão de toda a organização para conceder permissões de acesso sobre todos os registros de aplicativos em sua organização. Além disso, funções personalizadas e algumas funções internas relevantes (dependendo do tipo de recurso do Microsoft Entra) também podem ser atribuídas no escopo de um único recurso do Microsoft Entra. Isso permite que você dê ao usuário a permissão para atualizar credenciais e propriedades básicas de um único aplicativo sem ter que criar uma segunda função personalizada.

  1. Entre no centro de administração do Microsoft Entra como pelo menos um Desenvolvedor de Aplicativos.

  2. Navegue até Registros do aplicativo Identity>Applications>.

  3. Selecione o registro do aplicativo ao qual você está concedendo acesso para gerenciar. Talvez seja necessário selecionar Todos os aplicativos para ver a lista completa de registros de aplicativos em sua organização do Microsoft Entra.

    Selecione o registro do aplicativo como um escopo de recurso para uma atribuição de função

  4. No registro do aplicativo, selecione Funções e administradores. Se você ainda não criou um, as instruções estão no procedimento anterior.

  5. Selecione a função para abrir a página Atribuições .

  6. Selecione Adicionar atribuição para adicionar um usuário. O usuário receberá todas as permissões apenas sobre o registro do aplicativo selecionado.