Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
APLICA-SE A: Todas as camadas de gerenciamento de API
Este artigo orienta-o pelos passos necessários para criar uma ligação gerida à Microsoft Graph API a partir do Azure API Management. Use o fornecedor de identidade Microsoft Entra para chamar a Microsoft Graph API. Este exemplo utiliza o tipo de concessão de código de autorização.
Observação
Neste artigo, pode configurar o fornecedor de credenciais utilizando um tipo tradicional de concessão de código de autorização com um segredo do cliente ou um tipo de concessão de código de autorização com credenciais de identidade federadas. Escolhe o caminho que melhor se adequa ao teu cenário. As credenciais de identidade federada eliminam a necessidade de gerir e substituir segredos de autenticação. Para mais informações, consulte Visão Geral das credenciais de identidade federada no Microsoft Entra ID.
Você aprende a:
- Criar uma aplicação Microsoft Entra
- Criar e configurar um provedor de credenciais no Gerenciamento de API
- Configurar uma conexão
- Criar uma API do Microsoft Graph no Gerenciamento de API e configurar uma política
- Teste sua API do Microsoft Graph no Gerenciamento de API
Pré-requisitos
Acesso a um locatário do Microsoft Entra onde é possível ter permissões para criar um registo de aplicação e dar consentimento de administrador para as permissões da aplicação. Para saber mais, consulte Restringir quem pode criar aplicativos.
Se você quiser criar seu próprio locatário de desenvolvedor, você pode se inscrever para o Microsoft 365 Developer Program.
Uma instância de Gerenciamento de API em execução. Se você não tiver uma, consulte Criar uma nova instância de Gerenciamento de API do Azure.
Habilite uma identidade gerenciada atribuída ao sistema na instância de Gerenciamento de API.
Etapa 1: Criar um aplicativo Microsoft Entra
Crie um aplicativo Microsoft Entra para a API e dê a ele as permissões apropriadas para as solicitações que você deseja chamar.
Inicia sessão no portal Azure com uma conta que tenha permissões suficientes no tenant.
Procure e selecione Microsoft Entra ID.
Em Gerir no menu da barra lateral, selecione Registos de aplicações e, em seguida, selecione + Novo registo.
Em Registar uma candidatura, introduza as definições de registo da sua candidatura:
Em Nome, insira um nome significativo para o aplicativo, como MicrosoftGraphAuth.
Em Tipos de Conta Suportados, selecione uma opção que se adeque ao seu cenário, como Contas apenas neste diretório organizacional (Inquilino único).
Defina o URI de Redirecionamento para Web e introduza
https://authorization-manager.consent.azure-apim.net/redirect/apim/<YOUR-APIM-SERVICENAME>, substituindo o nome do serviço de Gestão de API onde configura o fornecedor de credenciais.Selecione Register.
No menu lateral, selecione Gerir>permissões da API. Certifique-se de que a permissão User.Read com o tipo Delegated já foi adicionada.
Selecione + Adicionar uma permissão.
- Selecione Microsoft Graph e, em seguida, selecione Permissões delegadas.
- Digite Team, expanda as opções Team e selecione Team.ReadBasic.All. Selecione Adicionar permissões.
- Em seguida, selecione Conceder consentimento de administrador para o diretório padrão. O status das permissões muda para Granted for Default Directory.
No menu da barra lateral, selecione Visão geral. Na Visão Geral, encontre o valor do ID da Aplicação (cliente ) e grave-o para uso no Passo 2. Se necessário, copie também o valor do ID do Diretório (inquilino ).
Configurar o segredo do cliente
No menu lateral, selecione Gerir>Certificados & Segredos, e depois selecione + Novo segredo do cliente.
- Insira uma descrição.
- Selecione uma opção para Expira.
- Selecione Adicionar.
- Copie o Valor do segredo do cliente antes de sair da página. Você precisa dele na Etapa 2.
Etapa 2: Configurar um provedor de credenciais no Gerenciamento de API
Vá para sua instância de Gerenciamento de API.
Em APIs no menu da barra lateral, selecione Gestor de credenciais e, em seguida, selecione + Criar.
Em Criar fornecedor de credenciais, introduza as seguintes definições e selecione Criar:
Configurações Valor Nome do provedor de credenciais Um nome de sua escolha, como MicrosoftEntraID-01 Provedor de identidade Selecione Azure Ative Directory v1 Tipo de subvenção Selecione o código de autorização URL de autorização Opcional para o provedor de identidade Microsoft Entra. A predefinição é https://login.microsoftonline.com.ID de Cliente Cole o valor copiado anteriormente do registro do aplicativo Segredo do cliente Cole o valor secreto do cliente que criou no Passo 1 URL do recurso https://graph.microsoft.comID do Inquilino Opcional para o provedor de identidade Microsoft Entra. O padrão é Comum. Escopos Opcional para o fornecedor de identidade Microsoft Entra para este tipo de concessão. Configurado automaticamente a partir das permissões de API do aplicativo Microsoft Entra. Na caixa de diálogo que aparece, reveja o URL de redirecionamento OAuth que está mostrado e selecione Sim para confirmar se corresponde ao URL que introduziu no registo da aplicação.
Etapa 2: Configurar um provedor de credenciais no Gerenciamento de API
A Gestão de APIs pode gerar credenciais de identidade federadas. Quando adicionados ao registo da sua aplicação Microsoft Entra, estabelecem uma relação de confiança entre a Gestão de APIs e o Microsoft Entra. Isto elimina a necessidade de gerir segredos para autenticação.
Vá para sua instância de Gerenciamento de API.
Em APIs no menu da barra lateral, selecione Gestor de credenciais e, em seguida, selecione + Criar.
Em Criar fornecedor de credenciais, introduza as seguintes definições e selecione Criar:
Configurações Valor Nome do provedor de credenciais Um nome à sua escolha, como MicrosoftEntraID-federated-01 Provedor de identidade Selecione Azure Ative Directory v1 Tipo de subvenção Selecione o código de autorização com credenciais de identidade federada URL de autorização Opcional para o provedor de identidade Microsoft Entra. A predefinição é https://login.microsoftonline.com.ID de Cliente Cola o valor que copiaste anteriormente do registo da aplicação. URL do recurso https://graph.microsoft.comID do Inquilino Cola o valor que copiaste anteriormente do registo da aplicação. Escopos Opcional para o provedor de identidade Microsoft Entra. Configurado automaticamente a partir das permissões de API do aplicativo Microsoft Entra. Na caixa de diálogo que aparece, complete os seguintes passos:
Revise o URL de redirecionamento OAuth que está mostrado e confirme se corresponde ao URL que introduziu no registo da aplicação.
Selecione o link da aplicação Entra para adicionar as credenciais de identidade federada exibidas ao registo da sua aplicação.
Na janela Adicionar uma credencial , selecione Outro emissor para o cenário de credencial federada.
Em Conectar a sua conta, copie e cole os valores do Emissor e do Identificador do Sujeito da caixa de diálogo nos campos correspondentes.
Em detalhes da credencial, insira um Nome e uma Descrição opcional para a credencial. Confirme que a Audiência é a mesma que aparece na caixa de diálogo na Gestão de APIs.
Selecione Adicionar para criar a credencial federada e completar a ligação entre a Gestão de API e o registo da sua aplicação Microsoft Entra.
Na caixa de diálogo de Gestão de APIs, selecione Sim para confirmar que quer avançar.
Etapa 3: Configurar uma conexão
Na guia Conexão , conclua as etapas para sua conexão com o provedor.
Observação
Quando você configura uma conexão, o Gerenciamento de API por padrão define uma política de acesso que permite o acesso pela identidade gerenciada atribuída aos sistemas da instância. Este acesso é suficiente para este exemplo. Você pode adicionar mais políticas de acesso conforme necessário.
- Introduza um Nome de ligação e, em seguida, selecione Guardar.
- Em Etapa 2: Faça login na sua conexão (para o tipo de concessão de código de autorização), selecione o botão Login . Complete os passos com o seu fornecedor de identidade para autorizar o acesso e volte à Gestão de APIs. Após iniciar sessão bem-sucedido, o estado da ligação muda para Ligado.
- Em Etapa 3: Determinar quem terá acesso a essa conexão (política de acesso), o membro da identidade gerenciada será listado. Adicionar outros membros é opcional, dependendo do seu cenário.
- Selecione Concluir.
A nova conexão aparece na lista de conexões e mostra um status de Conectado. Se desejar criar outra conexão para o provedor de credenciais, conclua as etapas anteriores.
Sugestão
Use o portal para adicionar, atualizar ou excluir conexões com um provedor de credenciais a qualquer momento. Para obter mais informações, consulte Configurar várias conexões.
Observação
Se você atualizar suas permissões do Microsoft Graph após esta etapa, precisará repetir as etapas 2 e 3.
Etapa 4: Criar uma API do Microsoft Graph no Gerenciamento de API e configurar uma política
Em APIs no menu da barra lateral, selecione APIs.
Selecione HTTP e insira as seguintes configurações. Em seguida, selecione Criar.
Configuração Valor Nome de exibição Msgraph URL do serviço Web https://graph.microsoft.com/v1.0Sufixo de URL da API Msgraph Vai à API recém-criada e seleciona + Adicionar operação. Insira as seguintes configurações e selecione Salvar.
Configuração Valor Nome de exibição getprofile URL para GET /me Siga as etapas anteriores para adicionar outra operação com as seguintes configurações.
Configuração Valor Nome de exibição getJoinedTeams URL para GET /me/joinedTeams Selecione Todas as operações. Na seção Processamento de entrada, selecione o ícone </> (editor de código).
Copie e cole o trecho a seguir. Atualize a
get-authorization-contextpolítica com os nomes do provedor de credenciais e da conexão que você configurou nas etapas anteriores e selecione Salvar.- Substitua o nome do seu fornecedor de credencial pelo valor de
provider-id. - Substitua o nome da sua ligação pelo valor de
authorization-id.
<policies> <inbound> <base /> <get-authorization-context provider-id="MicrosoftEntraID-01" authorization-id="first-connection" context-variable-name="auth-context" identity-type="managed" ignore-error="false" /> <set-header name="Authorization" exists-action="override"> <value>@("Bearer " + ((Authorization)context.Variables.GetValueOrDefault("auth-context"))?.AccessToken)</value> </set-header> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies>- Substitua o nome do seu fornecedor de credencial pelo valor de
A definição de política precedente consiste em duas partes:
- A política get-authorization-context busca um token de autorização fazendo referência ao provedor de credenciais e à conexão que você criou anteriormente.
- A política set-header cria um cabeçalho HTTP com o token de acesso buscado.
Etapa 5: Testar a API
No separador Teste , selecione uma operação que tenha configurado.
Selecione Enviar.
Uma resposta bem-sucedida retorna dados do usuário do Microsoft Graph.