กําหนดค่าพอร์ทัลเพื่อใช้ IDP ภายนอก

พอร์ทัล Apigee Developer Services (หรือเรียกง่ายๆ ว่าพอร์ทัล) จะทำหน้าที่เป็นลูกค้าของ Apigee Edge ซึ่งหมายความว่าพอร์ทัลจะไม่ เป็นระบบแบบสแตนด์อโลน แต่ข้อมูลส่วนใหญ่ที่พอร์ทัลใช้คือ ซึ่งจัดเก็บอยู่ใน Edge พอร์ทัลจะขอเรียกข้อมูลจาก Edge หรือ เพื่อส่งข้อมูลไปยัง Edge

พอร์ทัลจะเชื่อมโยงกับองค์กร Edge เดียวเสมอ เมื่อคุณกำหนดค่าพารามิเตอร์ พอร์ทัลคุณจะสามารถกำหนด ข้อมูลเข้าสู่ระบบการตรวจสอบสิทธิ์พื้นฐาน (ชื่อผู้ใช้และรหัสผ่าน) สำหรับ บัญชีในองค์กรที่พอร์ทัลใช้เพื่อสื่อสารกับ Edge

หากคุณเลือกเปิดใช้ IDP ภายนอก เช่น SAML หรือ LDAP สำหรับการตรวจสอบสิทธิ์ Edge คุณจะกำหนดค่าพอร์ทัลเพื่อใช้ การตรวจสอบสิทธิ์ดังกล่าวเมื่อส่งคำขอไปยัง Edge การกำหนดค่าพอร์ทัลเพื่อใช้ IdP ภายนอก สร้างบัญชีผู้ใช้ของเครื่องใหม่โดยอัตโนมัติในองค์กร Edge ซึ่งพอร์ทัลจะสร้างบัญชีดังกล่าว ใช้เพื่อส่งคำขอไปยัง Edge สำหรับข้อมูลเพิ่มเติมเกี่ยวกับผู้ใช้เครื่อง โปรดดูที่ ทำให้งานสำหรับ IdP ภายนอกเป็นแบบอัตโนมัติ

การสนับสนุน IdP ภายนอกสำหรับพอร์ทัลกำหนดให้คุณต้องติดตั้งและกำหนดค่าพารามิเตอร์ โมดูล SSO ของ Apigee ในโหนด Edge Management Server ขั้นตอนทั่วไปสำหรับการเปิดใช้ผู้ใช้ภายนอก IDP สำหรับพอร์ทัลมีดังนี้

  1. ติดตั้งโมดูล SSO ของ Apigee ตามที่อธิบายไว้ใน ติดตั้ง SSO ของ Apigee สำหรับความพร้อมใช้งานสูง
  2. ติดตั้งพอร์ทัลและตรวจสอบว่าการติดตั้งทำงานได้อย่างถูกต้อง โปรดดู ติดตั้งพอร์ทัล
  3. กำหนดค่า SAML หรือ LDAP ในพอร์ทัลดังที่อธิบายไว้ในส่วนนี้
  4. (ไม่บังคับ) ปิดใช้การตรวจสอบสิทธิ์ขั้นพื้นฐานใน Edge ตามที่อธิบายไว้ใน ปิดใช้การตรวจสอบสิทธิ์พื้นฐานใน Edge

สร้างผู้ใช้เครื่องสำหรับพอร์ทัล

เมื่อเปิดใช้ IdP ภายนอก Edge จะรองรับการสร้างโทเค็น OAuth2 อัตโนมัติผ่าน การใช้งานผู้ใช้เครื่อง ผู้ใช้เครื่องสามารถรับโทเค็น OAuth2 ได้โดยไม่ต้องระบุ รหัสผ่าน นั่นหมายความว่าคุณสามารถทำให้กระบวนการรับและรีเฟรช OAuth2 เป็นไปโดยอัตโนมัติได้โดยสมบูรณ์ โทเค็น

กระบวนการกำหนดค่า IDP สำหรับพอร์ทัลจะสร้างผู้ใช้เครื่องโดยอัตโนมัติใน ขององค์กรที่เชื่อมโยงกับพอร์ทัล จากนั้นพอร์ทัลจะใช้บัญชีผู้ใช้ของเครื่องนี้ในการ เชื่อมต่อกับ Edge สำหรับข้อมูลเพิ่มเติมเกี่ยวกับผู้ใช้เครื่อง ให้ดูที่การทำงานอัตโนมัติ งานสำหรับ IdP ภายนอก

เกี่ยวกับการตรวจสอบสิทธิ์สำหรับนักพัฒนาพอร์ทัล บัญชี

เมื่อกำหนดค่าพอร์ทัลให้ใช้ IdP ภายนอก คุณต้องเปิดให้พอร์ทัลใช้ SAML อย่างใดอย่างหนึ่ง หรือ LDAP เพื่อตรวจสอบสิทธิ์ กับ Edge เพื่อให้พอร์ทัลส่งคำขอไปยัง Edge ได้ อย่างไรก็ตาม พอร์ทัลยังรองรับประเภท ของผู้ใช้ที่เรียกว่านักพัฒนาซอฟต์แวร์

นักพัฒนาซอฟต์แวร์ประกอบด้วยชุมชนของผู้ใช้ที่สร้างแอปโดยใช้ API ของคุณ นักพัฒนาแอป ใช้พอร์ทัลเพื่อดูข้อมูลเกี่ยวกับ API และลงทะเบียนแอปที่ใช้ API เพื่อโต้ตอบกับ และเพื่อดูข้อมูลทางสถิติเกี่ยวกับการใช้งานแอปของนักพัฒนาซอฟต์แวร์ใน หน้าแดชบอร์ด

เมื่อนักพัฒนาแอปเข้าสู่ระบบพอร์ทัล พอร์ทัลดังกล่าวจะเป็น มีการตรวจสอบสิทธิ์นักพัฒนาซอฟต์แวร์และบังคับใช้สิทธิ์ตามบทบาท พอร์ทัลยังคง ใช้การตรวจสอบสิทธิ์พื้นฐานกับนักพัฒนาซอฟต์แวร์ แม้จะเปิดใช้การตรวจสอบสิทธิ์ IDP ระหว่าง และ Edge สำหรับข้อมูลเพิ่มเติม โปรดดูที่การสื่อสาร ระหว่างพอร์ทัลและ Edge

คุณยังกำหนดค่าพอร์ทัลเพื่อใช้ SAML หรือ LDAP เพื่อตรวจสอบสิทธิ์นักพัฒนาซอฟต์แวร์ได้ด้วย สำหรับ ตัวอย่างการเปิดใช้ SAML โดยใช้โมดูล Drupal ของบุคคลที่สาม โปรดดู การผสานรวม SSO ผ่านทาง SAML กับพอร์ทัลนักพัฒนาซอฟต์แวร์

ไฟล์การกำหนดค่า IDP สำหรับพอร์ทัล

หากต้องการกำหนดค่า IdP ภายนอกสำหรับพอร์ทัล คุณต้องสร้างไฟล์การกำหนดค่าที่ระบุ การตั้งค่าของพอร์ทัล

ตัวอย่างต่อไปนี้แสดงไฟล์การกำหนดค่าพอร์ทัลที่มีการรองรับ IDP

# IP address of Edge Management Server and the node on which the Apigee SSO module is installed.
IP1=22.222.22.222

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

# Organization associated with the portal.
EDGE_ORG=myorg

# Information about the Apigee SSO module (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

# Enables or disables external IDP support.
# Default is "n", which disables external IDP support.
# Change it to "y" to enable external IDs support.
DEVPORTAL_SSO_ENABLED=y

# The name of the OAuth2 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 characters.
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 an external IDP.
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 a new one is created.
# The default value is "n".
# Set to "y" when you configure the external IDP and change the value of
# any of the PORTALCLI_* properties.
PORTALCLI_SSO_CLIENT_OVERWRITE=y

วิธีเปิดใช้การรองรับ IdP ภายนอกในพอร์ทัล

  1. ใน Edge UI ให้เพิ่มผู้ใช้เครื่องที่ DEVPORTAL_ADMIN_EMAIL ระบุลงใน องค์กรที่เชื่อมโยงกับพอร์ทัลในฐานะผู้ดูแลระบบองค์กร
  2. เรียกใช้คำสั่งต่อไปนี้เพื่อกำหนดค่า IdP ภายนอกบนพอร์ทัล
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile

    โดยที่ configFile คือไฟล์การกำหนดค่าตามที่อธิบายไว้ข้างต้น

  3. ลงชื่อเข้าสู่ระบบพอร์ทัลในฐานะผู้ดูแลระบบพอร์ทัล
  4. ในเมนู Drupal หลัก ให้เลือก Configuration > พอร์ทัลนักพัฒนาซอฟต์แวร์ พอร์ทัล หน้าจอการกำหนดค่าจะปรากฏขึ้น รวมถึงการตั้งค่า IDP ภายนอกดังนี้

    โปรดทราบดังต่อไปนี้

    • เลือกช่อง This org is SAML-enabled
    • กรอกปลายทางสำหรับโมดูล SSO ของ Apigee แล้ว
    • ช่องคีย์ API และข้อมูลลับของผู้ใช้สำหรับ ระบบกรอกไคลเอ็นต์ OAuth ของพอร์ทัล
    • ข้อความเชื่อมต่อสำเร็จปรากฏขึ้นในส่วนทดสอบ ปุ่มการเชื่อมต่อ
  5. คลิกปุ่มทดสอบการเชื่อมต่อเพื่อทดสอบการเชื่อมต่ออีกครั้งที่ ตลอดเวลา

หากต้องการเปลี่ยนค่าเหล่านี้ในภายหลัง ให้อัปเดตไฟล์การกำหนดค่าและเรียกใช้ขั้นตอนนี้ อีกครั้ง

ปิดใช้ IdP ภายนอกในพอร์ทัล

หากคุณเลือกปิดใช้ IdP ภายนอกสำหรับการสื่อสารระหว่างพอร์ทัลและ Edge พอร์ทัลจะส่งคำขอไปยัง Edge ไม่ได้อีกต่อไป นักพัฒนาแอปสามารถเข้าสู่ระบบ แต่จะดูผลิตภัณฑ์หรือสร้างแอปไม่ได้

วิธีปิดใช้การตรวจสอบสิทธิ์ IDP ภายนอกในพอร์ทัล

  1. เปิดไฟล์การกำหนดค่าที่คุณใช้ก่อนหน้านี้เพื่อเปิดใช้ IdP ภายนอก
  2. ตั้งค่าของพร็อพเพอร์ตี้ DEVPORTAL_SSO_ENABLED เป็น n เป็น ตัวอย่างต่อไปนี้จะแสดง
    DEVPORTAL_SSO_ENABLED=n
  3. กำหนดค่าพอร์ทัลโดยเรียกใช้คำสั่งต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile