Configurar o SSO da Apigee para acesso HTTPS

Instalar e configurar o SSO da Apigee descreve como instalar e configurar o SSO da Apigee para usar HTTP na porta padrão 9099. Por padrão, o SSO da Apigee usa HTTP.

Para ativar o acesso HTTPS, configure o SSO da Apigee usando um destes modos:

  • SSL_PROXY::configura o SSO da Apigee no modo de proxy, o que significa que você instalou um balanceador de carga na frente do nó OpenLDAP e encerrou o TLS no balanceador de carga. O SSO da Apigee fica à escuta no HTTP, mas emite URLs usando o esquema HTTPS do balanceador de carga.
  • SSL_TERMINATION: ativa o acesso TLS diretamente no SSO da Apigee na porta de sua escolha. É necessário especificar um certificado codificado em PEM padrão e uma chave privada para esse modo.

Você pode ativar o HTTPS ao instalar e configurar o SSO da Apigee ou ativá-lo mais tarde.

As seções a seguir descrevem os tokens adicionais a serem atualizados nos arquivos de configuração (/opt/silent.conf e /opt/apigee/customer/application/openldap.properties). O script setup-sso analisa automaticamente as variáveis dos dois arquivos, aplica a configuração e inicia o SSO da Apigee incorporado. Consulte Instalar e configurar o SSO da Apigee para ver os tokens que o arquivo de configuração precisa ter para uma configuração de SSO bem-sucedida.

Ativar o modo SSL_PROXY

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

SSO com balanceador de carga

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

O motivo para configurar o 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. Portanto, esses URLs de redirecionamento precisam conter o número da porta externa e o esquema HTTPS no balanceador de carga (porta 443 neste exemplo), e não a porta HTTP interna no SSO da Apigee (porta 9099).

Para configurar o SSO da Apigee para o modo SSL_PROXY:

  1. Adicione as seguintes configurações ao arquivo /opt/apigee/customer/application/openldap.properties:
    # Update the port the Apigee SSO listens on locally.
    etc_sso_config_bind_port=9099
    
    # Set the publicly accessible Issuer URL (the load balancer URL).
    # This prevents setup-sso from automatically appending the port.
    etc_sso_config_issuer_url=https://load_balancer_IP_or_DNS
  2. Atualize a configuração da nova interface do Edge para HTTPS. Para isso, verifique se as seguintes propriedades estão definidas no arquivo /opt/silent.conf:
    SSO_PUBLIC_URL_SCHEME=https
    SSO_PUBLIC_URL_HOSTNAME=load_balancer_IP_or_DNS
    SSO_PUBLIC_URL_PORT=443
  3. Execute o script setup-sso para aplicar a configuração, reiniciar o SSO da Apigee e atualizar automaticamente o servidor de gerenciamento do Edge:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf
  4. Atualize a configuração do IdP (como Okta ou ADFS) para fazer uma solicitação HTTPS ao balanceador de carga para acessar o SSO da Apigee. Para mais informações, consulte Configurar o IdP SAML.
  5. Execute o script de configuração da interface para configurar e reiniciar automaticamente o novo servidor da interface do Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f /opt/silent.conf

Ativar o modo SSL_TERMINATION

Para o modo SSL_TERMINATION, é necessário:

  • Gerar um certificado e uma chave TLS padrão codificados em PEM. Para produção, é necessário gerar um certificado assinado por uma AC. Não é possível usar um certificado autoassinado.
  • Atualizar os arquivos de propriedade para vincular à porta segura e carregar os certificados.

Para instalar o certificado e a chave:

  1. Crie um diretório para os certificados no nó OpenLDAP:
    sudo mkdir -p /opt/apigee/customer/application/certs/
  2. Copie o certificado codificado em PEM (.crt) e a chave privada (.key) para o novo diretório.
  3. Mude o proprietário do diretório e dos arquivos para o usuário "apigee" e proteja as permissões:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/certs/
    sudo chmod 600 /opt/apigee/customer/application/certs/sso.key
    sudo chmod 644 /opt/apigee/customer/application/certs/sso.crt

Para configurar o SSO da Apigee para o modo SSL_TERMINATION:

  1. Adicione as seguintes configurações ao arquivo /opt/apigee/customer/application/openldap.properties:
    # 1. Enable HTTPS listener and configure TLS cert/key
    lib_settings_enable_sso_https=true
    etc_sso_config_bind_port_ssl=9443
    etc_sso_config_tls_cert_file=/opt/apigee/customer/application/certs/sso.crt
    etc_sso_config_tls_key_file=/opt/apigee/customer/application/certs/sso.key
    
    # 2. Update the Issuer URL to use HTTPS and the SSL port/hostname
    etc_sso_config_issuer_url=https://hostname_or_IP_of_openldap:9443
    
    # 3. (Optional) Disable plain HTTP if only HTTPS is desired
    # lib_settings_enable_sso_http=false
  2. Atualize a configuração da nova interface do Edge para HTTPS. Para isso, verifique se as seguintes propriedades estão definidas no arquivo /opt/silent.conf:
    MANAGEMENT_UI_SSO_ENABLED=y
    SSO_PUBLIC_URL_SCHEME=https
    SSO_PUBLIC_URL_HOSTNAME=hostname_or_IP_of_openldap
    SSO_PUBLIC_URL_PORT=9443
  3. Execute o script setup-sso para aplicar a configuração, reiniciar o SSO da Apigee e atualizar automaticamente o servidor de gerenciamento do Edge:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf
  4. Atualize a configuração do IdP (como Okta ou ADFS) para fazer uma solicitação HTTPS na porta 9443 para acessar o SSO da Apigee. Para mais informações, consulte Configurar o IdP SAML.
  5. Execute o script de configuração da interface para configurar automaticamente o novo servidor da interface do Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f /opt/silent.conf