Menginstal dan mengonfigurasi Edge SSO

Edge untuk Private Cloud v4.19.01

Untuk menginstal dan mengonfigurasi modul SSO Edge, Anda harus membuat dua rangkaian kunci dan sertifikat TLS terlebih dahulu. Modul SSO Edge menggunakan TLS untuk mengamankan transmisi informasi sebagai bagian dari proses Handhaking SAML dengan IDP SAML.

Membuat kunci dan sertifikat TLS

Langkah-langkah di bawah ini akan membuat sertifikat yang ditandatangani sendiri yang mungkin tidak masalah untuk lingkungan pengujian Anda, tetapi biasanya Anda memerlukan sertifikat yang ditandatangani oleh CA untuk lingkungan produksi.

Untuk membuat kunci verifikasi dan penandatanganan serta sertifikat yang ditandatangani sendiri:

  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

Untuk membuat kunci dan sertifikat yang ditandatangani sendiri, tanpa frasa sandi, untuk berkomunikasi dengan IDP SAML:

  1. sudo mkdir -p /opt/apigee/customer/application/apigee-sso/saml/
  2. cd /opt/apigee/customer/application/apigee-sso/saml/
  3. Buat kunci pribadi dengan frasa sandi:
    sudo openssl genrsa -aes256 -out server.key 1024
  4. Hapus frasa sandi dari kunci:
    sudo openssl rsa -in server.key -out server.key
  5. Buat permintaan penandatanganan sertifikat untuk CA:
    sudo openssl req -x509 -sha256 -new -key server.key -out server.csr
  6. Buat sertifikat yang ditandatangani sendiri dengan waktu habis masa berlaku 365 hari:
    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

Jika ingin mengaktifkan TLS pada modul SSO Edge, dengan menetapkan SSO_TOMCAT_PROFILE ke SSL_TERMINATION atau ke SSL_PROXY, Anda tidak dapat menggunakan sertifikat yang ditandatangani sendiri. Anda harus membuat sertifikat dari CA. Lihat Mengonfigurasi apigee-sso untuk akses HTTPS untuk mengetahui informasi selengkapnya.

Menginstal dan mengonfigurasi SSO Edge untuk akses HTTP

Untuk menginstal modul SSO Edge, apigee-sso, Anda harus menggunakan proses yang sama dengan yang Anda gunakan untuk menginstal Edge. Karena apigee-sso direpresentasikan oleh file RPM, itu berarti pengguna yang melakukan penginstalan harus merupakan pengguna root atau pengguna yang memiliki akses sudo penuh. Lihat Ringkasan Penginstalan Edge untuk mengetahui informasi selengkapnya.

Teruskan file konfigurasi ke penginstal. File konfigurasi memiliki bentuk berikut:

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

Untuk menginstal modul SSO Edge:

  1. Login ke node Server Pengelolaan. Node tersebut seharusnya sudah menginstal apigee-service seperti yang dijelaskan di Menginstal utilitas apigee-setup Edge.

    Perhatikan bahwa Anda dapat menginstal SSO Edge pada node yang berbeda. Namun, node tersebut harus dapat mengakses Server Pengelolaan melalui port 8080.

  2. Instal dan konfigurasi apigee-sso:
    /opt/apigee/apigee-setup/bin/setup.sh -p sso -f configFile

    Dengan configFile adalah file konfigurasi yang ditampilkan di atas.

  3. Instal utilitas apigee-ssoadminapi.sh yang digunakan untuk mengelola pengguna admin dan mesin untuk modul apigee-sso:
    /opt/apigee/apigee-service/bin/apigee-service apigee-ssoadminapi install
  4. Logout dari shell, lalu login kembali untuk menambahkan utilitas apigee-ssoadminapi.sh ke jalur Anda.

Menentukan file metadata, bukan URL

Jika IDP tidak mendukung URL metadata HTTP/HTTPS, Anda dapat menggunakan file XML metadata untuk mengonfigurasi SSO Edge:

  1. Salin konten XML metadata dari IDP Anda ke file di node SSO Edge. Misalnya, salin XML ke:
    /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  2. Ubah kepemilikan file ke apigee:apigee:
    chown apigee:apigee /opt/apigee/customer/application/apigee-sso/saml/metadata.xml
  3. Tetapkan nilai SSO_SAML_IDP_METADATA_URL ke jalur file absolut:
    SSO_SAML_IDP_METADATA_URL=file:///opt/apigee/customer/application/apigee-sso/saml/metadata.xml

    Anda harus memberi awalan "file://" pada jalur file, diikuti dengan jalur absolut dari root (/).