پیکربندی کردن پورتال «خدمات توسعه‌دهنده» برای استفاده از SAML به‌منظور ارتباط با Edge

Edge for Private Cloud نسخه ۴.۱۷.۰۹

پورتال «خدمات توسعه‌دهنده» به‌عنوان کارخواه Apigee Edge عمل می‌کند. این یعنی درگاه به‌عنوان سیستم مستقل عمل نمی‌کند. درعوض، بیشتر اطلاعاتی که درگاه استفاده می‌کند درواقع در Edge ذخیره می‌شود. درصورت لزوم، درگاه درخواستی برای بازیابی اطلاعات از Edge یا ارسال اطلاعات به Edge ایجاد می‌کند.

پورتال همیشه با یک سازمان Edge مرتبط است. وقتی درگاه را پیکربندی می‌کنید، می‌توانید اعتبارنامه‌های اصالت‌سنجی پایه (نام کاربری و گذرواژه) را برای حسابی در سازمان که درگاه از آن برای برقراری ارتباط با Edge استفاده می‌کند مشخص کنید.

اگر تصمیم بگیرید SAML را برای اصالت‌سنجی Edge فعال کنید، می‌توانید درگاه را پیکربندی کنید تا هنگام درخواست دادن به Edge از اصالت‌سنجی SAML استفاده کند. پیکربندی درگاه برای استفاده از SAML به‌طور خودکار حساب کاربری ماشین جدیدی در سازمان Edge ایجاد می‌کند که درگاه سپس از آن برای درخواست دادن به Edge استفاده می‌کند. برای کسب اطلاعات بیشتر درباره کاربران ماشینی، به استفاده از SAML با تکالیف خودکار مراجعه کنید.

پشتیبانی SAML برای درگاه مستلزم این است که قبلاً واحد SSO‏ Edge را در گره «سرور مدیریت Edge» نصب و پیکربندی کرده باشید. فرایند کلی برای فعال کردن SAML برای درگاه عبارت است از:

  1. SAML را در Edge پیکربندی کنید، همان‌طور که در نصب و پیکربندی SAML برای Edge توضیح داده شده است. توجه: برای نصب درگاه، Basic Auth باید همچنان در Edge فعال باشد. تا زمانی که درگاه را برای استفاده از SAML پیکربندی نکرده‌اید، «احراز هویت پایه» را در Edge غیرفعال نکنید.
  2. پورتال را نصب کنید و مطمئن شوید که نصب به‌درستی کار می‌کند. نصب Edge برای درگاه «سرویس‌های توسعه‌دهنده Cloud خصوصی» را ببینید.
  3. SAML را در درگاه پیکربندی کنید.
  4. اکنون می‌توانید «احراز هویت پایه» را در Edge غیرفعال کنید.

درحال ایجاد کاربر ماشین برای درگاه

وقتی SAML فعال باشد، Edge از تولید خودکار کد OAuth2 ازطریق استفاده از کاربران ماشین پشتیبانی می‌کند. کاربر ماشین می‌تواند بدون نیاز به مشخص کردن گذرنویسه، کدهای OAuth2 را دریافت کند. یعنی می‌توانید فرایند دریافت و بازآوری کدهای OAuth2 را کاملاً خودکار کنید.

فرایند پیکربندی SAML برای درگاه به‌طور خودکار یک کاربر ماشین در سازمان مرتبط با درگاه ایجاد می‌کند. سپس درگاه از این حساب کاربری ماشین برای اتصال به Edge استفاده می‌کند. برای کسب اطلاعات بیشتر درباره کاربران ماشینی، به استفاده از SAML با تکالیف خودکار مراجعه کنید.

درباره اصالت‌سنجی برای حساب‌های توسعه‌دهنده درگاه

وقتی پورتال را برای استفاده از SAML پیکربندی می‌کنید، پورتال را فعال می‌کنید تا از SAML برای اصالت‌سنجی با Edge استفاده کند تا پورتال بتواند درخواست‌هایی به Edge ارسال کند. بااین‌حال، این درگاه از نوعی کاربر به نام توسعه‌دهنده نیز پشتیبانی می‌کند.

توسعه‌دهندگان انجمن کاربرانی را تشکیل می‌دهند که بااستفاده از میاناهای برنامه‌سازی کاربردی شما برنامه می‌سازند. توسعه‌دهندگان نرم‌افزار از این درگاه برای آشنایی با میاناهای برنامه‌سازی کاربردی شما، ثبت برنامه‌هایی که از میاناهای برنامه‌سازی کاربردی شما استفاده می‌کنند، تعامل با انجمن توسعه‌دهندگان، و مشاهده اطلاعات آماری درباره استفاده از برنامه‌شان در داشبورد استفاده می‌کنند.

وقتی توسعه‌دهنده‌ای به درگاه وارد می‌شود، درگاه مسئول اصالت‌سنجی توسعه‌دهنده و اعمال اجازه‌های مبتنی بر نقش است. حتی پس‌از اینکه SAML را بین درگاه و Edge فعال کنید، درگاه همچنان از اصالت‌سنجی پایه با توسعه‌دهندگان استفاده می‌کند. برای اطلاعات بیشتر، برقراری ارتباط بین پورتال و Edge را ببینید.

همچنین می‌توان درگاه را برای استفاده از SAML جهت اصالت‌سنجی توسعه‌دهندگان پیکربندی کرد. برای نمونه‌ای از فعال کردن SAML بااستفاده از ماژول‌های Drupal شخص ثالث، به https://community.apigee.com/articles/29201/sso-integration-via-saml-with-developer-portal.html مراجعه کنید.

پیکربندی SAML در درگاه برای برقراری ارتباط با Edge

برای پیکربندی SAML برای درگاه، باید فایل پیکربندی ایجاد کنید تا درگاه را پیکربندی کنید:

# IP address of Edge Management Server and apigee-sso node.
IP1=22.222.22.222

# URL of Edge management API.
MGMT_URL=http://$IP1:8080/v1

# Org associated with the portal.
EDGE_ORG=myorg

# Information about apigee-sso.
# Externally accessible IP or DNS of apigee-sso.
SSO_PUBLIC_URL_HOSTNAME=$IP1
SSO_PUBLIC_URL_PORT=9099
# Default is http. Set to https if you enabled TLS on apigee-sso.
SSO_PUBLIC_URL_SCHEME=http

# SSO admin credentials as set when you installed apigee-sso.
SSO_ADMIN_NAME=ssoadmin
SSO_ADMIN_SECRET=Secret123

# Default is "n" to disable SAML support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth client used to connect to apigee-sso. 
# The default client name is portalcli.
PORTALCLI_SSO_CLIENT_NAME=portalcli
# Oauth client password using uppercase, lowercase, number, and special chars. 
PORTALCLI_SSO_CLIENT_SECRET=Abcdefg@1

# Email address and user info for the machine user created in 
# the Edge org specified above by EDGE_ORG. 
# This account is used by the portal to make requests to Edge.
# Add this email as an org admin before configuring the portal to use SAML. 
DEVPORTAL_ADMIN_EMAIL=DevPortal_SAML@google.com
DEVPORTAL_ADMIN_FIRSTNAME=DevPortal
DEVPORTAL_ADMIN_LASTNAME=SAMLAdmin
DEVPORTAL_ADMIN_PWD=Abcdefg@1

# If set, the existing portal OAuth client is deleted and new one is created.
# The default value is "n".
# Set to "y" when you configure SAML and change the value of 
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

برای فعال کردن پشتیبانی از SAML در پورتال:

  1. در Edge UI، کاربر ماشینی را که با DEVPORTAL_ADMIN_EMAIL مشخص شده است به سازمان مرتبط با پورتال به‌عنوان سرپرست سازمان اضافه کنید.
    توجه: کاربر ماشین هنوز وجود ندارد اما به‌طور خودکار در مرحله بعدی ایجاد می‌شود.
  2. فرمان زیر را برای پیکربندی SAML در درگاه اجرا کنید:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f samlConfigFile

    که در آن samlConfigFile فایل پیکربندی SAML است.
  3. به‌عنوان سرپرست درگاه به سیستم درگاه وارد شوید.
  4. در منو اصلی Drupal، پیکربندی > درگاه توسعه را انتخاب کنید. صفحه پیکربندی درگاه، ازجمله تنظیمات SAML، ظاهر می‌شود:

    توجه داشته باشید که چارگوش این سازمان SAML-فعال است علامت زده شده است، نقطه پایانی برای واحد Edge SSO پر شده است، فیلدهای کلید API و رمز مصرف‌کننده برای کارخواه Oauth درگاه پر شده است، و پیام اتصال موفقیت‌آمیز بود زیر دکمه آزمایش اتصال نشان داده می‌شود.

  5. هرزمان خواستید می‌توانید با فشار دادن دکمه آزمایش کردن اتصال، اتصال را دوباره آزمایش کنید.

برای تغییر دادن این مقادیر در آینده، فایل پیکربندی را به‌روز کنید و فرمان را دوباره اجرا کنید.

غیرفعال کردن SAML در درگاه

اگر تصمیم بگیرید SAML را برای ارتباطات بین درگاه و Edge غیرفعال کنید، درگاه دیگر نمی‌تواند به Edge درخواست ارسال کند. توسعه‌دهندگان می‌توانند به سیستم درگاه وارد شوند اما نمی‌توانند محصول را مشاهده کنند یا برنامه ایجاد کنند.

احتیاط: اگر SAML را غیرفعال کنید، باید آن را در پورتال دوباره پیکربندی کنید تا یا از SAML استفاده کند یا، اگر Edge هنوز برای پشتیبانی از «اصالت‌سنجی پایه» پیکربندی شده است، پورتال را پیکربندی کنید تا بااستفاده از «اصالت‌سنجی پایه» با Edge ارتباط برقرار کند. برای اطلاعات بیشتر درباره استفاده از «احراز هویت پایه»، به برقراری ارتباط بین درگاه و Edge مراجعه کنید.

برای غیرفعال کردن SAML در درگاه:

  1. فایل پیکربندی را که برای پیکربندی SAM استفاده کردید ویرایش کنید تا این مقدار را تنظیم کنید:
    DEVPORTAL_SSO_ENABLED=n
  2. پیکربندی درگاه:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile