Autenticação e autorização com Entra ID

Azure API Management

Fiodar Sazanavets

Senior Software Engineer at Microsoft

Conceitos fundamentais de OAuth

Integração Entra ID - APIM

Azure API Management

Por que usar um provedor de identidade

Analogia com manobrista

  • Pense em um IdP como um manobrista
  • Seu carro tem itens valiosos no porta-luvas (dados sigilosos)
  • Você entrega ao manobrista uma chave de manobrista especial
    • permite apenas estacionar, sem acesso aos itens
  • Da mesma forma, o IdP gerencia a segurança do app, mas não acessa dados sigilosos nos apps
  • Exemplo: Entra ID atua como IdP e o API Manager como cliente
Azure API Management

Registrando o app no Entra ID

  • Entra ID fica no Azure Portal
  • É preciso acesso de colaborador com altos privilégios para gerenciá-lo
  • Para aplicar OAuth, adicione uma nova entidade em App Registration
  • Cada registro precisa de um nome e uma URL de redirecionamento válidos
  • Para APIM, a URL de redirecionamento é o endereço da instância APIM
  • Isso garante que o Entra ID redirecione as solicitações de volta ao APIM após o login

Registro de app no Entra ID

Azure API Management

Capturando informações do cliente

Informações do cliente no Entra ID

  • Client ID e Tenant ID

    • Formam o endereço público do aplicativo
    • O código usa para dizer ao Entra ID "quem" é o app
  • Client Secret

    • Funciona como a senha do aplicativo
    • O código a apresenta para provar identidade
    • Deve ser sempre armazenado com segurança e nunca exposto em código client-side
Azure API Management

Obtendo URLs de Endpoint

  • Obtenha as URLs de endpoint do IdP antes de conectar o cliente ao IdP

    • No Entra ID, clique em Endpoints na página Overview do registro do app
    • Capture os endpoints de authorization e token do OAuth 2.0
  • Authorization Endpoint

    • Para onde o código redireciona usuários para entrar
  • Token Endpoint

    • Onde o backend troca o authorization code por access token

Fluxo de autenticação do Entra ID

Azure API Management

Conectando o APIM ao Entra ID

Conexão OAuth e OIDC no APIM

  • No APIM, abra OAuth 2.0 + OpenID Connect em APIs

    • Defina um novo servidor de autorização
  • Configure o servidor com:

    • Endpoints de authorization e token
    • Client ID e Client Secret
    • Escopos expostos pela sua API
Azure API Management

Vamos praticar!

Azure API Management

Preparing Video For Download...