อินเทอร์เฟซ Auth
ที่รับรู้กลุ่มผู้ใช้ซึ่งใช้สำหรับการจัดการผู้ใช้ กำหนดค่าผู้ให้บริการ SAML/OIDC สร้างลิงก์อีเมลสำหรับรีเซ็ตรหัสผ่าน ยืนยันอีเมล ฯลฯ สำหรับกลุ่มผู้ใช้ที่เฉพาะเจาะจง
การรองรับกลุ่มผู้ใช้หลายกลุ่มต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดูเอกสารประกอบเกี่ยวกับ GCIP
กลุ่มผู้ใช้แต่ละกลุ่มมีผู้ให้บริการข้อมูลประจำตัว การตั้งค่า และชุดของผู้ใช้ของตัวเอง เมื่อใช้ TenantAwareAuth
ผู้ใช้สำหรับกลุ่มผู้ใช้ที่เจาะจงและการกำหนดค่า OIDC/SAML ที่เกี่ยวข้องยังได้รับการจัดการ ยืนยันโทเค็นรหัสสำหรับผู้ใช้ที่ลงชื่อเข้าใช้กลุ่มผู้ใช้ที่เจาะจง และสร้างลิงก์การดำเนินการทางอีเมลสำหรับผู้ใช้ที่อยู่ในกลุ่มผู้ใช้นั้นได้ด้วย
สร้างอินสแตนซ์ TenantAwareAuth
ที่เจาะจง tenantId
ได้โดยเรียกใช้ TenantManager.authForTenant()
ลายเซ็น:
export declare class TenantAwareAuth extends BaseAuth
ขยาย: BaseAuth
พร็อพเพอร์ตี้
พร็อพเพอร์ตี้ | คีย์ตัวปรับแต่ง | ประเภท | คำอธิบาย |
---|---|---|---|
รหัสกลุ่มผู้ใช้ | สตริง | ตัวระบุกลุ่มผู้ใช้ที่สอดคล้องกับอินสแตนซ์ TenantAwareAuth นี้ การเรียก API การจัดการผู้ใช้ทั้งหมด, API การจัดการผู้ให้บริการ OIDC/SAML, API การสร้างลิงก์อีเมล ฯลฯ จะใช้ภายในขอบเขตของกลุ่มผู้ใช้นี้เท่านั้น |
เมธอด
วิธีการ | คีย์ตัวปรับแต่ง | คำอธิบาย |
---|---|---|
createSessionCookie(idToken, sessionCookieOptions) | สร้างคุกกี้เซสชัน Firebase ใหม่ด้วยตัวเลือกที่ระบุ คุณสามารถตั้งค่าสตริง JWT ที่สร้างขึ้นเป็นคุกกี้เซสชันฝั่งเซิร์ฟเวอร์ด้วยนโยบายคุกกี้ที่กำหนดเอง และใช้สำหรับการจัดการเซสชัน JWT คุกกี้เซสชันจะมีการอ้างสิทธิ์เพย์โหลดเดียวกันกับโทเค็นรหัสที่ระบุโปรดดูตัวอย่างโค้ดและเอกสารโดยละเอียดที่จัดการคุกกี้ของเซสชัน | |
verifyIdToken(idToken, checkOverrided) | ยืนยันโทเค็นรหัส Firebase (JWT) หากโทเค็นถูกต้อง จะมีการดำเนินการตามที่สัญญาไว้พร้อมกับการอ้างสิทธิ์ที่ถอดรหัสแล้วของโทเค็น มิฉะนั้น สัญญาจะถูกปฏิเสธหากตั้งค่า checkRevoked เป็น "จริง" ก่อนอื่นให้ตรวจสอบว่าผู้ใช้ที่เกี่ยวข้องปิดใช้อยู่หรือไม่ หากใช่ ระบบจะแสดงข้อผิดพลาด auth/user-disabled หากไม่ใช่ ให้ตรวจสอบว่าเซสชันที่เกี่ยวข้องกับโทเค็นรหัสถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง ระบบจะแสดงข้อผิดพลาด auth/id-token-revoked หากไม่ระบุ ระบบจะไม่ใช้การตรวจสอบโปรดดูตัวอย่างโค้ดและเอกสารโดยละเอียดที่ยืนยันโทเค็นรหัส |
|
verifySessionCookie(sessionCookie, checkการเพิกถอน) | ยืนยันคุกกี้เซสชัน Firebase ส่งคืน Promise พร้อมการอ้างสิทธิ์คุกกี้ ปฏิเสธการสัญญาหากยืนยันคุกกี้ไม่ได้หากตั้งค่า checkRevoked เป็น "จริง" ก่อนอื่นให้ตรวจสอบว่าผู้ใช้ที่เกี่ยวข้องปิดใช้อยู่หรือไม่ หากใช่ ระบบจะแสดงข้อผิดพลาด auth/user-disabled หากไม่ใช่ ให้ยืนยันว่าเซสชันที่เกี่ยวข้องกับคุกกี้ของเซสชันถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง ระบบจะแสดงข้อผิดพลาด auth/session-cookie-revoked ถ้าไม่ระบุ จะไม่มีการตรวจสอบดูยืนยันคุกกี้ของเซสชันสำหรับตัวอย่างโค้ดและเอกสารโดยละเอียด |
TenantAwareAuth.tenantId
ตัวระบุกลุ่มผู้ใช้ที่สอดคล้องกับอินสแตนซ์ TenantAwareAuth
นี้ การเรียก API การจัดการผู้ใช้ทั้งหมด, API การจัดการผู้ให้บริการ OIDC/SAML, API การสร้างลิงก์อีเมล ฯลฯ จะใช้ภายในขอบเขตของกลุ่มผู้ใช้นี้เท่านั้น
ลายเซ็น:
readonly tenantId: string;
TenantAwareAuth.createSessionCookie()
สร้างคุกกี้เซสชัน Firebase ใหม่ด้วยตัวเลือกที่ระบุ คุณสามารถตั้งค่าสตริง JWT ที่สร้างขึ้นเป็นคุกกี้เซสชันฝั่งเซิร์ฟเวอร์ด้วยนโยบายคุกกี้ที่กำหนดเอง และใช้สำหรับการจัดการเซสชัน JWT คุกกี้เซสชันจะมีการอ้างสิทธิ์เพย์โหลดเหมือนกับโทเค็นรหัสที่ระบุ
โปรดดูจัดการคุกกี้ของเซสชันสำหรับตัวอย่างโค้ดและเอกสารโดยละเอียด
ลายเซ็น:
createSessionCookie(idToken: string, sessionCookieOptions: SessionCookieOptions): Promise<string>;
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
โทเค็นรหัส | สตริง | โทเค็นรหัส Firebase สำหรับแลกเปลี่ยนกับคุกกี้ของเซสชัน |
ตัวเลือกคุกกี้เซสชัน | ตัวเลือกคุกกี้ของเซสชัน | ตัวเลือกคุกกี้เซสชันซึ่งมีระยะเวลาเซสชันที่กำหนดเอง |
การคืนสินค้า:
คำมั่นสัญญา<สตริง>
สัญญาที่แก้ปัญหาให้ประสบความสำเร็จด้วยคุกกี้เซสชันที่สร้างขึ้น
TenantAwareAuth.verifyIdToken()
ยืนยันโทเค็นรหัส Firebase (JWT) หากโทเค็นถูกต้อง จะมีการดำเนินการตามที่สัญญาไว้พร้อมกับการอ้างสิทธิ์ที่ถอดรหัสแล้วของโทเค็น ไม่เช่นนั้น คำสัญญาจะถูกปฏิเสธ
หากตั้งค่า checkRevoked
เป็น "จริง" ก่อนอื่นให้ตรวจสอบว่าผู้ใช้ที่เกี่ยวข้องปิดใช้อยู่หรือไม่ หากใช่ ระบบจะแสดงข้อผิดพลาด auth/user-disabled
หากไม่ใช่ ให้ตรวจสอบว่าเซสชันที่เกี่ยวข้องกับโทเค็นรหัสถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง ระบบจะแสดงข้อผิดพลาด auth/id-token-revoked
หากไม่ระบุไว้ ระบบจะไม่ใช้การตรวจสอบ
โปรดดูยืนยันโทเค็นรหัสสำหรับตัวอย่างโค้ดและเอกสารโดยละเอียด
ลายเซ็น:
verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
โทเค็นรหัส | สตริง | โทเค็นรหัสที่ต้องยืนยัน |
เพิกถอนการตรวจสอบแล้ว | boolean | ระบุว่าโทเค็นรหัสถูกเพิกถอนหรือไม่ โดยจำเป็นต้องมีคำขอเพิ่มเติมไปยังแบ็กเอนด์ Firebase Auth เพื่อตรวจสอบเวลา tokensValidAfterTime ของผู้ใช้ที่เกี่ยวข้อง เมื่อไม่ระบุ การตรวจสอบเพิ่มเติมนี้จะไม่มีผล |
การคืนสินค้า:
สัญญา<DeCodeIdToken>
คำมั่นสัญญาที่บรรลุกับการอ้างสิทธิ์ที่ถอดรหัสแล้วของโทเค็นหากโทเค็นรหัสถูกต้อง ไม่เช่นนั้น ถือว่าสัญญาถูกปฏิเสธ
TenantAwareAuth.verifySessionCookie()()
ยืนยันคุกกี้เซสชัน Firebase ส่งคืน Promise พร้อมการอ้างสิทธิ์คุกกี้ ปฏิเสธสัญญาหากยืนยันคุกกี้ไม่ได้
หากตั้งค่า checkRevoked
เป็น "จริง" ก่อนอื่นให้ตรวจสอบว่าผู้ใช้ที่เกี่ยวข้องถูกปิดใช้หรือไม่ หากใช่ ระบบจะแสดงข้อผิดพลาด auth/user-disabled
หากไม่ใช่ ให้ยืนยันว่าเซสชันที่เกี่ยวข้องกับคุกกี้ของเซสชันถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง ระบบจะแสดงข้อผิดพลาด auth/session-cookie-revoked
หากไม่ได้ระบุ จะไม่มีการตรวจสอบ
ดูยืนยันคุกกี้ของเซสชันสำหรับตัวอย่างโค้ดและเอกสารโดยละเอียด
ลายเซ็น:
verifySessionCookie(sessionCookie: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
คุกกี้เซสชัน | สตริง | คุกกี้เซสชันที่ต้องยืนยัน |
เพิกถอนการตรวจสอบแล้ว | boolean |
การคืนสินค้า:
สัญญา<DeCodeIdToken>
คำสัญญาที่ทำสำเร็จพร้อมกับการอ้างสิทธิ์ที่ถอดรหัสของคุกกี้เซสชันหากคุกกี้เซสชันถูกต้อง ไม่เช่นนั้น ถือว่าสัญญาถูกปฏิเสธ