Partilhar via


Proteger o acesso ao portal do programador na Gestão de API

APLICA-SE A: Developer | Básico | Básico v2 | Padrão | Padrão v2 | Prémio | Premium v2

O Gerenciamento de API tem um portal de desenvolvedor gerenciado, autônomo e totalmente personalizável, que pode ser usado externamente (ou internamente) para permitir que os usuários desenvolvedores descubram e interajam com as APIs publicadas por meio do Gerenciamento de API. O portal do desenvolvedor tem várias opções para facilitar a inscrição e o login seguros do usuário.

Nota

Por padrão, o portal do desenvolvedor permite o acesso anônimo. Esta configuração padrão significa que qualquer pessoa pode visualizar o portal e conteúdos, como APIs, sem iniciar sessão, embora funcionalidades como a utilização da consola de teste sejam restritas. Pode ativar uma configuração que exija que os utilizadores iniciem sessão para aceder ao portal do programador. No portal do Azure, no menu esquerdo da sua instância de Gerenciamento de API, em Portal do desenvolvedor, selecione Configurações de identidade.> Em Utilizadores anónimos, selecione (ativar) Redirecionar utilizadores anónimos para a página de início de sessão.

Opções de autenticação

  • Utilizadores externos - Para permitir o acesso ao portal de programadores para utilizadores externos, utilize fornecedores de identidade externos ativados através do Microsoft Entra External ID.

    • Por exemplo, quer que os utilizadores acedam ao portal de programadores usando contas de redes sociais existentes.
    • O serviço oferece funcionalidades para permitir a experiência de registo e início de sessão do utilizador final.

    Atualmente, o API Management suporta fornecedores de identidade externos quando configurados na sua entidade Microsoft Entra ID para a força de trabalho, não numa entidade externa. Para obter mais informações, consulte Como autorizar contas de desenvolvedor usando a ID externa do Microsoft Entra.

    Nota

    O Gerenciamento de API fornece suporte herdado para o Azure Ative Directory B2C como um provedor de identidade externo. No entanto, recomendamos que utilize o Microsoft Entra External ID como fornecedor externo de identidade em vez do Azure Active Directory B2C para novas implementações do portal de desenvolvimento de API Management.

    Importante

    A partir de 1º de maio de 2025, o Azure AD B2C não estará mais disponível para compra para novos clientes. Saiba mais nas nossas Perguntas Frequentes.

  • Utilizadores internos - Para permitir o acesso ao portal de programadores para utilizadores internos, utilize o seu tenant Microsoft Entra ID corporativo (força de trabalho). O Microsoft Entra ID fornece uma experiência de logon único (SSO) perfeita para usuários corporativos que precisam acessar e descobrir APIs por meio do portal do desenvolvedor.

    Para conhecer as etapas para habilitar a autenticação do Microsoft Entra no portal do desenvolvedor, consulte Como autorizar contas de desenvolvedor usando a ID do Microsoft Entra no Gerenciamento de API do Azure.

  • Autenticação básica - Use o nome de utilizador e a palavra-passe do portal de programadores incorporados. Esta opção permite aos programadores registar-se diretamente na API Management e iniciar sessão usando contas de utilizador API Management. O registo de utilizadores através desta opção é protegido por um serviço CAPTCHA.

    Atenção

    Embora possa usar autenticação básica para garantir o acesso dos utilizadores ao portal de programadores, recomendamos configurar um método de autenticação mais seguro, como o Microsoft Entra ID.

Console de teste do portal do desenvolvedor

Além de fornecer configuração para que os usuários desenvolvedores se inscrevam para acesso e entrem, o portal do desenvolvedor inclui um console de teste onde os desenvolvedores podem enviar solicitações de teste por meio do Gerenciamento de API para as APIs de back-end. Esse recurso de teste também existe para usuários contribuintes do Gerenciamento de API que gerenciam o serviço usando o portal do Azure.

Se proteger a API exposta através do Azure API Management com o OAuth 2.0 – ou seja, uma aplicação chamadora (portador) precisa de obter e passar um token de acesso válido – pode configurar a API Management para gerar um token válido em nome de um utilizador do portal Azure ou da consola de teste do portal para desenvolvedores. Para obter mais informações, consulte Como autorizar o console de teste do portal do desenvolvedor configurando a autorização de usuário do OAuth 2.0.

Para habilitar o console de teste para adquirir um token OAuth 2.0 válido para teste de API:

  1. Adicione um servidor de autorização de usuário OAuth 2.0 à sua instância. Você pode usar qualquer provedor OAuth 2.0, incluindo Microsoft Entra ID, Microsoft Entra External ID ou um provedor de identidade de terceiros.

  2. Configura a API com as definições desse servidor de autorização. No portal, configure a autorização do OAuth 2.0 na página Configurações da API Autorização de usuário de segurança>.>

    Captura de tela das configurações de OAuth para uma API no portal.

Essa configuração do OAuth 2.0 para teste de API é independente da configuração necessária para o acesso do usuário ao portal do desenvolvedor. No entanto, o fornecedor de identidade e o utilizador podem ser iguais. Por exemplo, uma aplicação intranet pode exigir o acesso do utilizador ao portal de programadores usando SSO com a sua identidade corporativa. Essa mesma identidade corporativa poderia obter um token, por meio do console de teste, para o serviço de back-end que está sendo chamado com o mesmo contexto de usuário.

Cenários

Diferentes opções de autenticação e autorização se aplicam a diferentes cenários. As seções a seguir exploram configurações de alto nível para três cenários de exemplo. Precisa de tomar mais medidas para proteger e configurar totalmente as APIs expostas através da API Management. No entanto, os cenários se concentram intencionalmente nas configurações mínimas recomendadas em cada caso para fornecer a autenticação e a autorização necessárias.

Cenário 1 - API e aplicativos da intranet

  • Um colaborador de Gestão de APIs e um programador de APIs backend querem publicar uma API que seja protegida pelo OAuth 2.0.
  • A API é consumida por aplicações de ambiente de trabalho cujos utilizadores iniciam sessão através do SSO através do Microsoft Entra ID.
  • Os desenvolvedores de aplicações desktop precisam de descobrir e testar as APIs através do portal de desenvolvimento de Gestão de APIs.

Principais configurações:

Configuração Referência
Autorize os utilizadores programadores do portal de Gestão de APIs utilizando as suas identidades corporativas e o Microsoft Entra ID. Autorizar as contas de programador ao utilizar o Microsoft Entra ID no API Management do Azure
Configure o console de teste no portal do desenvolvedor para obter um token OAuth 2.0 válido para que os desenvolvedores de aplicativos de desktop exerçam a API de back-end.

A mesma configuração pode ser usada para o console de teste no portal do Azure, que é acessível aos colaboradores do Gerenciamento de API e desenvolvedores de back-end.

O token pode ser usado em combinação com uma chave de subscrição de Gestão de API.
Como autorizar a consola de testes do portal do programador ao configurar a autorização de utilizador OAuth 2.0

Subscrições na Gestão de API do Azure
Valide o token OAuth 2.0 e as declarações quando uma API é chamada por meio do Gerenciamento de API com um token de acesso. Política validate-jwt

Vá um passo além com esse cenário, movendo o Gerenciamento de API para o perímetro da rede e controlando a entrada por meio de um proxy reverso. Para obter uma arquitetura de referência, consulte Proteger APIs com o Application Gateway e o Gerenciamento de API.

Cenário 2 - API externa, aplicativo de parceiro

  • Um colaborador de API Management e um desenvolvedor backend de APIs querem criar rapidamente uma prova de conceito para expor uma API legada através do Azure API Management. A API, através da API Management, é externa (para a internet).
  • A API utiliza autenticação de certificados do cliente e é consumida por uma nova aplicação pública de página única (SPA) desenvolvida offshore por um parceiro.
  • O SPA usa OAuth 2.0 com OpenID Connect (OIDC).
  • Os programadores de aplicações acedem à API num ambiente de teste através do portal de programadores, usando um endpoint backend de testes para acelerar o desenvolvimento frontend.

Principais configurações:

Configuração Referência
Configure o acesso do programador frontend ao portal de programadores usando a autenticação padrão do nome de utilizador e palavra-passe.

Os desenvolvedores também podem ser convidados para o portal do desenvolvedor.
Configurar usuários do portal do desenvolvedor para autenticação usando nomes de usuário e senhas

Como gerir contas de utilizador na Gestão de API do Azure
Valide o token OAuth 2.0 e as declarações quando o SPA chamar o Gerenciamento de API com um token de acesso. Neste caso, o público é o Gerenciamento de API. Política validate-jwt
Configure o Gerenciamento de API para usar a autenticação de certificado de cliente no back-end. Serviços de back-end seguros usando autenticação de certificado de cliente no Gerenciamento de API do Azure

Para levar este cenário mais longe, utilize o portal de programadores com autorização Microsoft Entra e colaboração Microsoft Entra B2B para permitir que os parceiros de entrega colaborem mais estreitamente. Considere delegar o acesso à API Management através do RBAC num ambiente de desenvolvimento ou teste e permitir o SSO no portal de programadores usando as suas próprias credenciais corporativas.

Cenário 3 - API externa, SaaS, aberta ao público

  • Um colaborador de Gestão de APIs e um programador de APIs backend escrevem várias novas APIs que os programadores da comunidade podem utilizar.

  • As APIs estão disponíveis publicamente, mas a funcionalidade total está protegida por um paywall e protegida através do uso do OAuth 2.0. Depois de comprar uma licença, o programador recebe as suas próprias credenciais de cliente e a chave de subscrição válida para uso em produção.

  • Os programadores externos da comunidade descobrem as APIs através do portal para programadores. Os programadores registam-se e iniciam sessão no portal de programadores usando as suas contas de redes sociais.

  • Os usuários do portal do desenvolvedor interessados com uma chave de assinatura de teste podem explorar a funcionalidade da API em um contexto de teste, sem a necessidade de comprar uma licença. A consola de testes do portal de programadores representa a aplicação que chama e gera um token de acesso predefinido para a API do backend.

    Atenção

    É necessário cuidado extra ao usar um fluxo de credenciais de cliente com o console de teste do portal do desenvolvedor. Consulte as considerações de segurança.

Principais configurações:

Configuração Referência
Configure produtos no Azure API Management para representarem as combinações de APIs que expõe aos programadores da comunidade.

Configure assinaturas para permitir que os desenvolvedores consumam as APIs.
Tutorial: criar e publicar um produto

Subscrições na Gestão de API do Azure
Configure o acesso de programadores da comunidade ao portal dos programadores usando o ID Externo do Microsoft Entra. A ID Externa do Microsoft Entra pode então ser configurada para trabalhar com um ou mais provedores de identidade de mídia social downstream. Como autorizar contas de desenvolvedor usando a ID Externa do Microsoft Entra no Gerenciamento de API do Azure
Configure a consola de testes no portal de programadores para obter um token OAuth 2.0 válido para a API backend usando o fluxo de credenciais do cliente. Como autorizar a consola de testes do portal do programador ao configurar a autorização de utilizador OAuth 2.0

Ajuste as etapas de configuração mostradas neste artigo para usar o fluxo de concessão de credenciais do cliente em vez do fluxo de concessão do código de autorização.

Vá um passo além, delegando o registro do usuário ou a assinatura do produto e estenda o processo com sua própria lógica.