ข้ามไปยังเนื้อหาหลัก

จัดการแอปที่ผู้ใช้ได้รับอนุญาต (grants)

Grant ของแอปแสดงถึงสถานะการอนุญาตของผู้ใช้สำหรับแอปพลิเคชันไคลเอนต์แต่ละตัว

ใช้การจัดการ grant เมื่อผู้ใช้หรือผู้ดูแลระบบต้องการตรวจสอบแอปที่ได้รับอนุญาตและเพิกถอนการเข้าถึงแอปโดยไม่ต้องเพิกถอนเซสชัน Logto ทั้งหมด

เมื่อมีการเพิกถอน grant โทเค็นทึบ (Opaque token) การเข้าถึง (Access token) และโทเค็นรีเฟรช (Refresh token) ที่ออกให้ก่อนหน้านี้สำหรับ grant เหล่านั้นจะถูกทำให้ใช้ไม่ได้ โทเค็นการเข้าถึง (Access token) แบบ JWT เป็นแบบไร้สถานะ (stateless) ดังนั้นโทเค็นที่ออกไปก่อนหน้านี้จะยังคงใช้ได้จนกว่าจะหมดอายุ

เลือกเส้นทางที่เหมาะสม

สถานการณ์เส้นทางที่แนะนำ
ให้ผู้ใช้ที่ลงชื่อเข้าแล้วจัดการการอนุญาตแอปของตนเองAccount API
ให้ผู้ดูแลระบบหรือทีมสนับสนุนจัดการ grant สำหรับผู้ใช้เป้าหมายManagement API
ให้ผู้ปฏิบัติงานจัดการการอนุญาตแอปของบุคคลที่สามใน UIAdmin Console

API สำหรับจัดการ grant โดยตรง

Account API (บริการตนเอง)

ใช้ Account API ในหน้าการตั้งค่าบัญชีของผู้ใช้ปลายทาง:

Management API (เครื่องมือผู้ดูแลระบบ)

ใช้ Management API ในเครื่องมือผู้ดูแลระบบและกระบวนการสนับสนุน:

กรองรายการ grant ตามประเภทแอป

จุดปลาย (endpoint) สำหรับแสดงรายการ grant รองรับพารามิเตอร์ query appType แบบเลือกได้:

  • appType=firstParty: แสดงเฉพาะ grant ของแอป first-party
  • appType=thirdParty: แสดงเฉพาะ grant ของแอป third-party
  • ไม่ระบุ appType: คืน grant ที่ใช้งานอยู่ทั้งหมด

ไคลเอนต์ Dynamic app ถือเป็นแอป third-party ดังนั้น grant ของพวกเขาจะถูกคืนค่าด้วย appType=thirdParty โดยใช้ URL client ID เป็นรหัสแอปพลิเคชัน

จัดการการอนุญาตแอป third-party ใน Console

ใน Logto Console ใช้หน้ารายละเอียดผู้ใช้เพื่อดูและเพิกถอนแอป third-party ที่ได้รับอนุญาต

เพิกถอน grant เมื่อเพิกถอนเซสชัน

เมื่อเพิกถอนเซสชันผ่าน DELETE /api/my-account/sessions/{sessionId} ให้ใช้พารามิเตอร์ query revokeGrantsTarget เพื่อควบคุมขอบเขตการเพิกถอน grant:

  • all: เพิกถอน grant สำหรับทุกแอปที่เกี่ยวข้องกับเซสชัน
  • firstParty: เพิกถอน grant เฉพาะสำหรับแอป first-party

สำหรับพฤติกรรมในระดับเซสชันและบริบทของ endpoint ดู จัดการเซสชันผู้ใช้ และ การออกจากระบบ

เซสชัน จัดการเซสชันผู้ใช้

การตั้งค่าบัญชีโดย Account API: จัดการแอปที่ผู้ใช้ได้รับอนุญาต (grants)

การตั้งค่าบัญชีโดย Management API: จัดการแอปที่ผู้ใช้ได้รับอนุญาต (grants)