Configurare Apigee Apigee per l'accesso HTTPS

Edge for Private Cloud v4.18.05

Installa e configura Edge SSO descrive come installare e configurare il modulo Edge SSO per utilizzare HTTP sulla porta 9099, come specificato dalla seguente proprietà nel file di configurazione:

SSO_TOMCAT_PROFILE=DEFAULT

In alternativa, puoi impostare SSO_TOMCAT_PROFILE su uno dei seguenti valori per attivare l'accesso HTTPS:

  • SSL_PROXY: configura apigee-sso in modalità proxy, il che significa che hai installato un bilanciatore del carico davanti a apigee-sso e hai terminato TLS sul bilanciatore del carico. Quindi, specifica la porta utilizzata su apigee-sso per le richieste provenienti dal bilanciatore del carico.
  • SSL_TERMINATION: accesso TLS abilitato a apigee-sso, il modulo Edge SSO, sulla porta scelta. Per questa modalità devi specificare un keystore che contenga un certificato firmato da una CA. Non puoi utilizzare un certificato autofirmato.

Puoi scegliere di attivare HTTPS al momento dell'installazione e della configurazione iniziale di apigee-sso oppure puoi attivarlo in un secondo momento.

L'attivazione dell'accesso HTTPS a apigee-sso utilizzando una delle due modalità disattiva l'accesso HTTP. In altre parole, non puoi accedere a apigee-sso utilizzando contemporaneamente sia HTTP che HTTPS.

Abilita la modalità SSL_PROXY

In modalità SSL_PROXY, il sistema utilizza un bilanciatore del carico davanti al modulo Edge SSO e termina TLS sul bilanciatore del carico. Nella figura seguente, il bilanciatore del carico termina TLS sulla porta 443, quindi inoltra le richieste al modulo Edge SSO sulla porta 9099:

In questa configurazione, la connessione dal bilanciatore del carico al modulo SSO di Edge è considerata attendibile, pertanto non è necessario utilizzare TLS per questa connessione. Tuttavia, le entità esterne, come l'IDP SAML, ora devono accedere al modulo SSO di Edge sulla porta 443, non sulla porta 9099 non protetta.

Il motivo per cui configurare il modulo Edge SSO in modalità SSL_PROXY è che il modulo Edge SSO genera automaticamente gli URL di reindirizzamento utilizzati esternamente dall'IDP nell'ambito del processo di autenticazione. Pertanto, questi URL di reindirizzamento devono contenere il numero di porta esterno sul bilanciatore del carico, 443 in questo esempio, e non la porta interna sul modulo Edge SSO, 9099.

Nota: Non è necessario creare un certificato e una chiave TLS per la modalità SSL_PROXY perché la connessione dal bilanciatore del carico al modulo Edge SSO utilizza HTTP.

Per configurare il modulo Edge SSO per la modalità SSL_PROXY:

  1. Aggiungi le seguenti impostazioni al file di configurazione:
    # 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. Configura il modulo Edge SSO:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Aggiorna la configurazione dell'IDP per effettuare una richiesta HTTPS sulla porta 443 del bilanciatore del carico per accedere a Edge SSO. Per saperne di più, consulta Configura il tuo IdP SAML.
  4. Aggiorna la configurazione della UI Edge per HTTPS impostando le seguenti proprietà nel file di configurazione:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    Quindi aggiorna la UI di Edge:

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

    Per saperne di più, consulta Abilita SAML nella UI di Edge.

  5. Se hai installato il portale Apigee Developer Services (o semplicemente il portale), aggiornalo in modo che utilizzi HTTPS per accedere a Edge SSO. Per saperne di più, consulta Configurazione del portale per l'utilizzo di SAML per comunicare con Edge.

Abilita la modalità SSL_TERMINATION

Per la modalità SSL_TERMINATION, devi:

  • Generato un certificato e una chiave TLS e li hai archiviati in un file archivio chiavi. Non puoi utilizzare un certificato autofirmato. Devi generare un certificato da una CA.
  • Aggiorna le impostazioni di configurazione per apigee-sso.

Per creare un file keystore dal certificato e dalla chiave:

  1. Crea una directory per il file JKS:
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. Passa alla nuova directory:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. Crea un file JKS contenente il certificato e la chiave. Per questa modalità devi specificare un keystore che contenga un certificato firmato da una CA. Non puoi utilizzare un certificato autofirmato. Per un esempio di creazione di un file JKS, consulta Configurazione di TLS/SSL per Edge on-premise.
  4. Imposta l'utente "apigee" come proprietario del file JKS:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

Per configurare il modulo Edge SSO:

  1. Aggiungi le seguenti impostazioni al file di configurazione:
    # 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. Configura il modulo Edge SSO:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Aggiorna la configurazione dell'IDP per effettuare una richiesta HTTPS sulla porta 9443 del bilanciatore del carico per accedere a Edge SSO. Per saperne di più, consulta Configura il tuo IdP SAML.
  4. Aggiorna la configurazione della UI Edge per HTTPS impostando le seguenti proprietà:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https

    Per saperne di più, consulta Abilita SAML nella UI di Edge.

  5. Se hai installato il portale per gli sviluppatori, aggiornalo in modo che utilizzi HTTPS per accedere a Edge SSO. Per saperne di più, consulta Configurazione del portale Developer Services per l'utilizzo di SAML per comunicare con Edge.

Impostazione di SSO_TOMCAT_PROXY_PORT quando si utilizza la modalità SSL_TERMINATION

Potresti avere un bilanciatore del carico davanti al modulo SSO Edge che termina TLS sul bilanciatore del carico, ma abilita anche TLS tra il bilanciatore del carico e SSO Edge. Nella figura sopra per la modalità SSL_PROXY, ciò significa che la connessione dal bilanciatore del carico a Edge SSO utilizza TLS.

In questo scenario, configuri TLS su Edge SSO esattamente come hai fatto sopra per la modalità SSL_TERMINATION. Tuttavia, se il bilanciatore del carico utilizza un numero di porta TLS diverso da quello utilizzato da Edge SSO per TLS, devi specificare anche la proprietà SSO_TOMCAT_PROXY_PORT nel file di configurazione. Ad esempio:

  • Il bilanciatore del carico termina TLS sulla porta 443
  • Edge SSO termina TLS sulla porta 9443

Assicurati di includere la seguente impostazione nel file di configurazione:

# 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

Configura l'IDP e la UI di Edge per effettuare richieste HTTPS sulla porta 443.