การจัดการองค์กร
เมื่อพัฒนา แอปแบบหลายผู้เช่า (multi-tenant app) สถานการณ์ที่พบบ่อยคือการมีแพลตฟอร์มให้สมาชิกในองค์กรของคุณสามารถจัดการทรัพยากรขององค์กรตนเองได้
ขอยกตัวอย่างการตั้งค่าองค์กรพื้นฐานที่มีทั้งบทบาทผู้ดูแล (admin) และสมาชิกทั่วไป (member)
บทบาท (Role) | สิทธิ์ (Permissions) |
---|---|
ผู้ดูแล (Admin) | จัดการสมาชิกในองค์กร เช่น เชิญ, อัปเดตบทบาทสมาชิก, ลบสมาชิก ฯลฯ จัดการข้อมูลองค์กร เช่น อัปเดตชื่อองค์กรและข้อมูลกำหนดเอง, ลบองค์กร ฯลฯ |
สมาชิก (Member) | สามารถเชิญผู้ใช้เข้าสู่องค์กรเท่านั้น |
ดังนั้นเราสามารถกำหนด แม่แบบองค์กร (organization template) ดังนี้:

หลังจากตั้งค่าแม่แบบองค์กรแล้ว คุณอาจสร้าง API หลายตัวในบริการของคุณที่เรียก Management API เบื้องหลังเพื่อดำเนินการจัดการในองค์กรที่ระบุ API เหล่านี้ควรตรวจสอบโทเค็นองค์กร (organization token) เพื่อให้แน่ใจว่าผู้ใช้มีสิทธิ์ที่จำเป็น
ตัวอย่างการให้ผู้ใช้จัดการองค์กรของตนเอง
นี่คือตัวอย่างสิ่งที่คุณสามารถให้ผู้ใช้ทำได้ในแอปหลายองค์กรของคุณ:
ให้ทุกคนเชิญสมาชิกได้:
คุณสามารถให้ทั้งผู้ดูแลและสมาชิกเชิญผู้อื่นเข้าสู่องค์กรได้ ดู เอกสารนี้ สำหรับรายละเอียดเกี่ยวกับการเชิญสมาชิก
ผู้ดูแลสามารถแก้ไขบทบาทสมาชิก:
ผู้ดูแลสามารถมีสิทธิ์ในการแก้ไขบทบาทของสมาชิกคนอื่น ๆ และสามารถสร้างบทบาทเฉพาะเพิ่มเติมสำหรับองค์กร เช่น หัวหน้าแผนก ผู้จัดการโครงการ ผู้ประสานงาน ฯลฯ สิ่งนี้สามารถทำได้ด้วย Management API เหล่านี้:
curl \
-X POST https://[tenant_id].logto.app/api/organizations/{id}/users/{userId}/roles \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"organizationRoleIds":["admin"]}'
หรือแบบกลุ่ม:
curl \
-X POST https://[tenant_id].logto.app/api/organizations/{id}/users/roles \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"userIds":["userId1", "userId2"],"organizationRoleIds":["admin"]}'
เพิ่มบอทสู่องค์กร
คุณยังสามารถเพิ่มฟีเจอร์ให้ผู้ดูแลเพิ่มบอทสู่องค์กรที่ระบุได้ โดยเริ่มจากสร้างแอป Machine-to-Machine (M2M) ก่อน แล้วจึงเพิ่มแอป M2M เหล่านี้สู่องค์กรในฐานะบอท
curl \
-X POST https://[tenant_id].logto.app/api/organizations/{id}/applications \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"applicationIds":["botAppId"]}'
จากนั้นคุณยังสามารถกำหนดบทบาทองค์กรให้กับบอทเหล่านี้ได้
curl \
-X POST https://[tenant_id].logto.app/api/organizations/{id}/applications/roles \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"applicationIds":["botApp1"],"organizationRoleIds":["botRoleId"]}'
ปลดล็อกความเป็นไปได้มากขึ้นด้วย Management API
ตัวอย่างข้างต้นเป็นเพียงบางส่วนของความเป็นไปได้มากมายที่คุณสามารถทำได้ด้วย Management API ดูรายการ Management API endpoint ของ Logto ทั้งหมดและดูว่าคุณสามารถทำอะไรได้อีกบ้าง:
ดึงข้อมูลองค์กรดึงขอบเขตขององค์กร
ดึงบทบาทขององค์กรดึงคำเชิญขององค์กร