Configurazione del servizio SSO di Apigee per l'accesso HTTPS

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

SSO_TOMCAT_PROFILE=DEFAULT

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

  • SSL_PROXY: configura apigee-sso, il modulo SSO di Apigee, 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, specificherai la porta utilizzata su apigee-sso per le richieste dal bilanciatore del carico.
  • SSL_TERMINATION: l'accesso TLS è abilitato per apigee-sso sulla porta scelta. Devi specificare un archivio chiavi per questa modalità che contenga un certificato firmato da una CA. Non puoi utilizzare un certificato autofirmato.

Puoi scegliere di abilitare HTTPS nel momento in cui installi e configuri apigee-sso per la prima volta oppure puoi abilitarlo in un secondo momento.

Se abiliti l'accesso HTTPS a apigee-sso utilizzando una delle due modalità, l'accesso HTTP verrà disabilitato. Ciò significa che non puoi accedere a apigee-sso utilizzando contemporaneamente HTTP e HTTPS.

Attiva la modalità SSL_PROXY

In modalità SSL_PROXY, il sistema utilizza un bilanciatore del carico davanti al modulo SSO Apigee 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 Apigee SSO sulla porta 9099:

In questa configurazione, consideri attendibile la connessione dal bilanciatore del carico al modulo SSO Apigee, perciò non è necessario utilizzare TLS per questa connessione. Tuttavia, le entità esterne, come l'IdP, devono ora accedere al modulo SSO Apigee sulla porta 443, non sulla porta non protetta 9099.

Il motivo per cui il modulo SSO Apigee è configurato in modalità SSL_PROXY genera automaticamente gli URL di reindirizzamento utilizzati esternamente dall'IdP come parte del processo di autenticazione. Di conseguenza, questi URL di reindirizzamento devono contenere il numero di porta esterna sul bilanciatore del carico, 443 in questo esempio, e non la porta interna sul modulo Apigee SSO, 9099.

Per configurare il modulo SSO Apigee 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 SSO Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Aggiorna la configurazione IdP per effettuare una richiesta HTTPS sulla porta 443 del bilanciatore del carico per accedere all'accesso SSO di Apigee. Per saperne di più, consulta una delle seguenti risorse:
  4. Aggiorna la configurazione della UI perimetrale per HTTPS impostando le seguenti proprietà nel file di configurazione:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    Quindi aggiorna l'UI di Edge:

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

    Utilizza il componente edge-ui per l'interfaccia utente classica.

  5. Se hai installato il portale Servizi per gli sviluppatori Apigee (o semplicemente il portale), aggiornalo in modo che utilizzi HTTPS per accedere al servizio SSO di Apigee. Per maggiori informazioni, consulta Configurare il portale per l'utilizzo di IdP esterni

Consulta Abilitare un IdP esterno sulla UI Edge per ulteriori informazioni.

Abilita la modalità SSL_TERMINATION

Per la modalità SSL_TERMINATION, devi:

  • Genera un certificato e una chiave TLS e archiviali in un file di 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 dell'archivio chiavi a partire 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. Devi specificare un archivio chiavi per questa modalità 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 Premises.
  4. Imposta il file JKS di proprietà dell'utente "apigee":
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

Per configurare il modulo SSO Apigee:

  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 SSO Apigee:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Aggiorna la configurazione IdP per effettuare una richiesta HTTPS sulla porta 9443 del bilanciatore del carico per accedere all'accesso SSO di Apigee. Assicurati che nessun altro servizio stia utilizzando questa porta.

    Per ulteriori informazioni, consulta le seguenti risorse:

  4. Aggiorna la configurazione della UI perimetrale per HTTPS impostando le seguenti proprietà:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https
  5. Se hai installato il portale Servizi per gli sviluppatori, aggiornalo in modo che utilizzi HTTPS per accedere ad Apigee SSO. Per saperne di più, consulta Configurare il portale per l'utilizzo di IdP esterni.

Imposta SSO_TOMCAT_PROXY_PORT quando utilizzi la modalità SSL_TERMINATION

Potresti avere un bilanciatore del carico davanti al modulo SSO Apigee che termina TLS sul bilanciatore del carico, ma abilita anche TLS tra il bilanciatore del carico e il servizio SSO di Apigee. Nella figura precedente per la modalità SSL_PROXY, ciò significa che la connessione dal bilanciatore del carico all'SSO Apigee utilizza TLS.

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

  • Il bilanciatore del carico termina il protocollo TLS sulla porta 443
  • Apigee 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 l'interfaccia utente Edge per effettuare richieste HTTPS sulla porta 443.