สร้างองค์กร
ลองจินตนาการว่าคุณกำลังสร้าง แอปหลายผู้เช่า (multi-tenant app) (เช่น แอป SaaS หลายผู้เช่า) ที่ให้บริการลูกค้าหลายราย โดยแต่ละรายจะมีผู้เช่า (tenant) ของตนเอง
โดยปกติแล้ว องค์กรจะถูกสร้างขึ้นเมื่อ:
- ลูกค้าใหม่สมัครใช้งานและสร้างทั้งบัญชีและผู้เช่าสำหรับธุรกิจของตน
- ผู้ใช้ที่มีอยู่แล้วสามารถสร้างองค์กรใหม่จากภายในแอป
การสร้างองค์กรในแอป
มีสองวิธีในการสร้างองค์กรสำหรับแอปของคุณ
สร้างผ่าน Logto Console
สร้างองค์กรด้วยตนเองผ่าน UI ของ Logto Console ไปที่ Console > Organizations เพื่อสร้างองค์กร กำหนดสมาชิกและบทบาท และปรับแต่งประสบการณ์การลงชื่อเข้าใช้องค์กร
สร้าง แม่แบบองค์กร (organization template) เพื่อสร้างองค์กรที่มีบทบาทและสิทธิ์เหมือนกันแบบกลุ่ม
สร้างผ่าน Logto Management API
Console เหมาะสำหรับการตั้งค่าด้วยตนเอง แต่แอปส่วนใหญ่จะให้ผู้ใช้ปลายทางสร้างและจัดการองค์กรได้เองโดยตรงในแอปของคุณ หากต้องการเช่นนั้น ให้พัฒนาฟีเจอร์เหล่านี้ด้วย Logto Management API
หากคุณยังใหม่กับ Logto Management API โปรดอ่านสิ่งเหล่านี้ก่อน:
Management APIInteract with Management APIสมมติว่า backend ของคุณเชื่อมต่อกับ Logto Management API ผ่านกลไก machine‑to‑machine (M2M) และคุณได้รับ M2M access token แล้ว
สร้างองค์กรด้วย Management API (API references):
curl \
-X POST https://[tenant_id].logto.app/api/organizations \
-H "Authorization: Bearer $M2M_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tenantId":"string","name":"string","description":"string","customData":{},"isMfaRequired":false,"branding":{"logoUrl":"string","darkLogoUrl":"string","favicon":"string","darkFavicon":"string"},"createdAt":1234567890}'
จากนั้นเพิ่มผู้ใช้เป็นสมาชิกขององค์กร (API reference):
curl \
-X POST https://[tenant_id].logto.app/api/organizations/{id}/users \
-H "Authorization: Bearer $M2M_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"userIds":["string"]}'
หากต้องการ สามารถกำหนดบทบาทองค์กรเฉพาะให้กับผู้ใช้ (API reference)
ดู API specs ฉบับเต็ม สำหรับรายละเอียดเพิ่มเติม
ห่อคำสั่งเหล่านี้ไว้ในเลเยอร์ API ของคุณเอง เมื่อผู้ใช้ดำเนินการ “สร้างองค์กร” ในแอปของคุณ ให้ตรวจสอบคำขอโดยเช็คสิทธิ์ของพวกเขา จากนั้นเรียก Logto Management API เพื่อดำเนินการให้เสร็จสมบูรณ์
ตรวจสอบโทเค็นองค์กรในคำขอของผู้ใช้
ในแอปของคุณ เมื่อผู้ใช้ดำเนินการต่าง ๆ ในบริบทขององค์กร พวกเขาต้องใช้โทเค็นองค์กร (organization token) แทนโทเค็นการเข้าถึง (access token) ปกติ โทเค็นองค์กรคือ JWT ที่มีสิทธิ์ขององค์กร เช่นเดียวกับ โทเค็นการเข้าถึง (access token) คุณสามารถถอดรหัสการอ้างสิทธิ์ (claims) และตรวจสอบการอ้างสิทธิ์ "scope" เพื่อบังคับใช้สิทธิ์ได้
ดู การอนุญาต (Authorization) สำหรับสถานการณ์การอนุญาตและวิธีตรวจสอบโทเค็นองค์กร