การจัดการผู้ใช้ บทบาท และสิทธิ์

เว็บไซต์เอกสารของ Apigee มีข้อมูลโดยละเอียดเกี่ยวกับการจัดการบทบาทและสิทธิ์ของผู้ใช้ คุณจัดการผู้ใช้ได้โดยใช้ทั้ง Edge UI และ Management API โดยบทบาทและสิทธิ์จะจัดการได้ด้วย Management API เท่านั้น

สำหรับข้อมูลเกี่ยวกับผู้ใช้และการสร้างผู้ใช้ โปรดดูที่

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

การเพิ่มผู้ใช้

คุณจะสร้างผู้ใช้ได้โดยใช้คำสั่ง Edge API, Edge UI หรือ Edge หัวข้อนี้จะอธิบายวิธีใช้คำสั่ง Edge API และ Edge ดูข้อมูลเกี่ยวกับการสร้างผู้ใช้ใน Edge UI ได้ที่การสร้างผู้ใช้ส่วนกลาง

หลังจากสร้างผู้ใช้ในองค์กรแล้ว คุณต้องมอบหมายบทบาทให้กับผู้ใช้ บทบาทจะกำหนดสิทธิ์การเข้าถึงของผู้ใช้ใน Edge

ใช้คำสั่งต่อไปนี้เพื่อสร้างผู้ใช้ด้วย Edge API

curl -H "Content-Type:application/xml" \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X POST http://ms_IP:8080/v1/users \
  -d '<User> \
    <FirstName>New</FirstName> \
    <LastName>User</LastName> \
    <Password>NEW_USER_PASSWORD</Password> \
    <EmailId>foo@bar.com</EmailId> \
  </User>'

หรือใช้คำสั่ง Edge ต่อไปนี้เพื่อสร้างผู้ใช้

/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile

ตำแหน่งที่ configFile สร้างผู้ใช้ ตามตัวอย่างต่อไปนี้

APIGEE_ADMINPW=SYS_ADMIN_PASSWORD    # If omitted, you will be prompted.
USER_NAME=foo@bar.com
FIRST_NAME=New
LAST_NAME=User
USER_PWD="NEW_USER_PASSWORD"
ORG_NAME=myorg

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

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com

การมอบหมายบทบาทในองค์กรให้แก่ผู้ใช้

ผู้ใช้ต้องได้รับมอบหมายบทบาทในองค์กรก่อน จึงจะดำเนินการใดๆ ได้ คุณมอบหมายบทบาทต่างๆ ให้กับผู้ใช้ได้ เช่น orgadmin, businessuser, opsadmin, user หรือบทบาทที่กำหนดเองซึ่งกำหนดในองค์กร

การมอบหมายบทบาทในองค์กรให้กับผู้ใช้จะเพิ่มผู้ใช้รายนั้นไปยังองค์กรโดยอัตโนมัติ มอบหมายผู้ใช้ให้กับหลายองค์กรโดยการมอบหมายบทบาทในแต่ละองค์กร

ใช้คำสั่งต่อไปนี้เพื่อมอบหมายบทบาทในองค์กรให้แก่ผู้ใช้

curl -X POST -H "Content-Type:application/x-www-form-urlencoded" \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users?id=foo@bar.com \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

การโทรนี้จะแสดงบทบาททั้งหมดที่มอบหมายให้กับผู้ใช้ หากคุณต้องการเพิ่มผู้ใช้ แต่แสดงเฉพาะบทบาทใหม่ ให้ใช้การเรียกต่อไปนี้

curl -X POST -H "Content-Type: application/xml" \
  http://ms_IP:8080/v1/o/org_name/users/foo@bar.com/userroles \
  -d '<Roles><Role name="role"/><Roles>' \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

คุณสามารถดูบทบาทของผู้ใช้โดยใช้คำสั่งต่อไปนี้

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/userroles

หากต้องการนำผู้ใช้ออกจากองค์กร ให้นำบทบาททั้งหมดในองค์กรนั้นออกจากผู้ใช้ ใช้คำสั่งต่อไปนี้เพื่อนำบทบาทออกจากผู้ใช้

curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users/foo@bar.com

การเพิ่มผู้ดูแลระบบ

ผู้ดูแลระบบสามารถทำสิ่งต่อไปนี้

  • สร้างองค์กร
  • เพิ่มเราเตอร์ ตัวประมวลผลข้อความ และคอมโพเนนต์อื่นๆ ลงในการติดตั้ง Edge
  • กำหนดค่า TLS/SSL
  • สร้างผู้ดูแลระบบเพิ่มเติม
  • ทำงานดูแลระบบ Edge ทั้งหมด

งานการดูแลระบบจะมีผู้ใช้เริ่มต้นได้เพียงคนเดียว แต่ก็อาจมีผู้ดูแลระบบได้มากกว่า 1 คน ผู้ใช้ที่เป็นสมาชิกของบทบาท "ผู้ดูแลระบบ" จะมีสิทธิ์โดยสมบูรณ์ในทรัพยากรทั้งหมด

คุณสร้างผู้ใช้สำหรับผู้ดูแลระบบได้ใน Edge UI หรือ API อย่างไรก็ตาม คุณต้องใช้ Edge API เพื่อมอบหมายบทบาท "ผู้ดูแลระบบ" ให้แก่ผู้ใช้ คุณจะกำหนดบทบาท "ผู้ดูแลระบบ" ให้กับผู้ใช้ใน Edge UI ไม่ได้

ในการเพิ่มผู้ดูแลระบบ ให้ทำดังนี้

  1. สร้างผู้ใช้ใน Edge UI หรือ API
  2. เพิ่มผู้ใช้ลงในบทบาท "ผู้ดูแลระบบ":
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      -X POST http://ms_IP:8080/v1/userroles/sysadmin/users -d 'id=foo@bar.com'
  3. ตรวจสอบว่าผู้ใช้ใหม่อยู่ในบทบาท "ผู้ดูแลระบบ":
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

    แสดงอีเมลของผู้ใช้

    [ " foo@bar.com " ]
  4. ตรวจสอบสิทธิ์ของผู้ใช้ใหม่:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions

    ส่งคืน:

    {
      "resourcePermission" : [ {
      "path" : "/",
        "permissions" : [ "get", "put", "delete" ]
      } ]
    }
  5. หลังจากเพิ่มผู้ดูแลระบบคนใหม่แล้ว คุณจะเพิ่มผู้ใช้รายดังกล่าวในองค์กรใดก็ได้
  6. หากต้องการนำผู้ใช้ออกจากบทบาทผู้ดูแลระบบระบบในภายหลัง คุณสามารถใช้ API ต่อไปนี้ได้:
    curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com

    โปรดทราบว่าการเรียกนี้จะนำผู้ใช้ออกจากบทบาทเท่านั้น ไม่ได้เป็นการลบผู้ใช้

การเปลี่ยนผู้ใช้ที่เป็นผู้ดูแลระบบเริ่มต้น

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

หัวข้อนี้จะอธิบายวิธีเปลี่ยนผู้ดูแลระบบเริ่มต้นเป็นผู้ใช้รายอื่น และวิธีเปลี่ยนอีเมลของบัญชีผู้ใช้สำหรับผู้ดูแลระบบเริ่มต้นคนปัจจุบัน

หากต้องการดูรายชื่อผู้ใช้ที่กำหนดค่าเป็นผู้ดูแลระบบในปัจจุบัน ให้ใช้การเรียก API ต่อไปนี้

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

หากต้องการระบุผู้ดูแลระบบเริ่มต้นในปัจจุบัน โปรดดูไฟล์ /opt/apigee/customer/defaults.sh ไฟล์จะมีบรรทัดต่อไปนี้ซึ่งแสดงอีเมลของผู้ดูแลระบบเริ่มต้นคนปัจจุบัน

ADMIN_EMAIL=foo@bar.com

วิธีเปลี่ยนผู้ดูแลระบบเริ่มต้นเป็นผู้ใช้รายอื่น

  1. สร้างผู้ดูแลระบบใหม่ตามที่อธิบายไว้ข้างต้น หรือตรวจสอบว่ามีการกำหนดค่าบัญชีผู้ใช้ของผู้ดูแลระบบรายใหม่เป็นผู้ดูแลระบบแล้ว
  2. แก้ไข /opt/apigee/customer/defaults.sh เพื่อตั้งค่า ADMIN_EMAIL เป็นอีเมลของผู้ดูแลระบบคนใหม่
  3. แก้ไขไฟล์การกำหนดค่าแบบปิดเสียงที่คุณใช้ติดตั้ง Edge UI เพื่อตั้งค่าคุณสมบัติต่อไปนี้
    ADMIN_EMAIL=NEW_SYS_ADMIN_EMAIL
    APIGEE_ADMINPW=NEW_SYS_ADMIN_PASSWORD
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y

    โปรดทราบว่าคุณต้องรวมพร็อพเพอร์ตี้ SMTP ไว้ เนื่องจากระบบจะรีเซ็ตพร็อพเพอร์ตี้ทั้งหมดใน UI

  4. กำหนดค่า Edge UI อีกครั้ง ดังนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui start

หากต้องการเปลี่ยนอีเมลของบัญชีผู้ใช้สำหรับผู้ดูแลระบบเริ่มต้นในปัจจุบัน ให้อัปเดตบัญชีผู้ใช้เพื่อกำหนดอีเมลใหม่ก่อน จากนั้นจึงเปลี่ยนอีเมลเริ่มต้นของผู้ดูแลระบบ

  1. อัปเดตบัญชีผู้ใช้ของผู้ดูแลระบบเริ่มต้นคนปัจจุบันด้วยอีเมลใหม่:
    curl -H content-type:application/json -X PUT -u CURRENT_SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/users/CURRENT_SYS_ADMIN_EMAIL \
      -d '{"emailId": "NEW_SYS_ADMIN_EMAIL", "lastName": "admin", "firstName": "admin"}'
  2. ทำขั้นตอนที่ 2, 3 และ 4 จากขั้นตอนก่อนหน้าซ้ำเพื่ออัปเดตไฟล์ /opt/apigee/customer/defaults.sh และอัปเดต UI ของ Edge

การระบุโดเมนอีเมลของ ผู้ดูแลระบบ

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

โดยค่าเริ่มต้น โดเมนที่จำเป็นจะว่างเปล่า ซึ่งหมายความว่าคุณจะเพิ่มอีเมลใดก็ได้ให้กับบทบาท "ผู้ดูแลระบบ"

ในการตั้งค่าโดเมนอีเมล ให้ทำดังนี้

  1. เปิดไฟล์ management-server.properties ในตัวแก้ไข
    vi /opt/apigee/customer/application/management-server.properties

    หากไม่มีไฟล์นี้ ให้สร้างขึ้นมา

  2. ตั้งค่าพร็อพเพอร์ตี้ conf_security_rbac.global.roles.allowed.domains เป็นรายการโดเมนที่อนุญาตที่คั่นด้วยคอมมา ตัวอย่างเช่น
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. บันทึกการเปลี่ยนแปลง
  4. รีสตาร์ท Edge Management Server โดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    หากตอนนี้คุณพยายามเพิ่มผู้ใช้ในบทบาท "sysadmin" และอีเมลของผู้ใช้ไม่อยู่ในโดเมนที่ระบุ คุณจะเพิ่มไม่สำเร็จ

การลบผู้ใช้

คุณจะสร้างผู้ใช้ได้โดยใช้ Edge API หรือ Edge UI แต่คุณจะลบผู้ใช้ได้โดยใช้ API เท่านั้น

หากต้องการดูรายชื่อผู้ใช้ปัจจุบัน รวมถึงอีเมล ให้ใช้คำสั่ง curl ต่อไปนี้

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms-IP:8080/v1/users

ใช้คำสั่ง curl ต่อไปนี้เพื่อลบผู้ใช้

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X DELETE http://ms_IP:8080/v1/users/USER_EMAIL