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

Edge for Private Cloud v4.18.05

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

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

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

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

  1. กำหนดค่า SAML ใน Edge ตามที่อธิบายไว้ในการติดตั้งและการกําหนดค่า SAML สําหรับ Edge หมายเหตุ: คุณยังคงต้องเปิดใช้การตรวจสอบสิทธิ์พื้นฐานใน Edge เพื่อติดตั้งพอร์ทัล อย่าปิดใช้การตรวจสอบสิทธิ์พื้นฐานใน Edge จนกว่าคุณจะกำหนดค่าพอร์ทัลให้ใช้ SAML แล้ว
  2. ติดตั้งพอร์ทัลและตรวจสอบว่าการติดตั้งทํางานได้อย่างถูกต้อง ดูการติดตั้งพอร์ทัล Edge for 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. ใน UI ของ Edge ให้เพิ่มผู้ใช้เครื่องที่ระบุโดย 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 ได้รับการเลือกแล้ว มีการป้อนข้อมูลปลายทางสําหรับโมดูล SSO ของ Edge, ป้อนข้อมูลในช่องคีย์ 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