Ir para o conteúdo

Perfil de Segurança da API OAuth 2.0 de Duas Pernas do Azure AD

Introdução

Importante

Azure Active Directory (Azure AD) agora é conhecido como Microsoft Entra ID.

Dentro de um perfil de segurança, você pode configurar o Microsoft Azure Active Directory (Azure AD) como um provedor de identidade OAuth 2.0 para fornecer aos consumidores de API acesso a uma API usando a autenticação do Azure AD.

Esta página mostra como configurar e usar a autenticação do Azure AD com uma API Jitterbit Custom, OData ou proxy de API seguindo estas etapas:

  1. Configurar o Azure AD como um provedor de identidade
    Configure a instância do Azure AD como um provedor de identidade para usar como entrada para configurar um perfil de segurança no API Manager.
  2. Conceder permissões de API ao Harmony
    Conceda permissões ao Harmony para usar as APIs do Azure AD com o aplicativo OAuth 2.0 que você criou na etapa anterior.
  3. Configurar um perfil de segurança no API Manager
    Configure o Azure AD como o provedor de identidade no API Manager.
  4. Atribuir um perfil de segurança no API Manager
    Atribua o perfil de segurança a uma ou mais APIs Jitterbit Custom, OData ou Proxy.
  5. Acesse uma API com autenticação Azure AD
    Os consumidores de API podem então usar a autenticação do Azure AD para consumir APIs Jitterbit Custom, OData ou Proxy às quais o perfil de segurança está atribuído.

Para obter informações adicionais, consulte [Configurar um aplicativo OpenID Connect OAuth da galeria de aplicativos Microsoft Entra da Microsoft]](https://learn.microsoft.com/en-us/entra/identity/saas-apps/openidoauth-tutorial) documentação.

Para a configuração do perfil de segurança OAuth de três pernas do Azure AD, consulte Perfil de segurança da API OAuth 2.0 de três pernas do Azure AD.

Pré-requisitos

A edição Microsoft Azure AD Premium P1 é necessária para configurar e usar o Azure AD como provedor de identidade.

Siga estes passos para configurar uma aplicação OAuth 2.0 no portal Microsoft Azure e obter o ID do Cliente, o Segredo do Cliente e o ID do Diretório necessários para configurar o Azure AD como fornecedor de identidade para um perfil de segurança:

  1. Faça login no portal do Microsoft Azure.

  2. No portal do Microsoft Azure, acesse Registros de aplicativos e clique em Novo registro:

    novo registro msft anotado

  3. Na tela Cadastre uma inscrição, especifique os detalhes iniciais da inscrição:

    anexo

    • Digite um Nome. Por exemplo, APIs do Jitterbit API Manager.
    • Em Tipos de contas compatíveis, selecione a opção apropriada para sua situação.
  4. Após clicar em Registrar, na tela Visão geral do novo aplicativo, o ID do aplicativo (cliente) e o ID do diretório (locatário) são exibidos. Guarde-os para uso posterior, pois serão necessários ao configurar o perfil de segurança no API Manager:

    anexo

  5. Na categoria Gerenciar à esquerda, selecione Certificados e segredos. Em seguida, em Segredos do cliente, clique em Novo segredo do cliente:

    anexo

  6. Forneça uma Descrição e defina o segredo como Nunca expirar. Em seguida, clique em Adicionar:

    anexo

  7. Use o ícone Copiar para a área de transferência para copiar o novo segredo do cliente. Guarde-o para uso posterior, pois será necessário ao configurar o perfil de segurança no API Manager.

    anexo

2. Conceda Permissões de API ao Harmony

Siga estas etapas para conceder permissões ao Harmony para usar as APIs do Azure AD com o aplicativo OAuth 2.0 que você criou na seção Configurar o Azure AD como um provedor de identidade. Se continuar a partir da seção anterior, você pode começar na etapa 3 abaixo.

  1. Faça login no portal do Microsoft Azure.

  2. No portal do Microsoft Azure, acesse Registros de aplicativos e selecione o aplicativo OAuth 2.0 que você criou na seção Configurar o Azure AD como um provedor de identidade (no exemplo, chamado Jitterbit API Manager APIs).

  3. Na categoria Gerenciar à esquerda, selecione Permissões de API. Em seguida, em Permissões configuradas, clique em Adicionar uma permissão:

    anexo

  4. Na tela Solicitar permissões de API, na aba APIs da Microsoft, selecione a API Microsoft Graph:

    anexo

  5. Na tela Solicitar permissões de API, selecione Permissões delegadas:

    anexo

  6. A seção Selecionar permissões é exibida agora. Dentro dele, selecione estas permissões:

    • Em Permissões OpenId, selecione offline_access, openid e profile:

      anexo

    • Em Usuário, selecione Usuário.Leitura:

      anexo

  7. Depois que essas permissões forem selecionadas, na parte inferior da tela Solicitar permissões de API, clique em Adicionar permissões.

  8. Você retornará à tela Permissões de API do aplicativo. Em Permissões configuradas, clique em Conceder consentimento do administrador para \<Diretório>:

    anexo

  9. Confirme a caixa de diálogo para conceder consentimento para o diretório:

    anexo

  10. Em Permissões configuradas, a coluna Status agora deve mostrar que o consentimento foi concedido para cada permissão adicionada:

    anexo

  11. Siga estas instruções adicionais etapas para criar um escopo personalizado:

    1. Navegue até Expor uma API e clique em Adicionar um escopo.
    2. Na caixa de diálogo Adicionar um escopo, insira um Escopo nome, Nome de exibição de consentimento do administrador, Descrição de consentimento do administrador e preencha o campos opcionais conforme desejado. Clique em Adicionar escopo:

      anexo

  12. Na categoria Gerenciar à esquerda, selecione Manifesto. Garanta que accessTokenAcceptedVersion está configurado para 2 e clique em Salvar:

    anexo

    Cuidado

    Seu token de autenticação não será validado se accessTokenAcceptedVersion não está definido para 2.

3. Configure um Perfil de Segurança no API Manager

Siga as instruções para Configurar um perfil de segurança em Configuração do perfil de segurança.

Cuidado

O Nome do perfil não deve conter espaços. Se o Nome do perfil contiver espaços, você receberá um erro ao tentar acessar uma API usando esse perfil de segurança. O Azure AD retorna um erro semelhante a este:

The reply URL specified in the request does not match the reply URLs configured for the application.

Durante a configuração, selecione OAuth 2.0 como o Tipo de autenticação e Azure AD como o Provedor OAuth:

anexo

Insira o escopo no campo OAuth Scope. O nome do escopo é <client_id>/.default. O ID do cliente foi obtido acima na etapa 1.

anexo

O campo Domínios Autorizados deve estar vazio:

anexo

Opcionalmente, insira o ID do cliente OAuth e o Segredo do cliente OAuth (para fins de teste) obtidos acima na etapa 1:

anexo

Insira o público, que é o ID do aplicativo (ID do cliente) do seu aplicativo, atribuído ao seu aplicativo no portal do Azure, conforme descrito acima na etapa 1.

anexo

Edite o OpenID Discovery URL, o OAuth Authorization URL, o OAuth Token URL e o User Info URL para substituir o ID do diretório do espaço reservado (yourDirectoryID) com o ID do diretório obtido acima na etapa 1.

anexo

anexo

Depois que os campos acima forem preenchidos, clique em Testar para validar o token de autenticação.

4. Atribuir um Perfil de Segurança no API Manager

Para usar o perfil de segurança com uma API, siga as instruções para configurar uma API Customizada, Serviço OData ou proxy de API e selecione o perfil de segurança configurado com a autenticação Azure AD OAuth 2.0.

5. Acesse uma API com Autenticação Azure AD

Depois de salvar e publicar uma API Customizada, Serviço OData ou proxy de API, sua API pode ser acessada por URL no aplicativo que chama a API usando o método de autenticação configurado.

Usar o OAuth 2.0 bidirecional é um processo de duas etapas:

  1. Gere um token OAuth passando o ID do cliente do Azure e o segredo do cliente obtidos acima na etapa 1 em uma solicitação de token de acesso de credenciais do cliente RFC6749 para o novo link URL do token OAuth de 2 pernas exibido em Perfis de segurança ou obtendo o token OAuth diretamente do Azure AD.
  2. Envie o token OAuth no cabeçalho da API usando o tipo de token "bearer" definido em RFC6750.

Para consumir a API, utilize o link para Copiar URL e utilize-o dentro da aplicação de chamada:

anexo

Se a API suportar GET, você também poderá colar o URL em um navegador da web para consumir a API manualmente.

Quando o Fluxo OAuth de 2 etapas está sendo usado, o Gateway de API busca o token de acesso e a autenticação ocorre automaticamente.

Se a autenticação for bem-sucedida, a payload esperada será exibida no navegador da web.