Installer et configurer l'authentification unique Edge

Edge pour Private Cloud v4.18.05

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.

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 openssl genrsa -out privkey.pem 2048
  4. sudo openssl 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 openssl genrsa -aes256 -out server.key 1024
  4. Supprimez la phrase secrète de la clé:
    sudo openssl rsa -in server.key -out server.key
  5. Générez une demande de signature de certificat pour l'autorité de certification:
    sudo openssl req -x509 -sha256 -new -key server.key -out server.csr
  6. Générez un certificat autosigné avec un délai d'expiration de 365 jours:
    sudo openssl x509 -sha256 -days 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 Edge SSO, 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. Ce nœud devrait déjà avoir apigee-service installé comme décrit à l'adresse 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:
    /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 machine du module apigee-sso:
    /opt/apigee/apigee-service/bin/apigee-service apigee-ssoadminapi install
  4. Déconnectez-vous du shell, puis reconnectez-vous pour ajouter apigee-ssoadminapi.sh. à votre chemin d'accès.

Spécifiez 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 Par exemple, copiez le code XML dans l'emplacement suivant:
    /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  2. Changez la propriété du fichier en apigee:apigee:
    chown apigee:apigee /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  3. Définissez la valeur de SSO_SAML_IDP_METADATA_URL sur le chemin d'accès absolu 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 racine (/).