Configurer apigee-sso pour l'accès HTTPS

Edge pour Private Cloud version 4.17.09

La section Installer et configurer l'authentification unique Edge décrit comment installer et configurer le module d'authentification unique Edge pour 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 mis fin au protocole TLS sur l'équilibreur de charge. Spécifiez ensuite le port utilisé sur apigee-sso pour les requêtes provenant de l'équilibreur de charge.
  • SSL_TERMINATION : l'accès TLS à apigee-sso, le module d'authentification unique Edge, a été activé sur le port de votre choix. 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é.

Vous pouvez choisir d'activer HTTPS lors de l'installation et de la configuration initiale de apigee-sso ou ultérieurement.

L'activation de l'accès HTTPS pour apigee-sso à l'aide de l'un ou l'autre mode désactive l'accès HTTP. Autrement dit, vous ne pouvez pas accéder à apigee-sso en utilisant simultanément les protocoles HTTP et HTTPS.

Activer le mode SSL_PROXY

En mode SSL_PROXY, votre système utilise un équilibreur de charge devant le module SSO Edge et interrompt le protocole TLS au niveau de l'équilibreur de charge. Dans la figure suivante, l'équilibreur de charge arrête TLS sur le port 443, puis transfère les requêtes au module SSO Edge sur le port 9099:

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

Vous devez configurer le module SSO Edge en mode SSL_PROXY parce qu'il génère automatiquement des URL de redirection utilisées en externe par l'IdP dans le cadre du processus d'authentification. Par conséquent, ces URL de redirection doivent contenir le numéro de port externe de l'équilibreur de charge, 443 dans cet exemple, et non le port interne du module SSO Edge 9099.

Remarque: Il n'est pas nécessaire de créer un certificat et une clé TLS pour le mode SSL_PROXY, car la connexion de l'équilibreur de charge au module d'authentification unique Edge utilise le protocole HTTP.

Pour configurer le module SSO Edge pour le mode SSL_PROXY:

  1. Ajoutez les paramètres suivants à votre fichier de configuration:
    # Activez le mode SSL_PROXY.
    SSO_TOMCAT_PROFILE=SSL_PROXY

    # Spécifiez le port apigee-sso, généralement compris entre 1025 et 65 535.
    # Les ports 1024 et inférieurs nécessitent généralement un accès racine via apigee-sso.
    # La valeur par défaut est 9099.
    SSO_TOMCAT_PORT=9099

    # Spécifiez le numéro de port de l'équilibreur de charge pour mettre fin au protocole TLS.
    # Ce numéro de port est nécessaire pour qu'apigee-sso puisse générer automatiquement des URL de redirection.
    SSO_TOMCAT_PROXY_PORT=443
    SSO_PUBLIC_URL_PORT=443

    # Définissez le schéma d'accès public d'apigee-sso sur HTTPS.
    SSO_PUBLIC_URL_SCHEME=https
  2. Configurez le module d'authentification unique Edge:
    > /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 l'équilibreur de charge afin d'accéder à l'authentification unique Edge. Pour en savoir plus, consultez la section Configurer votre IdP SAML.
  4. Mettez à jour la configuration de votre interface utilisateur Edge pour HTTPS en définissant les propriétés suivantes:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https


    Pour plus d'informations, consultez Activer SAML dans l'interface utilisateur Edge.
  5. Si vous avez installé le portail de services pour les développeurs ou l'API BaaS, mettez-les à jour afin qu'ils utilisent HTTPS pour accéder à l'authentification unique Ede. Pour en savoir plus, consultez les articles suivants :

Activer le mode SSL_TERMINATION

Pour le mode SSL_TERMINATION, vous devez:

  • Certificat et clé TLS générés et stockés dans un fichier keystore Vous ne pouvez pas utiliser de certificat autosigné. Vous devez générer un certificat auprès d'une autorité de certification.
  • Mettez à jour les paramètres de configuration de 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é. Pour obtenir un exemple de création d'un fichier JKS, consultez la section Configurer TLS/SSL pour Edge sur site.
  4. Définissez le fichier JKS comme propriétaire de l'utilisateur "apigee" :
    > sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

Pour configurer le module SSO Edge:

  1. Ajoutez les paramètres suivants à votre fichier de configuration:
    # Activez le mode SSL_TERMINATION.
    SSO_TOMCAT_PROFILE=SSL_TERMINATION

    # Spécifiez le chemin d'accès au fichier keystore.
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    SSO_TOMCAT_KEYSTORE_ALIAS=sso

    # Mot de passe spécifié lors de la création du keystore.
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword

    # Indiquez un numéro de port HTTPS compris entre 1025 et 65535.
    # Les ports 1024 et inférieurs nécessitent généralement un accès racine via apigee-sso.
    # La valeur par défaut est 9099.
    SSO_TOMCAT_PORT=9443
    SSO_PUBLIC_URL_PORT=9443

    # Définissez le schéma d'accès public d'apigee-sso sur https.
    SSO_PUBLIC_URL_SCHEME=https
  2. Configurez le module d'authentification unique Edge:
    > /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 l'équilibreur de charge afin d'accéder à l'authentification unique Edge. Pour en savoir plus, consultez la section Configurer votre IdP SAML.
  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 plus d'informations, consultez Activer SAML dans l'interface utilisateur Edge.
  5. Si vous avez installé le portail de services pour les développeurs ou l'API BaaS, mettez-les à jour afin qu'ils utilisent HTTPS pour accéder à l'authentification unique Ede. Pour en savoir plus, consultez les articles suivants :

Définir SSO_TOMCAT_PROXY_PORT lors de l'utilisation du mode SSL_TERMINATION

Vous pouvez disposer d'un équilibreur de charge devant le module d'authentification unique Edge qui met fin au protocole TLS au niveau de l'équilibreur de charge, mais active également TLS entre l'équilibreur de charge et l'authentification unique Edge. Dans la figure ci-dessus pour le mode SSL_PROXY, cela signifie que la connexion de l'équilibreur de charge à l'authentification unique Edge utilise TLS.

Dans ce scénario, vous configurez TLS sur l'authentification unique Edge comme vous l'avez fait ci-dessus pour le mode SSL_TERMINATION. Toutefois, si l'équilibreur de 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 met fin au protocole TLS sur le port 9443

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

# Spécifiez le numéro de port de l'équilibreur de charge pour arrêter le protocole TLS.
# Ce numéro de port est nécessaire pour que apigee-sso génée les URL de redirection.
SSO_TOMCAT_PROXY_PORT=443
SSO_PUBLIC_URL_PORT=443

Il configure l'interface utilisateur IdP et Edge pour effectuer des requêtes HTTPS sur le port 443.