Instalowanie i konfigurowanie logowania jednokrotnego w Apigee

Począwszy od OPDK 4.54.00, architektura logowania jednokrotnego została zmodernizowana. Broker tożsamości (Dex) jest teraz wbudowany bezpośrednio w komponent apigee-openldap, co eliminuje konieczność instalowania osobnego starszego modułu apigee-sso.

Aby włączyć i skonfigurować logowanie jednokrotne w Apigee, musisz wykonać te czynności:

  1. Utwórz użytkownika maszyny na potrzeby nowego interfejsu Edge: utwórz użytkownika maszyny, który jest wymagany, aby nowy interfejs Edge mógł wywoływać interfejsy API zarządzania.
  2. Skonfiguruj właściwości w wspólnym pliku konfiguracyjnym: utwórz jeden plik konfiguracyjny, który zawiera właściwości wymagane zarówno przez usługę OpenLDAP (SSO), jak i nowy interfejs Edge.
  3. Utwórz bazę danych logowania jednokrotnego w Postgres: utwórz bazę danych na potrzeby logowania jednokrotnego w instancji Apigee PostgreSQL.
  4. Zastosuj konfiguracje logowania jednokrotnego w OpenLDAP: zastosuj plik konfiguracyjny, aby uruchomić zintegrowane logowanie jednokrotne w Apigee w węźle OpenLDAP.
  5. Skonfiguruj nowy interfejs Edge: zaktualizuj właściwości nowego interfejsu Edge, aby używać nowego logowania jednokrotnego w Apigee.

Każdy z tych kroków jest opisany w sekcjach poniżej.

Tworzenie użytkownika maszyny na potrzeby interfejsu

Nowy interfejs Edge wymaga użytkownika maszyny do wywoływania interfejsów API zarządzania w backendzie w przypadku niektórych operacji. W tym celu używany jest skrypt fabrycznie zainstalowany w węźle apigee-openldap.

Więcej informacji o skrypcie i użytkownikach maszyn znajdziesz w artykule Korzystanie ze skryptu apigee-machine-user.

Aby utworzyć użytkownika maszyny na potrzeby nowego interfejsu Edge, użyj w węźle apigee-openldap tego polecenia. Podczas definiowania właściwości w pliku konfiguracyjnym w następnym kroku użyj dokładnie tych samych danych logowania.

 /opt/apigee/apigee-openldap/bin/apigee-machineuser.sh add -u ui-machine-user@apigee.com -p Secret123
 

Konfigurowanie właściwości w wspólnym pliku konfiguracyjnym

Zanim włączysz SSO w Apigee i nowy interfejs Edge, musisz zdefiniować wspólny plik konfiguracji (np. /opt/silent.conf). W razie potrzeby możesz zmienić tę ścieżkę i nazwę pliku.

Dodaj do pliku /opt/silent.conf te podstawowe właściwości konfiguracji:

# ==========================================
# SSO Enablement
# ==========================================
ENABLE_SSO=y

# ==========================================
# SSO Hostname/IP and Port config for Dex
# ==========================================
SSO_PUBLIC_URL_SCHEME=http
SSO_PUBLIC_URL_HOSTNAME=localhost
SSO_PUBLIC_URL_PORT=9099

# ==========================================
# Static Client UI credentials
# ==========================================
MANAGEMENT_UI_SSO_CLIENT_ID=unifiedui
MANAGEMENT_UI_SSO_CLIENT_SECRET=secret123

# ==========================================
# Management UI & SSO redirect URLs
# ==========================================
MANAGEMENT_UI_SCHEME=http
MANAGEMENT_UI_IP=localhost
MANAGEMENT_UI_PORT=3001

# ==========================================
# Management Server parameters (Required for SSO registration)
# ==========================================
MSIP=localhost
ADMIN_EMAIL=admin@apigee.com
APIGEE_ADMINPW=Secret123

# ==========================================
# Machine user for UI
# ==========================================
UI_MACHINE_USER=ui-machine-user@apigee.com
UI_MACHINE_PWD=Secret123

# ==========================================
# Postgres connection parameters
# ==========================================
PG_HOST=postgres_host
PG_USER=apigee
PG_PWD=postgres_password

# ==========================================
# Other UI Parameters
# ==========================================
# Set to sso to enable SSO, default value is basic.
AUTH_MODE=sso

# Y to use internal LDAP for authentication, N to use external IDP
SSO_LOCAL_LDAP=y

MANAGEMENT_UI_APP_ENV=OPDK
MANAGEMENT_UI_SSO_ENABLED=y
MANAGEMENT_UI_SSO_CSRF_SECRET=secret
MANAGEMENT_UI_SSO_CSRF_EXPIRATION_HOURS=24
MANAGEMENT_UI_SSO_STRICT_TRANSPORT_SECURITY_AGE_HOURS=24
MANAGEMENT_UI_SSO_PUBLIC_KEY_CACHE_HOURS=0.5

Dystrybucja właściwości logowania jednokrotnego

Właściwości SSO w Apigee są rozproszone w tych plikach konfiguracyjnych:

  • /opt/silent.conf (lub niestandardowy plik konfiguracyjny): zawiera podstawowe właściwości konfiguracji logowania jednokrotnego i nowego interfejsu Edge.
  • /opt/apigee/customer/application/openldap.properties: zawiera dodatkowe właściwości konfiguracji logowania jednokrotnego na potrzeby funkcji opcjonalnych, takich jak SAML i HTTPS.

Skrypt setup-sso w komponencie apigee-openldap analizuje zmienne z obu tych plików. W zależności od przypadku użycia musisz skonfigurować odpowiednie właściwości w plikach konfiguracyjnych.

Te kroki są opcjonalne i zależą od Twojego środowiska:

Tworzenie bazy danych logowania jednokrotnego w Postgres

W węźle, w którym działa apigee-postgresql (węzeł główny w konfiguracji podstawowej i rezerwowej), utwórz bazę danych na potrzeby logowania jednokrotnego:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-sso-db

Zastosuj konfiguracje logowania jednokrotnego w OpenLDAP

Logowanie jednokrotne w Apigee jest wbudowane w komponent katalogu, więc nie musisz instalować osobnego pakietu. Wystarczy zastosować plik konfiguracyjny w węźle OpenLDAP.

Aby włączyć i uruchomić logowanie jednokrotne w Apigee:
  1. Zaloguj się w węźle, w którym jest hostowany komponent apigee-openldap.
  2. Uruchom polecenie setup-sso, przekazując plik konfiguracyjny:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf

Konfigurowanie nowego interfejsu Edge

Gdy logowanie jednokrotne w Apigee jest uruchomione, musisz skonfigurować nowy interfejs Edge, aby mógł się z nim komunikować.

Gdy włączysz zewnętrznego dostawcę tożsamości w nowym interfejsie Edge, będzie on używać OIDC/OAuth2 do łączenia się z serwerem zarządzania. Nie musisz się martwić o wygasanie tokenów między nowym interfejsem Edge a serwerem zarządzania Edge. Wygasłe tokeny są automatycznie odświeżane.

  1. Zaloguj się w węźle, w którym jest hostowany nowy interfejs Edge.
  2. Upewnij się, że w tym węźle jest dostępny plik /opt/silent.conf.
  3. Zastosuj konfigurację za pomocą skryptu setup:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f /opt/silent.conf