Configurar o portal para usar IdPs externos

O portal Apigee Developer Services (ou simplesmente o portal) atua como um cliente do Apigee Edge. Isso significa que o portal não e funcionar como um sistema independente. Em vez disso, grande parte das informações usadas pelo portal são, na verdade, armazenados no Edge. Quando necessário, o portal faz uma solicitação para recuperar informações do Edge ou para enviar informações ao Edge.

O portal está sempre associado a uma única organização de Edge. Quando você configura é possível especificar as credenciais básicas de autenticação (nome de usuário e senha) para um na organização que o portal usa para se comunicar com o Edge.

Se você ativar um IDP externo, como SAML ou LDAP, para a autenticação do Edge, você vai poder configurar o portal para usar a autenticação ao fazer solicitações ao Edge. Como configurar o portal para usar um IdP externo cria automaticamente uma nova conta de usuário de máquina na organização de Edge que o portal usa para fazer solicitações ao Edge. Para saber mais sobre usuários de máquinas, consulte Automatizar tarefas para IdPs externos.

O suporte ao IdP externo para o portal exige que você já tenha instalado e configurado Módulo SSO da Apigee no nó do Edge Management Server. O processo geral para ativar uma O IdP para o portal é o seguinte:

  1. Instale o módulo SSO da Apigee, conforme descrito em Instale o SSO da Apigee para alta disponibilidade.
  2. Instale o portal e verifique se a instalação está funcionando corretamente. Consulte Instalar o portal
  3. Configure o SAML ou o LDAP no portal, conforme descrito nesta seção.
  4. (Opcional) Desative a autenticação básica no Edge, conforme descrito em Desative a autenticação básica no Edge.

Criar um usuário de máquina para o portal

Quando um IdP externo é ativado, o Edge permite a geração automatizada de tokens OAuth2 por meio da da utilização de usuários de máquinas. Um usuário de máquina pode obter tokens OAuth2 sem precisar especificar um senha. Isso significa que é possível automatizar completamente o processo de receber e atualizar o OAuth2. tokens.

O processo de configuração do IdP para o portal cria automaticamente um usuário de máquina no organização associada ao portal. O portal usa essa conta de usuário da máquina para ao Edge. Para saber mais sobre usuários de máquinas, consulte Automatizar tarefas de IDPs externos.

Sobre a autenticação para o desenvolvedor do portal contas

Ao configurar o portal para usar um IdP externo, você permite que ele use um SAML ou LDAP para autenticar com o Edge para que o portal possa fazer solicitações a ele. No entanto, o portal também aceita um tipo de usuários chamados desenvolvedores.

Os desenvolvedores formam a comunidade de usuários que criam aplicativos usando suas APIs. Desenvolvedores de apps usar o portal para aprender sobre suas APIs, registrar os aplicativos que usam suas APIs, interagir com comunidade de desenvolvedores e para acessar informações estatísticas sobre o uso do aplicativo em um mais avançado.

Quando um desenvolvedor faz login no portal, ele é o responsável por: autenticar o desenvolvedor e aplicar permissões baseadas em papéis. O portal continua usar a autenticação básica com desenvolvedores mesmo depois de ativar a autenticação do IdP entre as o portal e o Edge. Para mais informações, consulte Comunicação entre o portal e o Edge.

Também é possível configurar o portal para usar SAML ou LDAP para autenticar desenvolvedores. Para um exemplo de como ativar o SAML usando módulos Drupal de terceiros, consulte Integração do SSO via SAML com o Portal do desenvolvedor

Arquivo de configuração do IdP para o portal

Para configurar um IdP externo para o portal, crie um arquivo de configuração que defina as configurações do portal.

O exemplo a seguir mostra um arquivo de configuração de portal compatível com IdP:

# IP address of Edge Management Server and the node on which the Apigee SSO module is installed.
IP1=22.222.22.222

# URL of Edge management API.
MGMT_URL=http://$IP1:8080/v1

# Organization associated with the portal.
EDGE_ORG=myorg

# Information about the Apigee SSO module (apigee-sso).
# Externally accessible IP or DNS of apigee-sso.
SSO_PUBLIC_URL_HOSTNAME=$IP1
SSO_PUBLIC_URL_PORT=9099
# Default is http. Set to https if you enabled TLS on apigee-sso.
SSO_PUBLIC_URL_SCHEME=http

# SSO admin credentials as set when you installed apigee-sso.
SSO_ADMIN_NAME=ssoadmin
SSO_ADMIN_SECRET=Secret123

# Enables or disables external IDP support.
# Default is "n", which disables external IDP support.
# Change it to "y" to enable external IDs support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth2 client used to connect to apigee-sso.
# The default client name is portalcli.
PORTALCLI_SSO_CLIENT_NAME=portalcli
# OAuth client password using uppercase, lowercase, number, and special characters.
PORTALCLI_SSO_CLIENT_SECRET=Abcdefg@1

# Email address and user info for the machine user created in the Edge org specified
# above by EDGE_ORG.
# This account is used by the portal to make requests to Edge.
# Add this email as an org admin before configuring the portal to use an external IDP.
DEVPORTAL_ADMIN_EMAIL=DevPortal_SAML@google.com
DEVPORTAL_ADMIN_FIRSTNAME=DevPortal
DEVPORTAL_ADMIN_LASTNAME=SAMLAdmin
DEVPORTAL_ADMIN_PWD=Abcdefg@1

# If set, the existing portal OAuth client is deleted and a new one is created.
# The default value is "n".
# Set to "y" when you configure the external IDP and change the value of
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

Para ativar o suporte ao IdP externo no portal:

  1. Na interface do Edge, adicione o usuário da máquina especificado por DEVPORTAL_ADMIN_EMAIL ao organização associada ao portal como um Administrador da Organização.
  2. Execute o seguinte comando para configurar o IdP externo no portal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile

    Em que configFile é o arquivo de configuração descrito acima.

  3. Faça login no portal como administrador.
  4. No menu principal do Drupal, selecione Configuration > Portal do desenvolvedor. O portal de configuração do IdP, incluindo as configurações do IdP externo:

    Observe o seguinte:

    • A caixa This org is SAML-enabled está marcada
    • O endpoint do módulo SSO da Apigee está preenchido
    • Os campos Chave de API e Chave secreta do cliente para os do cliente OAuth do portal são preenchidos
    • A mensagem Conexão bem-sucedida aparece no campo Teste Conexão.
  5. Clique no botão Testar conexão para testar a conexão novamente. a qualquer momento.

Para alterar esses valores posteriormente, atualize o arquivo de configuração e execute este procedimento de novo.

Desativar um IdP externo no portal

Se você desativar seu IdP externo para comunicações entre o portal e o Edge, o o portal não poderá mais fazer solicitações ao Edge. Os desenvolvedores podem fazer login mas não poderá visualizar produtos nem criar aplicativos.

Para desativar a autenticação do IdP externo no portal:

  1. Abra o arquivo de configuração usado anteriormente para ativar o IdP externo.
  2. Defina o valor da propriedade DEVPORTAL_SSO_ENABLED como n, já que a o exemplo a seguir mostra:
    DEVPORTAL_SSO_ENABLED=n
  3. Execute o seguinte comando para configurar o portal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile