Edge-SSO installieren und konfigurieren

Edge for Private Cloud v4.19.01

Zum Installieren und Konfigurieren des Edge-SSO-Moduls müssen Sie zunächst zwei TLS-Schlüssel und -Zertifikate. Das Edge-SSO-Modul verwendet TLS, um die Übertragung von Informationen zu sichern im Rahmen des SAML-Handshakes mit dem SAML-IdP.

TLS-Schlüssel und -Zertifikate erstellen

Mit den folgenden Schritten werden selbstsignierte Zertifikate erstellt, die für Ihre Testumgebung in Ordnung sind, In der Regel benötigen Sie für eine Produktionsumgebung von einer Zertifizierungsstelle signierte Zertifikate.

So erstellen Sie den Bestätigungs- und Signaturschlüssel sowie das selbst signierte Zertifikat:

  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

Schlüssel und selbst signiertes Zertifikat ohne Passphrase für die Kommunikation mit dem SAML-Team erstellen IDP:

  1. sudo mkdir -p /opt/apigee/customer/application/apigee-sso/saml/
  2. cd /opt/apigee/customer/application/apigee-sso/saml/
  3. Generieren Sie Ihren privaten Schlüssel mit einer Passphrase:
    sudo openssl genrsa -aes256 -out server.key 1024
  4. Entfernen Sie die Passphrase aus dem Schlüssel:
    sudo openssl rsa -in server.key -out server.key
  5. Generieren Sie eine Anfrage zur Zertifikatssignierung für die Zertifizierungsstelle:
    sudo openssl req -x509 -sha256 -new -key server.key -out server.csr
  6. Selbst signiertes Zertifikat mit einer Ablaufzeit von 365 Tagen generieren:
    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

Wenn Sie TLS im Edge-SSO-Modul aktivieren möchten, gehen Sie so vor: SSO_TOMCAT_PROFILE auf SSL_TERMINATION festlegen oder auf SSL_PROXY gesetzt, können Sie kein selbst signiertes Zertifikat verwenden. Sie müssen ein Zertifikat von einer Zertifizierungsstelle. Siehe Apigee-sso konfigurieren für HTTPS-Zugriff.

Installieren und konfigurieren Sie Edge-SSO für HTTP Zugriff

Zum Installieren des Edge-SSO-Moduls apigee-sso müssen Sie denselben Prozess verwenden mit dem Sie Edge installiert haben. Da apigee-sso durch eine RPM-Datei dargestellt wird, Das bedeutet, dass der Nutzer, der die Installation durchführt, der Root-Nutzer sein oder ein Nutzer mit vollständigem sudo Zugriff haben. Weitere Informationen finden Sie unter Edge-Installationsübersicht.

Übergeben Sie eine Konfigurationsdatei an das Installationsprogramm. Die Konfigurationsdatei hat das folgende Format:

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

# Enable the ability to sign an authentication request with SAML SSO.
SSO_SAML_SIGN_REQUEST=y

# 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

# Requires that SAML responses be signed by your IDP.
SSO_SAML_SIGNED_ASSERTIONS=y

# 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>"

So installieren Sie das Edge-SSO-Modul:

  1. Melden Sie sich beim Knoten des Verwaltungsservers an. Dieser Knoten sollte bereits apigee-service wurde wie unter beschrieben installiert Installieren Sie das Dienstprogramm für das Edge-Apigee-Setup.

    Beachten Sie, dass Sie Edge-SSO auf einem anderen Knoten installieren können. Dieser Knoten muss jedoch greifen Sie über Port 8080 auf den Management Server zu.

  2. Installieren und konfigurieren Sie apigee-sso:
    /opt/apigee/apigee-setup/bin/setup.sh -p sso -f configFile

    Dabei ist configFile die oben gezeigte Konfigurationsdatei.

  3. Installieren Sie das Dienstprogramm apigee-ssoadminapi.sh, das für Folgendes verwendet wird: Admin- und Computernutzer für das Modul apigee-sso verwalten:
    /opt/apigee/apigee-service/bin/apigee-service apigee-ssoadminapi install
  4. Melden Sie sich von der Shell ab und dann wieder an, um apigee-ssoadminapi.sh hinzuzufügen zu Ihrem Pfad hinzufügen.

Metadatendatei anstelle einer URL angeben

Wenn Ihr IdP keine HTTP-/HTTPS-Metadaten-URL unterstützt, können Sie eine Metadaten-XML-Datei verwenden, um Konfigurieren Sie die Edge-SSO:

  1. Kopieren Sie den Inhalt der Metadaten-XML aus Ihrem IdP in eine Datei auf dem Edge SSO-Knoten. Für Beispiel:
    /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  2. Ändern Sie die Eigentümerschaft der Datei in „apigee:apigee“:
    chown apigee:apigee /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  3. Legen Sie den Wert von SSO_SAML_IDP_METADATA_URL auf den absoluten Dateipfad fest:
    SSO_SAML_IDP_METADATA_URL=file:///opt/apigee/customer/application/apigee-sso/saml/metadata.xml

    Vor dem Dateipfad muss „file://“ stehen, gefolgt vom absoluten Pfad aus Stamm (/).