ทําให้กระบวนการสร้างโทเค็นเป็นแบบอัตโนมัติ

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่ เอกสารประกอบของ Apigee X
info

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

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

เกี่ยวกับผู้ใช้เครื่อง

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

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

ขั้นตอนในการทำให้กระบวนการสร้างโทเค็นเป็นแบบอัตโนมัติ

วิธีทำให้กระบวนการสร้างโทเค็นเป็นแบบอัตโนมัติ

ขั้นตอน คำอธิบาย
1 สร้างผู้ใช้เครื่องในโซนข้อมูลประจำตัว SAML
2 มอบหมายบทบาทที่จำเป็นให้กับผู้ใช้เครื่องในองค์กร Edge
3 รับโทเค็น OAuth2 ของผู้ใช้เครื่อง

วิดีโอ: ดูวิดีโอสั้นๆ เพื่อเรียนรู้วิธีทำให้การเข้าถึง Apigee Edge API เป็นแบบอัตโนมัติโดยใช้ข้อมูลเข้าสู่ระบบของผู้ใช้เครื่อง

จัดการผู้ใช้เครื่องสำหรับโซนข้อมูลประจำตัว SAML

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

ใช้ CLI

หากต้องการใช้ CLI สำหรับการจัดการผู้ใช้เครื่อง ให้ดาวน์โหลดและแตกไฟล์ต่อไปนี้ก่อน: usermgmt.tar.gz(1)

รูปแบบการเรียก CLI มีดังนี้

usermgmt_platform [command] [flags]

ตารางต่อไปนี้สรุปแพลตฟอร์ม ที่รองรับและคำสั่งที่เกี่ยวข้องเพื่อเรียก CLI สำหรับการจัดการผู้ใช้เครื่อง (ไฟล์ที่เรียกใช้งานได้จะอยู่ในไดเรกทอรี usermgmt)

แพลตฟอร์ม 32 บิต 64 บิต
Linux usermgmt_linux_386 usermgmt_linux_amd64
Mac usermgmt_darwin_386 usermgmt_darwin_amd64
Windows usermgmt_windows_386 usermgmt_windows_amd64

ตารางต่อไปนี้สรุปคำสั่ง ที่ระบุได้

คำสั่ง ข้อมูลเพิ่มเติม
create สร้างผู้ใช้เครื่องในโซนข้อมูลประจำตัว
delete ลบผู้ใช้เครื่องในโซนข้อมูลประจำตัว
help รับความช่วยเหลือในการใช้ CLI
list แสดงรายการผู้ใช้เครื่องทั้งหมดในโซนข้อมูลประจำตัว
reset รีเซ็ตรหัสผ่านสำหรับผู้ใช้เครื่องในโซนข้อมูลประจำตัว

คุณยังส่งแฟล็ก อย่างใดอย่างหนึ่งต่อไปนี้เพื่อแสดงความช่วยเหลือเกี่ยวกับคำสั่งที่ระบุได้ด้วย -h หรือ --help

ลงชื่อเข้าใช้ CLI

เมื่อเรียกใช้ CLI เป็นครั้งแรกภายในระยะเวลา 24 ชั่วโมง ระบบจะแจ้งให้คุณป้อนข้อมูลเข้าสู่ระบบบัญชีzoneadmin

Enter your Apigee credentials
Username: zoneadmin-username
Password: zoneadmin-password
If your user is opted with MFA, enter MFA code. Otherwise press enter to skip.
MFA: mfa-code_or_enter_to_skip

CLI สำหรับการจัดการผู้ใช้เครื่องจะจัดเก็บโทเค็นเพื่อการเข้าถึงในเครื่องของคุณ คุณจึงต้องลงชื่อเข้าใช้เพียงครั้งเดียวต่อระยะเวลา 24 ชั่วโมง

รับความช่วยเหลือในการใช้ CLI

แสดงข้อมูลการใช้งาน CLI โดยใช้คำสั่ง usermgmt_platform help ดูรายการแพลตฟอร์มที่รองรับได้ที่หัวข้อใช้ CLI

usermgmt_platform help

ข้อมูลความช่วยเหลือต่อไปนี้จะปรากฏขึ้น

A command-line interface (CLI) to manage machine user accounts to automate
Apigee identity zone management. Use the CLI to create, list, delete,
and reset the password for machine users.

Usage:
  usermgmt [flags]
  usermgmt [command]

Available Commands:
  create  Creates a machine users in an identity zone.
  delete  Deletes a machine users in an identity zone.
  help    Help about any command
  list    Lists the machine users in an identity zone.
  reset   Resets the password for a machine user in an identity zone.

Flags:
  -h, --help               help for usermgmt

Use "usermgmt [command] --help" for more information about a command.

แสดงความช่วยเหลือเกี่ยวกับคำสั่งที่เฉพาะเจาะจงโดยส่งทั้งคำสั่งและแฟล็ก -h หรือ --help ในบรรทัดคำสั่ง

ตัวอย่างเช่น หากต้องการรับความช่วยเหลือเกี่ยวกับคำสั่ง list ให้ทำดังนี้

usermgmt_platform list -h

ข้อมูลความช่วยเหลือต่อไปนี้จะปรากฏขึ้น

Lists the machine users in an identity zone.

Usage:
  usermgmt list [flags]

Flags:
  -h, --help   help for list

สร้างผู้ใช้เครื่องในโซนข้อมูลประจำตัว

สร้างผู้ใช้เครื่องในโซนข้อมูลประจำตัวโดยใช้คำสั่ง usermgmt_platform create ดูรายการแพลตฟอร์มที่รองรับได้ที่หัวข้อใช้ CLI

  1. ป้อนคำสั่งต่อไปนี้
    usermgmt_platform create

    รายการโซนข้อมูลประจำตัวจะปรากฏขึ้น

    myzone1
    myzone2
  2. ป้อนชื่อโซนเมื่อได้รับข้อความแจ้ง
    Enter a zone name: myzone1
  3. ป้อนชื่อผู้ใช้สำหรับผู้ใช้เครื่อง
    Create a Machine User
    Username: machineuser1@mycompany.com
  4. ป้อนรหัสผ่านสำหรับผู้ใช้เครื่อง ป้อนรหัสผ่านอีกครั้งเมื่อได้รับข้อความแจ้ง
    Password: password
    Re-enter password: password 

    ระบบจะสร้างผู้ใช้

    Created machine user machineuser1@mycompany.com

แสดงรายการผู้ใช้เครื่องทั้งหมดในโซนข้อมูลประจำตัว

แสดงรายการผู้ใช้เครื่องทั้งหมดในโซนข้อมูลประจำตัวโดยใช้คำสั่ง usermgmt_platform list ดูรายการแพลตฟอร์มที่รองรับได้ที่หัวข้อใช้ CLI

  1. ป้อนคำสั่งต่อไปนี้
    usermgmt_platform list
    รายการโซนข้อมูลประจำตัวจะปรากฏขึ้น
    myzone1
    myzone2
  2. ป้อนชื่อโซนเมื่อได้รับข้อความแจ้ง
    Enter a zone name: myzone1

    รายการผู้ใช้เครื่องในโซนข้อมูลประจำตัวจะปรากฏขึ้น

    Machine users in the zone:
    machineuser1@mycompany.com
        

รีเซ็ตรหัสผ่านสำหรับผู้ใช้เครื่องในโซนข้อมูลประจำตัว

รีเซ็ตรหัสผ่านสำหรับผู้ใช้เครื่องในโซนข้อมูลประจำตัวโดยใช้คำสั่ง usermgmt_platform reset ดูรายการแพลตฟอร์มที่รองรับได้ที่หัวข้อใช้ CLI

  1. ป้อนคำสั่งต่อไปนี้
    usermgmt_platform reset

    รายการโซนข้อมูลประจำตัวจะปรากฏขึ้น

    myzone1
    myzone2
  2. ป้อนชื่อโซนเมื่อได้รับข้อความแจ้ง
    Enter a zone name: myzone1
  3. ป้อนชื่อผู้ใช้สำหรับผู้ใช้เครื่องที่คุณต้องการรีเซ็ตรหัสผ่าน
    Reset User Password
    Enter the username for the machine user
    Username: machineuser1@mycompany.com
  4. ป้อนรหัสผ่านใหม่สำหรับผู้ใช้เครื่อง ป้อนรหัสผ่านอีกครั้งเมื่อได้รับข้อความแจ้ง
    Enter the new password: password
    Re-enter password: password

    ระบบจะรีเซ็ตรหัสผ่าน

    Reset password for machine user machineuser1@mycompany.com

ลบผู้ใช้เครื่องในโซนข้อมูลประจำตัว

ลบผู้ใช้เครื่องในโซนข้อมูลประจำตัวโดยใช้คำสั่ง usermgmt_platform delete ดูรายการแพลตฟอร์มที่รองรับได้ที่หัวข้อใช้ CLI

  1. ป้อนคำสั่งต่อไปนี้
    usermgmt_platform delete
    รายการโซนข้อมูลประจำตัวจะปรากฏขึ้น
    myzone1
    myzone2
  2. ป้อนชื่อโซนเมื่อได้รับข้อความแจ้ง
    Enter a zone name: myzone1
  3. ป้อนชื่อผู้ใช้สำหรับผู้ใช้เครื่องที่คุณต้องการลบ
    Delete User
    Enter the username for the machine user
    Username: machineuser1@mycompany.com 

    ระบบจะลบผู้ใช้เครื่อง

    Deleted user machineuser1@mycompany.com

มอบหมายบทบาทที่จำเป็นให้กับผู้ใช้เครื่องในองค์กร Edge

ใช้ UI เพื่อเพิ่มผู้ใช้เครื่องลงในองค์กร Edge ที่เปิดใช้ SAML และมอบหมายบทบาทที่จำเป็น (เช่น ผู้ดูแลระบบองค์กร) ตามที่อธิบายไว้ในหัวข้อการเพิ่มผู้ใช้

รับโทเค็น OAuth2 ของผู้ใช้เครื่อง

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

วิธีรับโทเค็น OAuth2 ของผู้ใช้เครื่องด้วยตนเองโดยใช้ curl

  1. ใช้เครื่องมือเข้ารหัส URL ที่ต้องการเพื่อเข้ารหัสชื่อผู้ใช้และรหัสผ่านของผู้ใช้เครื่อง

    คำเตือน: ใช้เครื่องมือเข้ารหัส URL ภายใน เพื่อให้มั่นใจ ว่าข้อมูลเข้าสู่ระบบของผู้ใช้เครื่องจะไม่ถูกบุกรุก

  2. สร้างโทเค็นเพื่อการเข้าถึงและโทเค็นการรีเฟรชเริ่มต้นโดยการเรียกปลายทางโทเค็น SAML ที่แสดงในตัวอย่างต่อไปนี้
    curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
      -H "accept: application/json;charset=utf-8" \
      -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \
      https://zoneName.login.apigee.com/oauth/token -s \
      -d 'grant_type=password&username=machineusername&password=machineuserpassword'

    สำหรับการให้สิทธิ์ ให้ส่งข้อมูลเข้าสู่ระบบไคลเอ็นต์ OAuth2 ที่สงวนไว้ ZWRnZWNsaTplZGdlY2xpc2VjcmV0 ในส่วนหัว Authorization การเรียกจะพิมพ์โทเค็นเพื่อการเข้าถึงและโทเค็นการรีเฟรชไปยัง stdout

  3. ส่งโทเค็นเพื่อการเข้าถึงไปยังการเรียก Edge Management API เป็นส่วนหัว Bearer ดังนี้
    curl -H "Authorization: Bearer ACCESS_TOKEN" \
      https://api.enterprise.apigee.com/v1/organizations/orgName
  4. เมื่อโทเค็นเพื่อการเข้าถึงหมดอายุ คุณสามารถรีเฟรชได้โดยส่งโทเค็นการรีเฟรชไปยังปลายทางโทเค็น SAML ดังที่แสดงในตัวอย่างต่อไปนี้
    curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \
      -H "Accept: application/json;charset=utf-8" \
      -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \
      https://zoneName.login.apigee.com/oauth/token \
      -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'

(1) Copyright 2023 Google LLC
เครื่องมือ usermgmt, acurl และ get_token มีให้ใช้งานเป็น "ซอฟต์แวร์" ภายใต้ ข้อตกลงที่ควบคุมการใช้ Google Cloud Platform ของคุณ ซึ่งรวมถึงข้อกำหนด เฉพาะบริการที่ https://cloud.google.com/terms/service-terms