نصب و پیکربندی Apigee SSO

از OPDK 4.54.00، معماری SSO مدرن شده است. کارگزار هویت (Dex) اکنون مستقیماً در مؤلفه apigee-openldap جاسازی شده است و نیاز به نصب ماژول قدیمی apigee-sso جداگانه را ازبین می‌برد.

برای فعال و پیکربندی کردن Apigee SSO، باید کارهای زیر را انجام دهید:

  1. ایجاد کاربر ماشین برای New Edge UI: کاربر ماشین موردنیاز برای New Edge UI را برای فراخوانی میاناهای برنامه‌سازی کاربردی مدیریت ایجاد کنید.
  2. پیکربندی مشخصه‌ها در فایل پیکربندی مشترک: فایل پیکربندی واحدی ایجاد کنید که حاوی مشخصه‌های موردنیاز هم سرویس OpenLDAP (SSO) و هم «میانای کاربری New Edge» باشد.
  3. ایجاد پایگاه داده SSO در Postgres: پایگاه داده‌ای برای SSO در نمونه Apigee PostgreSQL ایجاد کنید.
  4. اعمال پیکربندی‌های SSO در OpenLDAP: فایل پیکربندی را اعمال کنید تا Apigee SSO یکپارچه در گره OpenLDAP شروع شود.
  5. پیکربندی New Edge UI: ویژگی‌های New Edge UI را به‌روز کنید تا از Apigee SSO جدید استفاده کند.

هریک از این مراحل در بخش‌های زیر توضیح داده شده است.

ایجاد کاربر ماشین برای میانا

رابط کاربری Edge جدید برای فراخوانی میاناهای برنامه‌سازی کاربردی مدیریت در پس‌زمینه برای برخی عملیات‌ها به کاربر ماشین نیاز دارد. متنی که ازقبل در گره apigee-openldap نصب شده است برای این منظور استفاده می‌شود.

درباره کاربران ماشین و اسکریپت در استفاده از اسکریپت apigee-machine-user بیشتر بخوانید.

از دستور زیر در گره apigee-openldap برای ایجاد کاربر ماشین برای «میانای کاربری New Edge» استفاده کنید، و مطمئن شوید که هنگام تعریف کردن دارایی در فایل پیکربندی در مرحله بعدی، از همان اطلاعات اعتباری استفاده کنید.

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

پیکربندی ویژگی‌ها در فایل پیکربندی متداول

قبل‌از اینکه بتوانید Apigee SSO و New Edge UI را فعال کنید، باید یک فایل پیکربندی مشترک (برای مثال، /opt/silent.conf) تعریف کنید. می‌توانید این مسیر و نام فایل را طبق نیاز محیط خود تغییر دهید.

ویژگی‌های پیکربندی پایه زیر را به /opt/silent.conf اضافه کنید:

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

توزیع دارایی‌های SSO

ویژگی‌های Apigee SSO در فایل‌های پیکربندی زیر توزیع شده‌اند:

  • ‫/opt/silent.conf (یا فایل پیکربندی سفارشی شما): حاوی ویژگی‌های پیکربندی پایه برای SSO و «میانای کاربر Edge جدید» است.
  • /opt/apigee/customer/application/openldap.properties: حاوی دارایی‌های پیکربندی SSO اضافی برای ویژگی‌های اختیاری مثل SAML و HTTPS است.

اسکریپت setup-sso در مؤلفه apigee-openldap متغیرهای هر دو فایل بالا را تجزیه می‌کند. بسته به مورد استفاده‌تان، باید ویژگی‌های مربوطه را در فایل‌های پیکربندی پیکربندی کنید.

مراحل زیر بسته به محیط شما اختیاری است:

ایجاد پایگاه داده SSO در Postgres

در گره‌ای که apigee-postgresql در آن اجرا می‌شود (گره اصلی در راه‌اندازی اولیه-آماده‌به‌کار)، پایگاه داده‌ای برای SSO ایجاد کنید:

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

اعمال پیکربندی‌های SSO در OpenLDAP

ازآنجایی‌که Apigee SSO در عنصر فهرست راهنما جاسازی شده است، نیازی به نصب بسته مستقل ندارید. به‌سادگی فایل پیکربندی را روی گره OpenLDAP اعمال می‌کنید.

برای فعال کردن و شروع کردن Apigee SSO:
  1. به سیستم گره میزبان apigee-openldap وارد شوید.
  2. فرمان setup-sso را اجرا کنید و فایل پیکربندی‌تان را ارسال کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap setup-sso -f /opt/silent.conf

پیکربندی واسط کاربر New Edge

پس‌از اینکه Apigee SSO اجرا شد، باید «میانای کاربری New Edge» را پیکربندی کنید تا با آن ارتباط برقرار کند.

پس‌از فعال کردن IDP خارجی در New Edge UI،‏ New Edge UI از OIDC/OAuth2 برای اتصال به Management Server استفاده می‌کند. لازم نیست نگران منقضی شدن نشان‌ها بین «واسط کاربر Edge جدید» و «سرور مدیریت Edge» باشید. نشانه‌های منقضی‌شده به‌طور خودکار بازآوری می‌شوند.

  1. به سیستم گره میزبان New Edge UI وارد شوید.
  2. مطمئن شوید فایل /opt/silent.conf در این گره دردسترس باشد.
  3. پیکربندی را بااستفاده از دستورگان setup اعمال کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f /opt/silent.conf