Installer et configurer l'authentification unique Edge

Edge pour Private Cloud v4.18.01

L'installation et la configuration du module Edge SSO nécessitent d'abord de générer deux jeux Clés et certificats TLS. Le module SSO Edge utilise TLS pour sécuriser la transmission des informations dans le cadre du processus de handshake SAML avec l'IdP SAML.

Remarque: Par défaut, le module Edge SSO est accessible via HTTP sur le port 9099 de au nœud sur lequel il est installé. Vous pouvez activer TLS sur le module SSO Edge. Pour ce faire, vous devez pour créer un troisième ensemble de clés et de certificats TLS utilisés par Tomcat pour assurer la compatibilité TLS. Pour en savoir plus, consultez la section Configurer apigee-sso pour l'accès HTTPS.

Créer les clés et les certificats TLS

Les étapes ci-dessous permettent de créer des certificats autosignés qui peuvent convenir à votre environnement de test, mais vous avez généralement besoin de certificats signés par une autorité de certification pour un environnement de production.

Pour créer la clé de validation et de signature ainsi que le certificat autosigné:

  1. > sudo mkdir -p /opt/apigee/customer/application/apigee-sso/jwt-keys
  2. > cd /opt/apigee/customer/application/apigee-sso/jwt-keys/
  3. > sudo ouvresl genrsa -out privkey.pem 2048
  4. > sudo ouvressl rsa -pubout -in privkey.pem -out pubkey.pem
  5. > sudo chown apigee:apigee *.pem

À créer la clé et le certificat autosigné, sans phrase secrète, pour communiquer avec le protocole SAML IDP:

  1. > sudo mkdir -p /opt/apigee/customer/application/apigee-sso/saml/
  2. > cd /opt/apigee/customer/application/apigee-sso/saml/
  3. Générez votre clé privée avec une phrase secrète:
    > sudo ouvressl genrsa -aes256 -out server.key 1024
  4. Supprimez la phrase secrète de la clé:
    > sudo ouvresl rsa -in server.key -out server.key
  5. Générer une demande de signature de certificat pour l'autorité de certification:
    > sudo ouvressl -x509 -sha256 -new -key server.key -out server.csr
  6. Générez un certificat autosigné dans un délai d'expiration de 365 jours:
    > sudoopensl x509 -sha256 -jours 365 -in server.csr -signkey server.key -out selfsigned.crt
  7. > sudo chown apigee:apigee server.key
  8. > sudo chown apigee:apigee selfsigned.crt

Si vous souhaitez activer TLS sur le module d'authentification unique Edge, en en définissant SSO_TOMCAT_PROFILE sur SSL_TERMINATION, ou sur SSL_PROXY, vous ne pouvez pas utiliser de certificat autosigné. Vous devez générer un d'une autorité de certification. Consultez la section Configurer apigee-sso pour l'accès HTTPS.

Installer et configurer Edge SSO pour HTTP accès

Pour installer le module d'authentification unique Edge, apigee-sso, vous devez suivre le même processus que vous avez utilisé pour installer Edge. Étant donné que apigee-sso est représenté par un fichier RPM, cela signifie que l'utilisateur effectuant l'installation doit être l'utilisateur racine ou un utilisateur disposant d'une commande sudo y accéder. Consultez la présentation de l'installation de Edge pour plus d'informations.

Transmettez un fichier de configuration au programme d'installation. Le fichier de configuration se présente sous la forme suivante:

IP1=hostname_or_ip_of_management_server
IP2=hostname_or_ip_of_UI_and_apigge_sso

## Management Server configuration.
MSIP=$IP1
MGMT_PORT=8080
# Edge sys admin username and password as set when you installed Edge.
ADMIN_EMAIL=opdk@google.com
APIGEE_ADMINPW=Secret123
# Set the protocol for the Edge management API. Default is http. 
# Set to https if you enabled TLS on the management API.
MS_SCHEME=http

## Postgres configuration. 
PG_HOST=$IP1
PG_PORT=5432
# Postgres username and password as set when you installed Edge.
PG_USER=apigee
PG_PWD=postgres

# apigee-sso configuration.
SSO_PROFILE="saml"
# Externally accessible IP or DNS name of apigee-sso.
SSO_PUBLIC_URL_HOSTNAME=$IP2
# Default port is 9099. If changing, set both properties to the same value.
SSO_PUBLIC_URL_PORT=9099
SSO_TOMCAT_PORT=9099
# Set Tomcat TLS mode to DEFAULT to use HTTP access to apigee-sso.
SSO_TOMCAT_PROFILE=DEFAULT
SSO_PUBLIC_URL_SCHEME=http

# SSO admin user name. The default is ssoadmin.
SSO_ADMIN_NAME=ssoadmin
# SSO admin password using uppercase, lowercase, number, and special chars. 
SSO_ADMIN_SECRET=Secret123

# Path to signing key and secret from "Create the TLS keys and certificates" above.
SSO_JWT_SIGNING_KEY_FILEPATH=/opt/apigee/customer/application/apigee-sso/jwt-keys/privkey.pem
SSO_JWT_VERIFICATION_KEY_FILEPATH=/opt/apigee/customer/application/apigee-sso/jwt-keys/pubkey.pem

# Name of SAML IDP. For example, okta or adfs. 
SSO_SAML_IDP_NAME=okta
# Text displayed to user when they attempt to access Edge UI.
SSO_SAML_IDP_LOGIN_TEXT="Please log in to your IDP"

# The metadata URL from your IDP.
# If you have a metadata file, and not a URL, 
# see "Specifying a metadata file instead of a URL" below.
SSO_SAML_IDP_METADATA_URL=https://dev-343434.oktapreview.com/app/exkar20cl/sso/saml/metadata

# Specifies to skip TLS validation for the URL specified
# by SSO_SAML_IDP_METADATA_URL. Necessary if URL uses a self-signed cert. 
# Default value is "n".
SSO_SAML_IDPMETAURL_SKIPSSLVALIDATION=n

# SAML service provider key and cert from "Create the TLS keys and certificates" above.
SSO_SAML_SERVICE_PROVIDER_KEY=/opt/apigee/customer/application/apigee-sso/saml/server.key
SSO_SAML_SERVICE_PROVIDER_CERTIFICATE=/opt/apigee/customer/application/apigee-sso/saml/selfsigned.crt
# The passphrase used when you created the SAML cert and key. 
# The section "Create the TLS keys and certificates" above removes the passphrase, 
# but this property is available if you require a passphrase.
# SSO_SAML_SERVICE_PROVIDER_PASSWORD=samlSP123

# Must configure an SMTP server so Edge SSO can send emails to users.
SKIP_SMTP=n
SMTPHOST=smtp.example.com
SMTPUSER=smtp@example.com  
# omit for no username
SMTPPASSWORD=smtppwd    
# omit for no password
SMTPSSL=n
SMTPPORT=25
SMTPMAILFROM="My Company <myco@company.com>"

Pour installer le module Edge SSO:

  1. Connectez-vous au nœud du serveur de gestion. apigee-service doit déjà être installé sur ce nœud, comme décrit dans Installez l'utilitaire de configuration Edge Apigee.
    Notez que vous pouvez installer Edge SSO sur un autre nœud. Cependant, ce nœud doit pouvoir accéder au serveur de gestion via le port 8080.
  2. Installez et configurez apigee-sso:
    &gt; /opt/apigee/apigee-setup/bin/setup.sh -p sso -f configFile

    configFile correspond au fichier de configuration présenté ci-dessus.
  3. Installez l'utilitaire apigee-ssoadminapi.sh utilisé pour Gérez les administrateurs et les utilisateurs de la machine pour le module apigee-sso:
    /opt/apigee/apigee-service/bin/apigee-service installer apigee-ssoadminapi
  4. Déconnectez-vous du shell, puis reconnectez-vous pour ajouter l'utilitaire apigee-ssoadminapi.sh à votre chemin d'accès.

Spécifier un fichier de métadonnées au lieu d'une URL

Si votre IdP n'accepte pas les URL de métadonnées HTTP/HTTPS, vous pouvez utiliser un fichier XML de métadonnées pour configurer Edge SSO:

  1. Copiez le contenu du fichier XML de métadonnées de votre IdP vers un fichier sur le nœud Edge SSO. Pour Exemple : copiez le code XML dans :
    /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  2. Remplacez la propriété du fichier par apigee:apigee:
    &gt; chown apigee:apigee /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  3. Définissez SSO_SAML_IDP_METADATA_URL sur une valeur absolue. chemin d'accès au fichier:
    SSO_SAML_IDP_METADATA_URL=file:///opt/apigee/customer/application/apigee-sso/saml/metadata.xml

    Vous devez ajouter le préfixe file:// au chemin d'accès au fichier, suivi du chemin absolu. de la racine (/).