Configurar o SSO da Apigee para acesso HTTPS

O artigo Instalar e configurar o SSO da Apigee descreve como para instalar e configurar o módulo SSO da Apigee para usar HTTP na porta 9099, conforme especificado pelo a seguir, no arquivo de configuração do Edge:

SSO_TOMCAT_PROFILE=DEFAULT

Como alternativa, é possível definir SSO_TOMCAT_PROFILE como uma das seguintes opções: para ativar o acesso HTTPS:

  • SSL_PROXY::configura o apigee-sso, o módulo SSO da Apigee. em modo de proxy, o que significa que você instalou um balanceador de carga na frente de apigee-sso e o TLS encerrado no balanceador de carga. Depois você especifica a porta usada no apigee-sso para solicitações do balanceador de carga.
  • SSL_TERMINATION::ativou o acesso TLS a apigee-sso no a porta de sua escolha. Para este modo, é necessário especificar um keystore que contenha um certificado assinado por uma CA. Não é possível usar um certificado autoassinado.

Você pode ativar o HTTPS ao instalar e configurar inicialmente apigee-sso ou ative-a mais tarde.

A ativação do acesso HTTPS a apigee-sso usando um dos modos desativa o HTTP acesso. Ou seja, não é possível acessar apigee-sso usando HTTP e HTTPS ao mesmo tempo. concomitantemente.

Ativar o modo SSL_PROXY

No modo SSL_PROXY, o sistema usa um balanceador de carga na frente do módulo SSO da Apigee e encerra o TLS no balanceador de carga. Em na figura a seguir, o balanceador de carga encerra o TLS na porta 443 e depois encaminha as solicitações para módulo SSO da Apigee na porta 9099:

Nesta configuração, você confia na conexão do balanceador de carga com o módulo SSO da Apigee. portanto, não é necessário usar TLS para essa conexão. No entanto, entidades externas, como o IdP, agora precisam acessar o módulo SSO da Apigee na porta 443, não na porta desprotegida da 9099.

O motivo para configurar o módulo SSO da Apigee no modo SSL_PROXY é que o SSO da Apigee gera automaticamente URLs de redirecionamento usados externamente pelo IdP como parte do processo de autenticação de desenvolvimento de software. Consequentemente, esses URLs de redirecionamento devem conter o número da porta externa no carregamento balanceador, 443 neste exemplo, e não a porta interna no módulo SSO da Apigee, 9099.

Para configurar o módulo SSO da Apigee no modo SSL_PROXY:

  1. Adicione as seguintes configurações ao seu arquivo de configuração:
    # Enable SSL_PROXY mode.
    SSO_TOMCAT_PROFILE=SSL_PROXY
    
    # Specify the apigee-sso port, typically between 1025 and 65535.
    # Typically ports 1024 and below require root access by apigee-sso.
    # The default is 9099.
    SSO_TOMCAT_PORT=9099
    
    # Specify the port number on the load balancer for terminating TLS.
    # This port number is necessary for apigee-sso to auto-generate redirect URLs.
    SSO_TOMCAT_PROXY_PORT=443
    SSO_PUBLIC_URL_PORT=443
    
    # Set public access scheme of apigee-sso to https.
    SSO_PUBLIC_URL_SCHEME=https
  2. Configure o módulo SSO da Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Atualize a configuração do seu IdP para fazer uma solicitação HTTPS na porta 443 do carregamento para acessar o SSO da Apigee. Para mais informações, consulte uma das seguintes opções:
  4. Atualize a configuração da IU do Edge para HTTPS definindo as propriedades a seguir no arquivo de configuração:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    Em seguida, atualize a interface do Edge:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile

    Use o componente edge-ui para a interface clássica.

  5. Se você tiver instalado o portal Apigee Developer Services (ou simplesmente o portal), atualize-o para usar HTTPS e acessar o SSO da Apigee. Para mais informações, consulte Configurar o portal para usar IdPs externos

Consulte Ativar um IdP externo na interface do Edge para mais informações.

Ativar modo SSL_TERMINATION

Para o modo SSL_TERMINATION, você precisa:

  • Gere um certificado e uma chave TLS e armazene-os em um arquivo de keystore. Não é possível usar um certificado autoassinado. É preciso gerar um certificado de uma AC.
  • Atualizar as definições de configuração de apigee-sso.

Para criar um arquivo de keystore usando seu certificado e chave:

  1. Crie um diretório para o arquivo JKS:
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. Mude para o novo diretório:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. Crie um arquivo JKS contendo o certificado e a chave. É necessário especificar um keystore para este modo que contenha um certificado assinado por uma AC. Não é possível usar um certificado autoassinado. Para um exemplo de criar um arquivo JKS, consulte Como configurar TLS/SSL para Borda no Local.
  4. Tornar o arquivo JKS de propriedade da "apigee" usuário:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

Para configurar o módulo SSO da Apigee:

  1. Adicione as seguintes configurações ao seu arquivo de configuração:
    # Enable SSL_TERMINATION mode.
    SSO_TOMCAT_PROFILE=SSL_TERMINATION
    
    # Specify the path to the keystore file.
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    
    SSO_TOMCAT_KEYSTORE_ALIAS=sso
    
    # The password specified when you created the keystore.
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword
    
    # Specify the HTTPS port number between 1025 and 65535.
    # Typically ports 1024 and below require root access by apigee-sso.
    # The default is 9099.
    SSO_TOMCAT_PORT=9443
    SSO_PUBLIC_URL_PORT=9443
    
    # Set public access scheme of apigee-sso to https.
    SSO_PUBLIC_URL_SCHEME=https
  2. Configure o módulo SSO da Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Atualize a configuração do seu IdP para fazer uma solicitação HTTPS na porta 9443 do carregamento para acessar o SSO da Apigee. Confirme que nenhum outro serviço está usando essa porta.

    Para ver mais informações, consulte os seguintes tópicos:

  4. Atualize a configuração da IU do Edge para HTTPS definindo as propriedades a seguir:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https
  5. Se você instalou o portal de serviços para desenvolvedores, atualize-o para usar HTTPS para acessar o SSO da Apigee. Para mais informações, consulte Configurar o portal para usar IdPs externos.

Definir SSO_TOMCAT_PROXY_PORT ao usar o modo SSL_TERMINATION

É possível ter um balanceador de carga na frente do módulo SSO da Apigee que encerra o TLS na carga balanceador de carga, mas também ativa o TLS entre o balanceador de carga e o SSO da Apigee. Na figura acima para o modo SSL_PROXY, isso significa que a conexão do balanceador de carga com o SSO da Apigee usa TLS.

Neste cenário, você vai configurar o TLS no SSO da Apigee como fez acima para Modo SSL_TERMINATION. No entanto, se a carga balanceador usar um número de porta TLS diferente daquele usado pelo SSO da Apigee para TLS, especifique também a propriedade SSO_TOMCAT_PROXY_PORT no arquivo de configuração. Exemplo:

  • O balanceador de carga encerra o TLS na porta 443
  • O SSO da Apigee encerra o TLS na porta 9443

Inclua a seguinte configuração no arquivo de configuração:

# Specify the port number on the load balancer for terminating TLS.
# This port number is necessary for apigee-sso to generate redirect URLs.
SSO_TOMCAT_PROXY_PORT=443
SSO_PUBLIC_URL_PORT=443

A configuração do IdP e da UI do Edge para fazer solicitações HTTPS na porta 443