Crie e atribua uma função personalizada no Microsoft Entra ID

Este artigo descreve como criar novas funções personalizadas no ID do Microsoft Entra. Para ver as noções básicas de funções personalizadas, confira a visão geral de funções personalizadas. A função pode ser atribuída apenas no escopo no nível do diretório ou em um escopo do recurso de registro do 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 P1 ou P2 do Microsoft Entra ID
  • Administrador de função com privilégios ou Administrador global
  • Módulo do Microsoft.Graph ao usar o PowerShell
  • Consentimento do administrador ao usar o Explorador do Graph para a API do Microsoft Graph

Para obter mais informações, confira Pré-requisitos para usar o PowerShell ou o Explorador do Graph.

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

Criar uma função personalizada para permitir acesso para gerenciar registros de aplicativo

Dica

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

  1. Entre no Centro de administração do Microsoft Entra como, no mínimo, um Administrador de funções com privilégios.

  2. Navegue até Identidade>Funções e administradores>Funções e administradores.

  3. Selecione Nova função personalizada.

    Criar ou editar funções na página Funções e administradores

  4. Na guia Básico, forneça um nome e uma descrição para a função e clique em Próximo.

    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 aplicativo. Para obter uma descrição detalhada de cada permissão, consulte Subtipos e permissões de registro de aplicativo no ID do Microsoft Entra.

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

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

    2. Em seguida, insira "básico" na barra de pesquisa, selecione a permissão microsoft.directory/applications/basic/update e, em seguida, clique Próximo.

  6. Na guia Examinar + criar, examine as permissões e selecione Criar.

    Sua função personalizada aparecerá na lista de funções disponíveis a serem atribuídas.

Criar uma função usando o PowerShell

Entrar

Use o comando Connect-MgGraph para entrar em 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 'cburl@f128.info'"
$roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Application Support Administrator'"

# Get app registration and construct resource scope for assignment.
$appRegistration = Get-MgApplication -Filter "Displayname eq 'POSTMAN'"
$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 estas etapas:

  1. Use a API Criar 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"
              ]
          }
      ]
    }
    

    Observação

    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, será melhor criar um modelo e definir um valor templateId. Você pode gerar um valor templateId antececipadamente usando o cmdlet do PowerShell (New-Guid).Guid.

  2. Use a API Criar 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 para um recurso

Como funções internas, as funções personalizadas são atribuídas por padrão no escopo de toda a organização padrão para conceder permissões de acesso em todos os registros de aplicativo 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. Com isso, você pode oferecer ao usuário a permissão de atualizar credenciais e propriedades básicas de um único aplicativo sem precisar criar uma segunda função personalizada.

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

  2. Navegue até Identidade>Aplicativos>Registros do aplicativo.

  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.

    Selecionar 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 uma, 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á as permissões apenas pelo registro do aplicativo selecionado.