การกําหนดค่าพอร์ทัลให้ใช้ SAML เพื่อสื่อสารกับ Edge

Edge สำหรับ Private Cloud เวอร์ชัน 4.19.01

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

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

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

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

  1. กำหนดค่า SAML ใน Edge ตามที่อธิบายไว้ในการติดตั้งและการกำหนดค่า SAML สำหรับ Edge หมายเหตุ: ยังคงต้องเปิดใช้การตรวจสอบสิทธิ์พื้นฐานบน Edge เพื่อติดตั้งพอร์ทัล อย่าปิดใช้ Basic Auth on Edge จนกว่าคุณจะกำหนดค่าพอร์ทัลให้ใช้ SAML แล้ว
  2. ติดตั้งพอร์ทัลและตรวจสอบว่าการติดตั้งทำงานอย่างถูกต้อง โปรดดูหัวข้อการติดตั้ง Edge สำหรับพอร์ทัล Private Cloud
  3. กำหนดค่า SAML ในพอร์ทัล
  4. ตอนนี้คุณปิดใช้การตรวจสอบสิทธิ์พื้นฐานบน Edge ได้แล้ว

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

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

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

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

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

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

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

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

กำหนดค่า 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 ในพอร์ทัล

  1. แก้ไขไฟล์การกำหนดค่าที่คุณใช้กำหนดค่า SAM เพื่อตั้งค่า:
    DEVPORTAL_SSO_ENABLED=n
  2. กำหนดค่าพอร์ทัลดังนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-drupal-devportal configure-sso -f configFile