การใช้ SAML กับงานอัตโนมัติ

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

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

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

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

สร้างผู้ใช้เครื่อง

ใช้ยูทิลิตี apigee-ssoadminapi.sh เพื่อสร้างผู้ใช้เครื่องสำหรับองค์กร SAML ดูข้อมูลเพิ่มเติมได้ที่การใช้ apigee-ssoadminapi.sh คุณจะสร้างผู้ใช้เครื่อง 1 รายที่ใช้โดยองค์กรทั้งหมด หรือสร้างผู้ใช้เครื่องแยกสำหรับแต่ละองค์กรก็ได้

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

เมื่อสร้างผู้ใช้เครื่อง คุณต้องระบุอีเมลและรหัสผ่าน หลังจากสร้างผู้ใช้เครื่องแล้ว คุณสามารถมอบหมายผู้ใช้ให้กับองค์กรอย่างน้อย 1 แห่งได้

วิธีสร้างผู้ใช้เครื่อง

  1. ใช้คำสั่ง apigee-ssoadminapi.sh ต่อไปนี้เพื่อสร้างผู้ใช้เครื่อง
    > apigee-ssoadminapi.sh saml machineuser add --admin SSO_ADMIN_NAME --secret SSO_ADMIN_SECRET --host edge_sso_IP_or_DNS -u machine_user_email

    • SSO_ADMIN_NAME คือชื่อผู้ใช้ของผู้ดูแลระบบที่พร็อพเพอร์ตี้ SSO_ADMIN_NAME กำหนดในไฟล์การกำหนดค่าที่ใช้กำหนดค่าโมดูล Edge SSO ค่าเริ่มต้นคือ ssoadmin
    • SSO_ADMIN_SECRET คือรหัสผ่านของผู้ดูแลระบบตามที่พร็อพเพอร์ตี้ SSO_ADMIN_SECRET ระบุไว้ในไฟล์การกำหนดค่า

      ในตัวอย่างนี้ คุณละเว้นค่าสำหรับ --port และ --ssl ได้เพราะโมดูล apigee-sso ใช้ค่าเริ่มต้น 9099 สำหรับ --port และ http สำหรับ --ssl หากการติดตั้งของคุณไม่ได้ใช้ค่าเริ่มต้นเหล่านี้ ให้ระบุค่าดังกล่าวตามความเหมาะสม
  2. เข้าสู่ระบบ Edge UI แล้วเพิ่มอีเมลของผู้ใช้เครื่องไปยังองค์กร รวมถึงกำหนดบทบาทที่จำเป็นให้กับผู้ใช้เครื่อง ดูการเพิ่มผู้ใช้ทั่วโลกสำหรับข้อมูลเพิ่มเติม

รับและรีเฟรชโทเค็นผู้ใช้ของเครื่อง

ใช้ Edge API เพื่อรับและรีเฟรชโทเค็น OAuth2 โดยการส่งข้อมูลเข้าสู่ระบบของผู้ใช้เครื่องแทนการใช้รหัสผ่าน

หากต้องการรับโทเค็น OAuth2 สำหรับผู้ใช้เครื่อง ให้ทำดังนี้

  1. ใช้การเรียก API ต่อไปนี้เพื่อสร้างโทเค็นการเข้าถึงเริ่มต้นและรีเฟรชโทเค็น:
    > curl -H "Content-Type: application/x-www-form-urlencrypted;charset=utf-8" /
    -H "accept: application/json;charset=utf-8" /
    -H "Authorization: Basic ZWRnZWNYsaTplZGAuthorization"


    edge_sso_IP_DNS
    การโทรจะพิมพ์การเข้าถึงและรีเฟรชโทเค็นไปยังหน้าจอ เก็บโทเค็นไว้ใช้ในภายหลัง
  2. ส่งโทเค็นเพื่อการเข้าถึงไปยังการเรียก Edge Management API เป็นส่วนหัวสำหรับผู้ถือ:
    > curl -H "Authorization: Bearer access_token" http://ms_IP_DNS:8080/v1/organizations/orgName

    โดยที่ orgName คือชื่อขององค์กรที่มีเครื่อง
  3. หากต้องการรีเฟรชโทเค็นเพื่อการเข้าถึงในภายหลัง ให้เรียกโทเค็นต่อไปนี้ที่มีโทเค็นการรีเฟรช
    > curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" /
    -H "accept: application/json;charset=utf-8" /
    -H "refresh:propl_Authorization: Basic ZWRnZcrentialsa Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0"RnZWh"


    edge_sso_IP_DNS

สร้างผู้ใช้เครื่องโดยใช้ Edge Management API

คุณสร้างผู้ใช้เครื่องได้โดยใช้ Edge Management API แทนการใช้ยูทิลิตี apigee-ssoadminapi.sh วิธีสร้างผู้ใช้เครื่อง

  1. ใช้คำสั่ง cURL ต่อไปนี้เพื่อรับโทเค็นสำหรับผู้ใช้ ssoadmin. เป็นชื่อผู้ใช้ของบัญชีผู้ดูแลระบบสำหรับ apigee-sso:
    > curl "http://edge_sso_IP_DNS:9099/oauth/token" -iตอบ -X POST /
    -H 'Received: application/json-json' / -H 'จะต้องเข้ารหัสแอปพลิเคชัน"




    edge_sso_IP_DNS

    คำสั่งนี้จะแสดงโทเค็นที่คุณต้องใช้ในการเรียกครั้งต่อไป
  2. ใช้คำสั่ง cURL ต่อไปนี้เพื่อสร้างผู้ใช้เครื่อง , ส่งผ่านโทเค็นที่คุณได้รับในขั้นตอนก่อนหน้า:
    > curl "http://edge_sso_IP_DNS:9099/Users" -i -X POST /
    -H "Accept: application/json" -H "Content-Type: application/json" /
    -d Ops "user"


  3. เข้าสู่ระบบ Edge UI แล้วเพิ่มอีเมลของผู้ใช้เครื่องไปยังองค์กร รวมถึงกำหนดบทบาทที่จำเป็นให้กับผู้ใช้เครื่อง ดูการเพิ่มผู้ใช้ทั่วโลกสำหรับข้อมูลเพิ่มเติม