Configurer apigee-sso pour l'accès HTTPS

Edge pour Private Cloud v4.18.05

Installer et configurer Edge SSO explique comment pour installer et configurer le module Edge SSO afin d'utiliser HTTP sur le port 9099, comme spécifié par la propriété suivante dans le fichier de configuration:

SSO_TOMCAT_PROFILE=DEFAULT

Vous pouvez également définir SSO_TOMCAT_PROFILE sur l'une des valeurs suivantes pour activer l'accès HTTPS:

  • SSL_PROXY : configure apigee-sso en mode proxy, ce qui signifie que vous avez installé un équilibreur de charge devant apigee-sso et arrêté TLS sur la charge de votre équilibreur de charge. Vous spécifiez ensuite le port utilisé sur apigee-sso pour les requêtes provenant de la charge de votre équilibreur de charge.
  • SSL_TERMINATION : a activé l'accès TLS à apigee-sso, le module Edge SSO, le port de votre choix. Pour ce mode, vous devez spécifier un keystore contenant un certificat signé par CA. Vous ne pouvez pas utiliser de certificat autosigné.

Vous pouvez choisir d'activer HTTPS lors de l'installation et de la configuration initiales apigee-sso ou vous pourrez l'activer plus tard.

Activer l'accès HTTPS à apigee-sso à l'aide de l'un ou l'autre mode désactive HTTP y accéder. Autrement dit, vous ne pouvez pas accéder à apigee-sso à l'aide de HTTP et de HTTPS. simultanément.

Activer le mode SSL_PROXY

En mode SSL_PROXY, votre système utilise un équilibreur de charge devant le module Edge SSO et interrompt le protocole TLS sur l'équilibreur de charge. Dans comme illustré ci-dessous, l'équilibreur de charge interrompt le protocole TLS sur le port 443, puis transfère les requêtes module Edge SSO sur le port 9099:

Dans cette configuration, vous faites confiance à la connexion entre l'équilibreur de charge et le module Edge SSO il n'est donc pas nécessaire d'utiliser TLS pour cette connexion. Toutefois, les entités externes, telles que le protocole SAML, IdP, doit maintenant accéder au module SSO Edge sur le port 443, et non sur le port non protégé de 9099.

Vous configurez le module Edge SSO en mode SSL_PROXY car le module Edge SSO génère automatiquement les URL de redirection utilisées en externe par le fournisseur d'identité dans le cadre du processus d'authentification. Par conséquent, ces URL de redirection doivent contenir le numéro de port externe sur l'équilibreur de charge, soit 443 po cet exemple, et non le port interne sur le module Edge SSO, 9099.

Remarque: Il n'est pas nécessaire de créer un certificat et une clé TLS pour SSL_PROXY, car la connexion de l'équilibreur de charge au module SSO périphérique utilise HTTP.

Pour configurer le module Edge SSO pour le mode SSL_PROXY:

  1. Ajoutez les paramètres suivants à votre fichier de configuration:
    # 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. Configurez le module Edge SSO:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Mettez à jour votre configuration IdP pour effectuer maintenant une requête HTTPS sur le port 443 de la charge pour accéder à l'authentification unique Edge. Reportez-vous à la section Configurer votre IDP.
  4. Mettez à jour la configuration de votre interface utilisateur Edge pour HTTPS en définissant les propriétés suivantes dans le fichier de configuration:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https

    Ensuite, mettez à jour l'interface utilisateur Edge:

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

    Pour en savoir plus, consultez la section Activer SAML sur l'interface utilisateur Edge.

  5. Si vous avez installé le portail Apigee Developer Services (ou simplement le portail), mettez-le à jour pour qu'il utilise HTTPS pour accéder au SSO Ede. Pour en savoir plus, consultez Configuration du portail pour utiliser SAML pour communiquer avec Edge

Activer le mode SSL_TERMINATION

Pour le mode SSL_TERMINATION, vous devez:

  • Génération d'un certificat et d'une clé TLS, et stockages dans un fichier keystore. Vous ne pouvez pas utiliser de certificat autosigné. Vous devez générer un certificat à partir d'une autorité de certification.
  • Mettre à jour les paramètres de configuration pour apigee-sso.

Pour créer un fichier keystore à partir de votre certificat et de votre clé:

  1. Créez un répertoire pour le fichier JKS:
    sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. Accédez au nouveau répertoire:
    cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. Créez un fichier JKS contenant le certificat et la clé. Vous devez spécifier un keystore pour ce mode contenant un certificat signé par une autorité de certification. Vous ne pouvez pas utiliser de certificat autosigné. Par exemple, création d'un fichier JKS, reportez-vous à la section Configuration de TLS/SSL pour Edge sur site.
  4. Rendre le fichier JKS appartenant au « apigee » utilisateur:
    sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

Pour configurer le module Edge SSO:

  1. Ajoutez les paramètres suivants à votre fichier de configuration:
    # 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. Configurez le module Edge SSO:
    /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. Mettez à jour votre configuration IdP pour effectuer maintenant une requête HTTPS sur le port 9443 de la charge pour accéder à l'authentification unique Edge. Reportez-vous à la section Configurer votre IDP.
  4. Mettez à jour la configuration de votre interface utilisateur Edge pour HTTPS en définissant les propriétés suivantes:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https

    Pour en savoir plus, consultez la section Activer SAML sur l'interface utilisateur Edge.

  5. Si vous avez installé le portail de services pour les développeurs, mettez-le à jour pour qu'il utilise HTTPS accéder au SSO Ede. Pour en savoir plus, consultez la section Configurer le Portail des services pour les développeurs permettant d'utiliser SAML pour communiquer avec Edge

Définir SSO_TOMCAT_PROXY_PORT en cas d'utilisation du mode SSL_TERMINATION

Vous pouvez avoir un équilibreur de charge devant le module d'authentification unique périphérique qui met fin au protocole TLS sur la charge mais aussi d'activer TLS entre l'équilibreur de charge et Edge SSO. Dans la figure ci-dessus, Pour le mode SSL_PROXY, cela signifie que la connexion de l'équilibreur de charge à Edge SSO utilise TLS

Dans ce scénario, vous configurez TLS sur Edge SSO comme vous l'avez fait ci-dessus pour Mode SSL_TERMINATION. Toutefois, si la charge utilise un numéro de port TLS différent de celui utilisé par Edge SSO pour TLS, vous devez également spécifier la propriété SSO_TOMCAT_PROXY_PORT dans le fichier de configuration. Exemple :

  • L'équilibreur de charge interrompt le protocole TLS sur le port 443
  • L'authentification unique périphérique interrompt le protocole TLS sur le port 9443

Veillez à inclure le paramètre suivant dans le fichier de configuration:

# 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

Configurez le fournisseur d'identité et l'interface utilisateur Edge pour effectuer des requêtes HTTPS sur le port 443.