Visão geral da autenticação do IdP externo (nova IU do Edge)

A interface do Edge e a API de gerenciamento do Edge operam fazendo solicitações para o servidor de gerenciamento do Edge, em que o servidor de gerenciamento oferece suporte aos seguintes tipos de autenticação:

  • Autenticação básica:faça login na interface do Edge ou faça solicitações para a API de gerenciamento do Edge transmitindo seu nome de usuário e senha.
  • OAuth2:troque suas credenciais de autenticação básica do Edge por um token de acesso e de atualização do OAuth2. Faça chamadas para a API de gerenciamento do Edge transmitindo o token de acesso OAuth2 no cabeçalho Bearer de uma chamada de API.

O Edge oferece suporte ao uso dos seguintes provedores de identificação (IDPs) externos para autenticação:

  • Linguagem de marcação para autorização de segurança (SAML) 2.0:gere o acesso OAuth a partir de declarações SAML retornadas por um provedor de identidade SAML.
  • Protocolo leve de acesso a diretórios (LDAP): use métodos de autenticação de vinculação simples ou pesquisa e vinculação do LDAP para gerar tokens de acesso OAuth.

Os IdPs SAML e LDAP oferecem suporte a um ambiente de login único (SSO). Ao usar um IDP externo com o Edge, é possível oferecer suporte ao SSO para a interface e a API do Edge, além de outros serviços que você oferece e que também oferecem suporte ao IDP externo.

As instruções nesta seção para ativar o suporte a IdP externo são diferentes da Autenticação externa nas seguintes maneiras:

  • Esta seção adiciona suporte a SSO
  • Esta seção é destinada aos usuários da interface do Edge (não da IU clássica).
  • Esta seção só é compatível com a versão 4.19.06 e mais recentes

Sobre o SSO da Apigee

Para oferecer suporte a SAML ou LDAP no Edge, instale apigee-sso, o módulo SSO da Apigee. A imagem a seguir mostra o SSO do Apigee em uma instalação do Edge para nuvem privada:

Uso de portas para o SSO da Apigee

É possível instalar o módulo SSO da Apigee no mesmo nó da IU do Edge e do servidor de gerenciamento ou no próprio nó. Verifique se o SSO da Apigee tem acesso ao servidor de gerenciamento pela porta 8080.

A porta 9099 precisa estar aberta no nó SSO da Apigee para permitir o acesso ao SSO da Apigee em um navegador, no IdP SAML ou LDAP e na interface do servidor de gerenciamento e da borda. Como parte da configuração do SSO do Apigee, é possível especificar que a conexão externa usa o protocolo HTTP ou o HTTPS criptografado.

O SSO da Apigee usa um banco de dados Postgres acessível na porta 5432 no nó Postgres. Normalmente, é possível usar o mesmo servidor Postgres que você instalou com o Edge, um servidor Postgres autônomo ou dois servidores Postgres configurados no modo mestre/standby. Se a carga no seu servidor Postgres for alta, você também poderá criar um nó Postgres separado apenas para o SSO do Apigee.

Suporte adicionado para OAuth2 no Edge para nuvem privada

Como mencionado acima, a implementação do SAML no Edge depende de tokens de acesso OAuth2.Portanto, o suporte ao OAuth2 foi adicionado ao Edge para nuvem privada. Para mais informações, consulte Introdução ao OAuth 2.0.

Sobre o SAML

A autenticação SAML oferece várias vantagens. Ao usar a SAML, você pode:

  • Assuma o controle total do gerenciamento de usuários. Quando os usuários saem da organização e são desprovisionados de maneira centralizada, o acesso deles ao Edge é automaticamente negado.
  • Controle como os usuários se autenticam para acessar o Edge. É possível escolher diferentes tipos de autenticação para diferentes organizações do Edge.
  • Controle as políticas de autenticação. Seu provedor SAML pode permitir políticas de autenticação que estejam mais alinhadas aos padrões da sua empresa.
  • É possível monitorar logins, logouts, tentativas malsucedidas de login e atividades de alto risco na implantação do Edge.

Com o SAML ativado, o acesso à interface do Edge e à API de gerenciamento do Edge usa tokens de acesso OAuth2. Esses tokens são gerados pelo módulo SSO da Apigee, que aceita declarações SAML retornadas pelo IdP.

Depois de gerado a partir de uma declaração SAML, o token OAuth é válido por 30 minutos, e o token de atualização é válido por 24 horas. Seu ambiente de desenvolvimento pode oferecer suporte à automação de tarefas comuns de desenvolvimento, como automação de testes ou integração/implantação contínuas (CI/CD), que exigem tokens com uma duração mais longa. Consulte Como usar o SAML com tarefas automatizadas para informações sobre como criar tokens especiais para tarefas automatizadas.

Sobre o LDAP

O protocolo leve de acesso a diretórios (LDAP) é um protocolo de aplicativo aberto padrão do setor para acessar e manter serviços de informações de diretório distribuídos. Os serviços de diretório podem fornecer qualquer conjunto organizado de registros, geralmente com uma estrutura hierárquica, como um diretório de e-mail corporativo.

A autenticação LDAP no SSO da Apigee usa o módulo LDAP do Spring Security. Como resultado, os métodos de autenticação e as opções de configuração para o suporte ao LDAP do SSO do Apigee são diretamente correlacionados aos encontrados no LDAP do Spring Security.

O LDAP com Edge para a nuvem privada aceita os seguintes métodos de autenticação em um servidor compatível com LDAP:

  • Pesquisar e vincular (vinculação indireta)
  • Vinculação simples (vinculação direta)

O SSO do Apigee tenta recuperar o endereço de e-mail do usuário e atualizar o registro de usuário interno com ele para que haja um endereço de e-mail atual em arquivo, já que o Edge usa esse e-mail para fins de autorização.

URLs da API e da IU do Edge

O URL usado para acessar a interface e a API Edge Management é o mesmo usado antes de ativar o SAML ou o LDAP. Para a interface do Edge:

http://edge_UI_IP_DNS:9000
https://edge_UI_IP_DNS:9000

em que edge_UI_IP_DNS é o endereço IP ou o nome DNS da máquina que hospeda a interface do Edge. Como parte da configuração da interface do Edge, é possível especificar que a conexão use o protocolo HTTP ou o HTTPS criptografado.

Para a API Edge Management:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

em que ms_IP_DNS é o endereço IP ou o nome DNS do servidor de gerenciamento. Como parte da configuração da API, é possível especificar que a conexão use HTTP ou o protocolo HTTPS criptografado.

Configurar o TLS no SSO da Apigee

Por padrão, a conexão com o SSO do Apigee usa HTTP na porta 9099 no nó que hospeda apigee-sso, o módulo do SSO do Apigee. Integrado ao apigee-sso, há uma instância do Tomcat que processa as solicitações HTTP e HTTPS.

O SSO da Apigee e o Tomcat são compatíveis com três modos de conexão:

  • PADRÃO:a configuração padrão oferece suporte a solicitações HTTP na porta 9099.
  • SSL_TERMINATION::acesso TLS ativado ao SSO do Apigee na porta de sua escolha. É necessário especificar uma chave e um certificado TLS para esse modo.
  • SSL_PROXY::configura o SSO do Apigee no modo proxy, ou seja, você instalou um balanceador de carga na frente de apigee-sso e encerrou o TLS no balanceador de carga. É possível especificar a porta usada em apigee-sso para solicitações do balanceador de carga.

Ativar o suporte a IdPs externos para o portal

Depois de ativar o suporte a IdPs externos para o Edge, você pode ativar esse recurso para o portal de serviços para desenvolvedores do Apigee (ou simplesmente o portal). O portal oferece suporte à autenticação SAML e LDAP ao fazer solicitações para o Edge. Isso é diferente da autenticação SAML e LDAP para login de desenvolvedor no portal. Você configura a autenticação de IDP externa para login de desenvolvedor separadamente. Consulte Configurar o portal para usar IDPs para mais informações.

Como parte da configuração do portal, especifique o URL do módulo SSO da Apigee instalado com o Edge:

Fluxo de solicitação/resposta com tokens