Registrar um aplicativo Microsoft Graph

O Microsoft Graph permite que você gerencie muitos dos recursos em seu locatário do Azure AD B2C, incluindo contas de usuário do cliente e políticas personalizadas. Ao gravar scripts ou aplicativos que chamam a API do Microsoft Graph, você pode automatizar tarefas de gerenciamento de locatários, como:

  • Migrar o repositório de usuários existente para um locatário do Azure AD B2C
  • Implantar políticas personalizadas com um Pipeline do Azure no Azure DevOps e gerenciar chaves de política personalizadas
  • Hospedar o registro de usuário em sua página e criar contas de usuário no seu diretório do Azure AD B2C nos bastidores
  • Automatizar o registro de aplicativo
  • Obter logs de auditoria

As seções a seguir ajudam você a se preparar para usar a API do Microsoft Graph para automatizar o gerenciamento de recursos em seu diretório do Azure AD B2C.

Modos de interação da API do Microsoft Graph

Há dois modos de comunicação que você pode usar ao trabalhar com a API do Microsoft Graph para gerenciar recursos em seu locatário do Azure AD B2C:

  • Interativo: apropriado para tarefas de execução única, você usa uma conta do administrador no locatário do B2C para executar as tarefas de gerenciamento. Esse modo requer que um administrador entre usando suas credenciais antes de chamar a API do Microsoft Graph.

  • Automatizado: para tarefas de execução agendadas ou contínuas, esse método usa uma conta de serviço que você configura com as permissões necessárias para executar tarefas de gerenciamento. Você cria a "conta de serviço" no Azure AD B2C registrando um aplicativo que seus aplicativos e scripts usam para autenticação usando sua ID de aplicativo (cliente) e a concessão de credenciais de cliente do OAuth 2.0. Nesse caso, o aplicativo atua como ele próprio para chamar a API do Microsoft Graph, não o usuário administrador como no método interativo descrito anteriormente.

Você habilita o cenário de interação automatizada criando um registro de aplicativo mostrado nas seções a seguir.

O serviço de autenticação do AAD B2C dá suporte diretamente ao fluxo de concessão de credenciais do cliente OAuth 2.0 (atualmente em versão prévia pública), mas você não pode usá-lo para gerenciar seus recursos do AAD B2C por meio do API do Microsoft Graph. No entanto, é possível configurar o fluxo de credenciais do cliente usando o Microsoft Entra ID e o ponto de extremidade /token da plataforma de identidade da Microsoft para um aplicativo no seu locatário do AAD B2C.

Registrar aplicativo de gerenciamento

Antes que seus scripts e aplicativos possam interagir com a API do Microsoft Graph para gerenciar os recursos do Azure AD B2C, você precisa criar um registro de aplicativo no seu locatário do Azure AD B2C que concede as permissões de API necessárias.

  1. Entre no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para o seu locatário do Azure Active Directory B2C no menu Diretórios + assinaturas.
  3. No portal do Azure, pesquise e selecione Azure AD B2C.
  4. Escolha Registros de aplicativo e Novo registro.
  5. Insira um Nome para o aplicativo. Por exemplo, managementapp1.
  6. Escolha Somente contas neste diretório organizacional.
  7. Em Permissões, desmarque a caixa de seleção Dar consentimento do administrador às permissões OpenID e offline_access.
  8. Selecione Registrar.
  9. Registre a ID do Aplicativo (cliente) mostrada na página de visão geral do aplicativo. Você usa esse valor em uma etapa posterior.

Conceder acesso à API

Para que seu aplicativo acesse dados no Microsoft Graph, conceda ao aplicativo registrado as permissões de aplicativo relevantes. As permissões efetivas do seu aplicativo são o nível completo de privilégios implícitos pela permissão. Por exemplo, para criar, ler, atualizar e excluir todos os usuários em seu locatário do Azure AD B2C, adicione a permissão User.ReadWrite.All.

Observação

A permissão User.ReadWrite.All não inclui a capacidade de atualizar senhas de conta de usuário. Se o seu aplicativo precisar atualizar senhas da conta de usuário, conceda a função de administrador de usuários. Ao conceder a função de administrador de usuários, o User.ReadWrite.All não é necessário. A função de administrador de usuários inclui tudo o que é necessário para gerenciar usuários.

Você pode conceder ao aplicativo várias permissões de aplicativo. Por exemplo, se o seu aplicativo também precisar gerenciar grupos em seu locatário do Azure AD B2C, adicione também a permissão Group.ReadWrite.All.

Registros de aplicativo

  1. Em Gerenciar, selecione Permissões de API.
  2. Em Permissões Configuradas, selecione Adicionar uma permissão.
  3. Selecione a guia APIs da Microsoft e Microsoft Graph.
  4. Selecione Permissões de aplicativo.
  5. Expanda o grupo de permissões apropriado e marque a caixa de seleção da permissão a ser concedida ao seu aplicativo de gerenciamento. Por exemplo:
    • Usuário>User.ReadWrite.All: para cenários de migração de usuário ou de gerenciamento de usuário.
    • Grupo>Group.ReadWrite.All: para criar grupos, ler e atualizar associações de grupo e excluir grupos.
    • AuditLog>AuditLog.Read.All: para ler os logs de auditoria do diretório.
    • Política>Policy.ReadWrite.TrustFramework: para cenários de CI/CD (integração contínua/entrega contínua). Por exemplo, implantação de política personalizada com Azure Pipelines.
  6. Selecione Adicionar Permissões. Conforme as instruções, aguarde alguns minutos antes de seguir para a próxima etapa.
  7. Selecione Fornecer o consentimento do administrador para (nome do seu locatário) .
  8. Entre com uma conta em seu locatário do Azure AD B2C que tenha a função Administrador de aplicativo de nuvem atribuída e selecione Conceder consentimento do administrador para (seu nome de locatário).
  9. Selecione Atualizar e, em seguida, verifique se "Concedido para ..." aparece em Status. Pode levar alguns minutos para que as permissões sejam propagadas.

[Opcional] Conceder a função de administrador de usuários

Se o seu aplicativo ou script precisar atualizar as senhas dos usuários, você precisará atribuir a função de Administrador de usuários ao seu aplicativo. A função de administrador de usuários tem um conjunto fixo de permissões que você concede ao seu aplicativo.

Para adicionar a função de administrador de usuários, siga estas etapas:

  1. Entre no portal do Azure.
  2. Se você tiver acesso a vários locatários, selecione o ícone Configurações no menu superior para alternar para o seu locatário do Azure Active Directory B2C no menu Diretórios + assinaturas.
  3. Pesquise e selecione Azure AD B2C.
  4. Em Gerenciar, selecione Funções e administradores.
  5. Selecione a função de Administrador de usuários.
  6. Selecione Adicionar atribuições.
  7. Na caixa de texto Selecionar, insira o nome ou a ID do aplicativo que você registrou anteriormente, por exemplo, managementapp1. Quando ele aparecer nos resultados da pesquisa, selecione seu aplicativo.
  8. Selecione Adicionar. Pode levar alguns minutos para que as permissões sejam totalmente propagadas.

Criar o segredo do cliente

Seu aplicativo precisa de um segredo do cliente para provar sua identidade ao solicitar um token. Para adicionar o segredo do cliente, siga estas etapas:

  1. Em Gerenciar, selecione Certificados & Segredos.
  2. Selecione Novo segredo do cliente.
  3. Insira uma descrição para o segredo do cliente na caixa Descrição. Por exemplo, clientsecret1.
  4. Em Expirar, selecione um período durante o qual o segredo será válido e clique em Adicionar.
  5. Registre o Valor do segredo. Você usará esse valor para uma configuração em uma etapa posterior.

Próximas etapas

Agora que você registrou seu aplicativo de gerenciamento e concedeu a ele as permissões necessárias, seus aplicativos e serviços (por exemplo, Azure Pipelines) podem usar suas credenciais e permissões para interagir com a API do Microsoft Graph.