อินเทอร์เฟซหลักทั่วไปสำหรับทั้ง Auth
และ TenantAwareAuth
API
ลายเซ็น:
export declare abstract class BaseAuth
วิธีการ
วิธี | ตัวดัดแปลง | คำอธิบาย |
---|---|---|
createCustomToken (uid, นักพัฒนาการอ้างสิทธิ์) | สร้างโทเค็นที่กำหนดเองของ Firebase (JWT) ใหม่ที่สามารถส่งกลับไปยังอุปกรณ์ไคลเอ็นต์เพื่อใช้ในการลงชื่อเข้าใช้ด้วยเมธอด signInWithCustomToken() ของ SDK ของไคลเอ็นต์ (อินสแตนซ์ที่รับรู้ผู้เช่าจะฝังรหัสผู้เช่าในโทเค็นด้วย) ดู สร้างโทเค็นแบบกำหนดเอง สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
createProviderConfig (กำหนดค่า) | ส่งคืนสัญญาที่แก้ไขด้วย AuthProviderConfig ที่สร้างขึ้นใหม่เมื่อมีการสร้างการกำหนดค่าผู้ให้บริการใหม่ การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP . | |
createSessionCookie (idToken, sessionCookieOptions) | สร้างคุกกี้เซสชัน Firebase ใหม่พร้อมตัวเลือกที่ระบุ สตริง JWT ที่สร้างขึ้นสามารถตั้งค่าเป็นคุกกี้เซสชันฝั่งเซิร์ฟเวอร์ด้วยนโยบายคุกกี้ที่กำหนดเอง และใช้สำหรับการจัดการเซสชัน คุกกี้เซสชัน JWT จะมีการอ้างสิทธิ์เพย์โหลดเดียวกันกับโทเค็น ID ที่ให้มา ดู จัดการคุกกี้เซสชัน สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
createUser(คุณสมบัติ) | สร้างผู้ใช้ใหม่ ดู สร้างผู้ใช้ สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
ลบProviderConfig (providerId) | ลบการกำหนดค่าผู้ให้บริการที่สอดคล้องกับรหัสผู้ให้บริการที่ส่งผ่าน หากไม่มี ID ที่ระบุ ข้อผิดพลาด auth/configuration-not-found จะปรากฏขึ้น การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP . | |
ลบผู้ใช้(uid) | ลบผู้ใช้ที่มีอยู่ ดู ลบผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
ลบผู้ใช้ (uids) | ลบผู้ใช้ที่ระบุโดย uid ที่กำหนด การลบผู้ใช้ที่ไม่มีอยู่จะไม่สร้างข้อผิดพลาด (เช่น วิธีการนี้คือ idempotent) ผู้ใช้ที่ไม่มีอยู่จะถือว่าลบได้สำเร็จ และด้วยเหตุนี้จึงนับรวมในค่า DeleteUsersResult.successCount สามารถระบุตัวระบุได้สูงสุด 1,000 ตัวเท่านั้น หากมีการระบุตัวระบุมากกว่า 1,000 ตัว วิธีการนี้จะส่งออก FirebaseAuthError ปัจจุบัน API นี้ถูกจำกัดอัตราไว้ที่เซิร์ฟเวอร์ที่ 1 QPS หากเกินนี้ คุณอาจได้รับข้อผิดพลาดเกินโควต้า ดังนั้น หากคุณต้องการลบผู้ใช้มากกว่า 1,000 ราย คุณอาจต้องเพิ่มความล่าช้าเพื่อให้แน่ใจว่าจะไม่เกินขีดจำกัดนี้ | |
GenerateEmailVerificationLink (อีเมล, actionCodeSettings) | สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ ActionCodeSettings ที่ระบุเป็นอาร์กิวเมนต์ของเมธอดนี้จะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปบนอุปกรณ์เคลื่อนที่หรือเบราว์เซอร์ พร้อมด้วยข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น | |
GeneratePasswordResetLink (อีเมล, actionCodeSettings) | สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อรีเซ็ตรหัสผ่านของผู้ใช้ ลิงค์ถูกสร้างขึ้นสำหรับผู้ใช้ที่มีที่อยู่อีเมลที่ระบุ ออบเจ็กต์ ActionCodeSettings ที่เป็นตัวเลือกจะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปมือถือหรือเบราว์เซอร์ และข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น | |
GenerateSignInWithEmailLink (อีเมล, actionCodeSettings) | สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ ActionCodeSettings ที่ระบุเป็นอาร์กิวเมนต์ของเมธอดนี้จะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปบนอุปกรณ์เคลื่อนที่หรือเบราว์เซอร์ พร้อมด้วยข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น | |
GenerateVerifyAndChangeEmailLink (อีเมล, newEmail, actionCodeSettings) | สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ ActionCodeSettings ที่ระบุเป็นอาร์กิวเมนต์ของเมธอดนี้จะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปบนอุปกรณ์เคลื่อนที่หรือเบราว์เซอร์ พร้อมด้วยข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น | |
getProviderConfig (รหัสผู้ให้บริการ) | ค้นหาการกำหนดค่าผู้ให้บริการการตรวจสอบสิทธิ์ตามรหัสที่ให้มา ส่งคืนสัญญาที่แก้ไขด้วยการกำหนดค่าผู้ให้บริการที่สอดคล้องกับรหัสผู้ให้บริการที่ระบุ หากไม่มี ID ที่ระบุ ข้อผิดพลาด auth/configuration-not-found จะปรากฏขึ้น การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP . | |
getUser(uid) | รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับ uid ที่กำหนด ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
getUserByEmail(อีเมล) | รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับอีเมลที่กำหนด ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
getUserByPhoneNumber (หมายเลขโทรศัพท์) | รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับหมายเลขโทรศัพท์ที่กำหนด หมายเลขโทรศัพท์จะต้องเป็นไปตามข้อกำหนด E.164 ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
getUserByProviderUid (รหัสผู้ให้บริการ uid) | รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับรหัสผู้ให้บริการที่กำหนด ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
getUsers (ตัวระบุ) | รับข้อมูลผู้ใช้ที่สอดคล้องกับตัวระบุที่ระบุ ไม่มีการรับประกันการสั่งซื้อ โดยเฉพาะอย่างยิ่ง รายการที่ n ในรายการผลลัพธ์ไม่รับประกันว่าจะสอดคล้องกับรายการที่ n ในรายการพารามิเตอร์อินพุต สามารถระบุตัวระบุได้สูงสุด 100 ตัวเท่านั้น หากมีการระบุตัวระบุมากกว่า 100 ตัว วิธีการนี้จะส่งออก FirebaseAuthError | |
importUsers(ผู้ใช้ ตัวเลือก) | นำเข้ารายชื่อผู้ใช้ที่ระบุไปยัง Firebase Auth อนุญาตให้นำเข้าผู้ใช้ได้สูงสุดครั้งละ 1,000 ราย เมื่อนำเข้าผู้ใช้ด้วยรหัสผ่าน จำเป็นต้องระบุ UserImportOptions การดำเนินการนี้ได้รับการปรับให้เหมาะสมสำหรับการนำเข้าจำนวนมาก และจะเพิกเฉยต่อการตรวจสอบความเป็นเอกลักษณ์ของ uid email และตัวระบุอื่นๆ ซึ่งอาจส่งผลให้เกิดการซ้ำซ้อน | |
listProviderConfigs (ตัวเลือก) | ส่งคืนรายการการกำหนดค่าผู้ให้บริการที่มีอยู่ซึ่งตรงกับตัวกรองที่ให้ไว้ สามารถแสดงรายการการกำหนดค่าผู้ให้บริการได้สูงสุดครั้งละ 100 รายการ การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP . | |
listUsers (ผลลัพธ์สูงสุด, pageToken) | ดึงรายชื่อผู้ใช้ (ชุดเดียวเท่านั้น) ที่มีขนาด maxResults โดยเริ่มต้นจากออฟเซ็ตตามที่ระบุโดย pageToken ใช้เพื่อดึงข้อมูลผู้ใช้ทั้งหมดของโปรเจ็กต์ที่ระบุเป็นชุด ดู รายชื่อผู้ใช้ทั้งหมด สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
เพิกถอนRefreshTokens(uid) | เพิกถอนโทเค็นการรีเฟรชทั้งหมดสำหรับผู้ใช้ที่มีอยู่ API นี้จะอัปเดต UserRecord.tokensValidAfterTime ของผู้ใช้เป็น UTC ปัจจุบัน สิ่งสำคัญคือเซิร์ฟเวอร์ที่เรียกใช้สิ่งนี้จะต้องตั้งค่านาฬิกาอย่างถูกต้องและซิงโครไนซ์ แม้ว่าการดำเนินการนี้จะเพิกถอนเซสชันทั้งหมดสำหรับผู้ใช้ที่ระบุและปิดใช้งานโทเค็น ID ใหม่สำหรับเซสชันที่มีอยู่ไม่ให้ถูกสร้างเสร็จ แต่โทเค็น ID ที่มีอยู่อาจยังคงใช้งานได้จนกว่าจะหมดอายุตามธรรมชาติ (หนึ่งชั่วโมง) หากต้องการตรวจสอบว่าโทเค็น ID ถูกเพิกถอน ให้ใช้ BaseAuth.verifyIdToken() โดยที่ checkRevoked ถูกตั้งค่าเป็นจริง | |
setCustomUserClaims (uid, customUserClaims) | ตั้งค่าการอ้างสิทธิ์ของนักพัฒนาซอฟต์แวร์เพิ่มเติมสำหรับผู้ใช้ที่มีอยู่ซึ่งระบุโดย uid ที่ให้ไว้ ซึ่งโดยทั่วไปจะใช้เพื่อกำหนดบทบาทของผู้ใช้และระดับการเข้าถึง การอ้างสิทธิ์เหล่านี้ควรเผยแพร่ไปยังอุปกรณ์ทั้งหมดที่ผู้ใช้ลงชื่อเข้าใช้อยู่แล้ว (หลังจากโทเค็นหมดอายุหรือเมื่อบังคับให้รีเฟรชโทเค็น) และในครั้งถัดไปที่ผู้ใช้ลงชื่อเข้าใช้ หากมีการใช้ชื่อการอ้างสิทธิ์ OIDC ที่สงวนไว้ (sub, iat, iss ฯลฯ ) เกิดข้อผิดพลาด สิ่งเหล่านี้ถูกตั้งค่าบนโทเค็น ID ของผู้ใช้ที่ได้รับการรับรองความถูกต้อง JWT ดู การกำหนดบทบาทของผู้ใช้และระดับการเข้าถึง สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
updateProviderConfig (รหัสผู้ให้บริการ, ปรับปรุงการกำหนดค่า) | ส่งคืนสัญญาที่แก้ไขด้วย AuthProviderConfig ที่อัปเดตซึ่งสอดคล้องกับ ID ผู้ให้บริการที่ระบุ หากไม่มี ID ที่ระบุ ข้อผิดพลาด auth/configuration-not-found จะปรากฏขึ้น การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP . | |
updateUser (uid คุณสมบัติ) | อัพเดตผู้ใช้ที่มีอยู่ ดู อัปเดตผู้ใช้ สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
ตรวจสอบ IdToken (idToken ตรวจสอบถูกเพิกถอน) | ตรวจสอบโทเค็น Firebase ID (JWT) หากโทเค็นถูกต้อง สัญญาจะเป็นไปตามการอ้างสิทธิ์ที่ถอดรหัสของโทเค็น มิฉะนั้นสัญญาจะถูกปฏิเสธ หาก checkRevoked ถูกตั้งค่าเป็นจริง ให้ตรวจสอบก่อนว่าผู้ใช้ที่เกี่ยวข้องถูกปิดใช้งานหรือไม่ หากใช่ auth/user-disabled หากไม่มี ให้ตรวจสอบว่าเซสชันที่เกี่ยวข้องกับโทเค็น ID ถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง จะมีข้อผิดพลาด auth/id-token-revoked เกิดขึ้น หากไม่ได้ระบุจะไม่ใช้เช็ค ดู ยืนยันโทเค็น ID สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด | |
ตรวจสอบเซสชันคุกกี้ (เซสชันคุกกี้ ตรวจสอบถูกเพิกถอน) | ตรวจสอบคุกกี้เซสชัน Firebase ส่งคืนสัญญาด้วยการอ้างสิทธิ์คุกกี้ ปฏิเสธคำสัญญาหากไม่สามารถตรวจสอบคุกกี้ได้ หาก checkRevoked ถูกตั้งค่าเป็นจริง ให้ตรวจสอบก่อนว่าผู้ใช้ที่เกี่ยวข้องถูกปิดใช้งานหรือไม่ หากใช่ ระบบจะแสดงข้อผิดพลาด auth/user-disabled หากไม่มี ให้ตรวจสอบว่าเซสชันที่สอดคล้องกับคุกกี้เซสชันถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง จะมีข้อผิดพลาด auth/session-cookie-revoked เกิดขึ้น หากไม่ได้ระบุจะไม่ดำเนินการตรวจสอบ ดู ตรวจสอบคุกกี้เซสชัน สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด |
BaseAuth.createCustomToken()
สร้างโทเค็นที่กำหนดเองของ Firebase (JWT) ใหม่ที่สามารถส่งกลับไปยังอุปกรณ์ไคลเอ็นต์เพื่อใช้ในการลงชื่อเข้าใช้ด้วยเมธอด signInWithCustomToken()
ของ SDK ของไคลเอ็นต์ (อินสแตนซ์ที่รับรู้ผู้เช่าจะฝังรหัสผู้เช่าในโทเค็นด้วย)
ดู สร้างโทเค็นแบบกำหนดเอง สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
createCustomToken(uid: string, developerClaims?: object): Promise<string>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
uid | เชือก | uid เพื่อใช้เป็นเรื่องของโทเค็นที่กำหนดเอง |
การเรียกร้องของผู้พัฒนา | วัตถุ | การอ้างสิทธิ์เพิ่มเติมเพิ่มเติมเพื่อรวมไว้ในเพย์โหลดของโทเค็นแบบกำหนดเอง |
ผลตอบแทน:
สัญญา<สตริง>
คำสัญญาที่ปฏิบัติตามด้วยโทเค็นแบบกำหนดเองสำหรับ uid
และเพย์โหลดที่ให้มา
BaseAuth.createProviderConfig()
ส่งคืนสัญญาที่แก้ไขด้วย AuthProviderConfig
ที่สร้างขึ้นใหม่เมื่อมีการสร้างการกำหนดค่าผู้ให้บริการใหม่
การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP .
ลายเซ็น:
createProviderConfig(config: AuthProviderConfig): Promise<AuthProviderConfig>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
กำหนดค่า | AuthProviderConfig | การกำหนดค่าผู้ให้บริการที่จะสร้าง |
ผลตอบแทน:
สัญญา < AuthProviderConfig >
คำสัญญาที่แก้ไขได้ด้วยการกำหนดค่าผู้ให้บริการที่สร้างขึ้น
BaseAuth.createSessionCookie()
สร้างคุกกี้เซสชัน Firebase ใหม่พร้อมตัวเลือกที่ระบุ สตริง JWT ที่สร้างขึ้นสามารถตั้งค่าเป็นคุกกี้เซสชันฝั่งเซิร์ฟเวอร์ด้วยนโยบายคุกกี้ที่กำหนดเอง และใช้สำหรับการจัดการเซสชัน คุกกี้เซสชัน JWT จะมีการอ้างสิทธิ์เพย์โหลดเดียวกันกับโทเค็น ID ที่ให้มา
ดู จัดการคุกกี้เซสชัน สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
createSessionCookie(idToken: string, sessionCookieOptions: SessionCookieOptions): Promise<string>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
idToken | เชือก | โทเค็น Firebase ID เพื่อแลกเปลี่ยนเป็นคุกกี้เซสชัน |
เซสชั่นคุกกี้ตัวเลือก | ตัวเลือกเซสชันคุกกี้ | ตัวเลือกคุกกี้เซสชันซึ่งรวมถึงระยะเวลาเซสชันที่กำหนดเอง |
ผลตอบแทน:
สัญญา<สตริง>
คำมั่นสัญญาที่จะแก้ไขเมื่อประสบความสำเร็จด้วยคุกกี้เซสชันที่สร้างขึ้น
BaseAuth.createUser()
สร้างผู้ใช้ใหม่
ดู สร้างผู้ใช้ สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
createUser(properties: CreateRequest): Promise<UserRecord>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
คุณสมบัติ | สร้างคำขอ | คุณสมบัติที่จะตั้งค่าในเรกคอร์ดผู้ใช้ใหม่ที่จะถูกสร้างขึ้น |
ผลตอบแทน:
สัญญา < บันทึกผู้ใช้ >
คำสัญญาที่ปฏิบัติตามข้อมูลผู้ใช้ที่สอดคล้องกับผู้ใช้ที่สร้างขึ้นใหม่
BaseAuth.deleteProviderConfig()
ลบการกำหนดค่าผู้ให้บริการที่สอดคล้องกับรหัสผู้ให้บริการที่ส่งผ่าน หากไม่มี ID ที่ระบุ ข้อผิดพลาด auth/configuration-not-found
จะปรากฏขึ้น
การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP .
ลายเซ็น:
deleteProviderConfig(providerId: string): Promise<void>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
รหัสผู้ให้บริการ | เชือก | รหัสผู้ให้บริการที่สอดคล้องกับการกำหนดค่าผู้ให้บริการที่จะลบ |
ผลตอบแทน:
สัญญา<โมฆะ>
คำสัญญาที่จะแก้ไขเมื่อเสร็จสิ้น
BaseAuth.deleteUser()
ลบผู้ใช้ที่มีอยู่
ดู ลบผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
deleteUser(uid: string): Promise<void>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
uid | เชือก | uid ที่สอดคล้องกับผู้ใช้ที่จะลบ |
ผลตอบแทน:
สัญญา<โมฆะ>
สัญญาที่ว่างเปล่าเป็นจริงเมื่อผู้ใช้ถูกลบแล้ว
BaseAuth.deleteUsers()
ลบผู้ใช้ที่ระบุโดย uid ที่กำหนด
การลบผู้ใช้ที่ไม่มีอยู่จะไม่สร้างข้อผิดพลาด (เช่น วิธีการนี้คือ idempotent) ผู้ใช้ที่ไม่มีอยู่จะถือว่าลบได้สำเร็จ และด้วยเหตุนี้จึงนับรวมในค่า DeleteUsersResult.successCount
สามารถระบุตัวระบุได้สูงสุด 1,000 ตัวเท่านั้น หากมีการระบุตัวระบุมากกว่า 1,000 ตัว วิธีการนี้จะส่งออก FirebaseAuthError
ปัจจุบัน API นี้ถูกจำกัดอัตราไว้ที่เซิร์ฟเวอร์ที่ 1 QPS หากเกินนี้ คุณอาจได้รับข้อผิดพลาดเกินโควต้า ดังนั้น หากคุณต้องการลบผู้ใช้มากกว่า 1,000 ราย คุณอาจต้องเพิ่มความล่าช้าเพื่อให้แน่ใจว่าจะไม่เกินขีดจำกัดนี้
ลายเซ็น:
deleteUsers(uids: string[]): Promise<DeleteUsersResult>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
uids | สตริง[] | uids ที่สอดคล้องกับผู้ใช้ที่จะลบ |
ผลตอบแทน:
สัญญา < DeleteUsersResult >
คำมั่นสัญญาที่แก้ไขจำนวนการลบที่สำเร็จ/ล้มเหลวทั้งหมด รวมถึงอาร์เรย์ของข้อผิดพลาดที่สอดคล้องกับการลบที่ล้มเหลว
BaseAuth.generateEmailVerificationLink()
สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ ActionCodeSettings ที่ระบุเป็นอาร์กิวเมนต์ของเมธอดนี้จะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปบนอุปกรณ์เคลื่อนที่หรือเบราว์เซอร์ พร้อมด้วยข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น
ลายเซ็น:
generateEmailVerificationLink(email: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
อีเมล | เชือก | บัญชีอีเมลที่จะตรวจสอบ |
การตั้งค่าการกระทำรหัส | การตั้งค่า ActionCode | การตั้งค่ารหัสการกระทำ หากระบุ URL สถานะ/ดำเนินการต่อจะถูกตั้งค่าเป็นพารามิเตอร์ "continueUrl" ในลิงก์ยืนยันอีเมล หน้า Landing Page สำหรับการยืนยันอีเมลเริ่มต้นจะใช้สิ่งนี้เพื่อแสดงลิงก์เพื่อกลับไปยังแอปหากมีการติดตั้งไว้ หากไม่ได้ระบุ actionCodeSettings จะไม่มีการต่อท้าย URL เข้ากับ URL การดำเนินการ URL สถานะที่ระบุต้องเป็นของโดเมนที่นักพัฒนาซอฟต์แวร์อนุญาตพิเศษในคอนโซล มิฉะนั้นจะเกิดข้อผิดพลาด การเปลี่ยนเส้นทางแอปบนอุปกรณ์เคลื่อนที่ใช้ได้เฉพาะในกรณีที่นักพัฒนาซอฟต์แวร์กำหนดค่าและยอมรับข้อกำหนดในการให้บริการของ Firebase Dynamic Links ชื่อแพ็กเกจ Android และรหัสชุด iOS จะใช้เฉพาะเมื่อมีการกำหนดค่าในโปรเจ็กต์ Firebase Auth เดียวกันเท่านั้น |
ผลตอบแทน:
สัญญา<สตริง>
คำสัญญาที่แก้ไขได้ด้วยลิงก์ที่สร้างขึ้น
ตัวอย่าง
var actionCodeSettings = {
url: 'https://www.example.com/cart?email=user@example.com&cartId=123',
iOS: {
bundleId: 'com.example.ios'
},
android: {
packageName: 'com.example.android',
installApp: true,
minimumVersion: '12'
},
handleCodeInApp: true,
dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
.generateEmailVerificationLink('user@example.com', actionCodeSettings)
.then(function(link) {
// The link was successfully generated.
})
.catch(function(error) {
// Some error occurred, you can inspect the code: error.code
});
BaseAuth.generatePasswordResetLink()
สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อรีเซ็ตรหัสผ่านของผู้ใช้ ลิงค์ถูกสร้างขึ้นสำหรับผู้ใช้ที่มีที่อยู่อีเมลที่ระบุ ออบเจ็กต์ ActionCodeSettings ที่เป็นตัวเลือกจะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปมือถือหรือเบราว์เซอร์ และข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น
ลายเซ็น:
generatePasswordResetLink(email: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
อีเมล | เชือก | ที่อยู่อีเมลของผู้ใช้ที่ต้องการรีเซ็ตรหัสผ่าน |
การตั้งค่าการกระทำรหัส | การตั้งค่า ActionCode | การตั้งค่ารหัสการกระทำ หากระบุ URL สถานะ/ดำเนินการต่อจะถูกตั้งค่าเป็นพารามิเตอร์ "continueUrl" ในลิงก์รีเซ็ตรหัสผ่าน หน้า Landing Page สำหรับการรีเซ็ตรหัสผ่านเริ่มต้นจะใช้สิ่งนี้เพื่อแสดงลิงก์เพื่อกลับไปยังแอปหากมีการติดตั้งไว้ หากไม่ได้ระบุ actionCodeSettings จะไม่มีการต่อท้าย URL เข้ากับ URL การดำเนินการ URL สถานะที่ระบุต้องเป็นของโดเมนที่นักพัฒนาซอฟต์แวร์อนุญาตพิเศษในคอนโซล มิฉะนั้นจะเกิดข้อผิดพลาด การเปลี่ยนเส้นทางแอปบนอุปกรณ์เคลื่อนที่ใช้ได้เฉพาะในกรณีที่นักพัฒนาซอฟต์แวร์กำหนดค่าและยอมรับข้อกำหนดในการให้บริการของ Firebase Dynamic Links ชื่อแพ็กเกจ Android และรหัสชุด iOS จะใช้เฉพาะเมื่อมีการกำหนดค่าในโปรเจ็กต์ Firebase Auth เดียวกันเท่านั้น |
ผลตอบแทน:
สัญญา<สตริง>
คำสัญญาที่แก้ไขได้ด้วยลิงก์ที่สร้างขึ้น
ตัวอย่าง
var actionCodeSettings = {
url: 'https://www.example.com/?email=user@example.com',
iOS: {
bundleId: 'com.example.ios'
},
android: {
packageName: 'com.example.android',
installApp: true,
minimumVersion: '12'
},
handleCodeInApp: true,
dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
.generatePasswordResetLink('user@example.com', actionCodeSettings)
.then(function(link) {
// The link was successfully generated.
})
.catch(function(error) {
// Some error occurred, you can inspect the code: error.code
});
BaseAuth.generateSignInWithEmailLink()
สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ ActionCodeSettings ที่ระบุเป็นอาร์กิวเมนต์ของเมธอดนี้จะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปบนอุปกรณ์เคลื่อนที่หรือเบราว์เซอร์ พร้อมด้วยข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น
ลายเซ็น:
generateSignInWithEmailLink(email: string, actionCodeSettings: ActionCodeSettings): Promise<string>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
อีเมล | เชือก | บัญชีอีเมลที่จะตรวจสอบ |
การตั้งค่าการกระทำรหัส | การตั้งค่า ActionCode | การตั้งค่ารหัสการกระทำ หากระบุ URL สถานะ/ดำเนินการต่อจะถูกตั้งค่าเป็นพารามิเตอร์ "continueUrl" ในลิงก์ยืนยันอีเมล หน้า Landing Page สำหรับการยืนยันอีเมลเริ่มต้นจะใช้สิ่งนี้เพื่อแสดงลิงก์เพื่อกลับไปยังแอปหากมีการติดตั้งไว้ หากไม่ได้ระบุ actionCodeSettings จะไม่มีการต่อท้าย URL เข้ากับ URL การดำเนินการ URL สถานะที่ระบุต้องเป็นของโดเมนที่นักพัฒนาซอฟต์แวร์อนุญาตพิเศษในคอนโซล มิฉะนั้นจะเกิดข้อผิดพลาด การเปลี่ยนเส้นทางแอปบนอุปกรณ์เคลื่อนที่ใช้ได้เฉพาะในกรณีที่นักพัฒนาซอฟต์แวร์กำหนดค่าและยอมรับข้อกำหนดในการให้บริการของ Firebase Dynamic Links ชื่อแพ็กเกจ Android และรหัสชุด iOS จะใช้เฉพาะเมื่อมีการกำหนดค่าในโปรเจ็กต์ Firebase Auth เดียวกันเท่านั้น |
ผลตอบแทน:
สัญญา<สตริง>
คำสัญญาที่แก้ไขได้ด้วยลิงก์ที่สร้างขึ้น
ตัวอย่าง
var actionCodeSettings = {
url: 'https://www.example.com/cart?email=user@example.com&cartId=123',
iOS: {
bundleId: 'com.example.ios'
},
android: {
packageName: 'com.example.android',
installApp: true,
minimumVersion: '12'
},
handleCodeInApp: true,
dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
.generateEmailVerificationLink('user@example.com', actionCodeSettings)
.then(function(link) {
// The link was successfully generated.
})
.catch(function(error) {
// Some error occurred, you can inspect the code: error.code
});
BaseAuth.generateVerifyAndChangeEmailLink()
สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ ActionCodeSettings ที่ระบุเป็นอาร์กิวเมนต์ของเมธอดนี้จะกำหนดว่าลิงก์จะได้รับการจัดการโดยแอปบนอุปกรณ์เคลื่อนที่หรือเบราว์เซอร์ พร้อมด้วยข้อมูลสถานะเพิ่มเติมที่จะส่งผ่านใน Deep Link เป็นต้น
ลายเซ็น:
generateVerifyAndChangeEmailLink(email: string, newEmail: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
อีเมล | เชือก | บัญชีอีเมลปัจจุบัน |
ใหม่อีเมล | เชือก | ที่อยู่อีเมลที่บัญชีกำลังได้รับการอัปเดต |
การตั้งค่าการกระทำรหัส | การตั้งค่า ActionCode | การตั้งค่ารหัสการกระทำ หากระบุ URL สถานะ/ดำเนินการต่อจะถูกตั้งค่าเป็นพารามิเตอร์ "continueUrl" ในลิงก์ยืนยันอีเมล หน้า Landing Page สำหรับการยืนยันอีเมลเริ่มต้นจะใช้สิ่งนี้เพื่อแสดงลิงก์เพื่อกลับไปยังแอปหากมีการติดตั้งไว้ หากไม่ได้ระบุ actionCodeSettings จะไม่มีการต่อท้าย URL เข้ากับ URL การดำเนินการ URL สถานะที่ระบุต้องเป็นของโดเมนที่ได้รับอนุญาตในคอนโซล มิฉะนั้นจะเกิดข้อผิดพลาด การเปลี่ยนเส้นทางแอปบนอุปกรณ์เคลื่อนที่ใช้ได้เฉพาะในกรณีที่นักพัฒนาซอฟต์แวร์กำหนดค่าและยอมรับข้อกำหนดในการให้บริการของ Firebase Dynamic Links ชื่อแพ็กเกจ Android และรหัสชุด iOS จะใช้เฉพาะเมื่อมีการกำหนดค่าในโปรเจ็กต์ Firebase Auth เดียวกันเท่านั้น |
ผลตอบแทน:
สัญญา<สตริง>
คำสัญญาที่แก้ไขได้ด้วยลิงก์ที่สร้างขึ้น
BaseAuth.getProviderConfig()
ค้นหาการกำหนดค่าผู้ให้บริการการตรวจสอบสิทธิ์ตามรหัสที่ให้มา ส่งคืนสัญญาที่แก้ไขด้วยการกำหนดค่าผู้ให้บริการที่สอดคล้องกับรหัสผู้ให้บริการที่ระบุ หากไม่มี ID ที่ระบุ ข้อผิดพลาด auth/configuration-not-found
จะปรากฏขึ้น
การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP .
ลายเซ็น:
getProviderConfig(providerId: string): Promise<AuthProviderConfig>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
รหัสผู้ให้บริการ | เชือก | รหัสผู้ให้บริการที่สอดคล้องกับการกำหนดค่าผู้ให้บริการที่จะส่งคืน |
ผลตอบแทน:
สัญญา < AuthProviderConfig >
คำสัญญาที่ได้รับการแก้ไขด้วยการกำหนดค่าที่สอดคล้องกับ ID ที่ให้ไว้
BaseAuth.getUser()
รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับ uid
ที่กำหนด .
ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
getUser(uid: string): Promise<UserRecord>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
uid | เชือก | uid ที่สอดคล้องกับผู้ใช้ที่มีข้อมูลที่จะดึง |
ผลตอบแทน:
สัญญา < บันทึกผู้ใช้ >
สัญญาที่ปฏิบัติตามข้อมูลผู้ใช้ที่สอดคล้องกับ uid
ที่ให้ไว้ .
BaseAuth.getUserByEmail()
รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับอีเมลที่กำหนด
ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
getUserByEmail(email: string): Promise<UserRecord>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
อีเมล | เชือก | อีเมลที่เกี่ยวข้องกับผู้ใช้ซึ่งมีข้อมูลที่จะดึง |
ผลตอบแทน:
สัญญา < บันทึกผู้ใช้ >
คำสัญญาที่ปฏิบัติตามข้อมูลผู้ใช้ที่สอดคล้องกับอีเมลที่ให้ไว้
BaseAuth.getUserByPhoneNumber()
รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับหมายเลขโทรศัพท์ที่กำหนด หมายเลขโทรศัพท์จะต้องเป็นไปตามข้อกำหนด E.164
ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
getUserByPhoneNumber(phoneNumber: string): Promise<UserRecord>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
หมายเลขโทรศัพท์ | เชือก | หมายเลขโทรศัพท์ที่เกี่ยวข้องกับผู้ใช้ที่จะดึงข้อมูล |
ผลตอบแทน:
สัญญา < บันทึกผู้ใช้ >
คำสัญญาที่ปฏิบัติตามข้อมูลผู้ใช้ที่สอดคล้องกับหมายเลขโทรศัพท์ที่ให้ไว้
BaseAuth.getUserByProviderUid()
รับข้อมูลผู้ใช้สำหรับผู้ใช้ที่สอดคล้องกับรหัสผู้ให้บริการที่กำหนด
ดู ดึงข้อมูลผู้ใช้ เพื่อดูตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
getUserByProviderUid(providerId: string, uid: string): Promise<UserRecord>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
รหัสผู้ให้บริการ | เชือก | รหัสผู้ให้บริการ เช่น "google.com" สำหรับผู้ให้บริการ Google |
uid | เชือก | ตัวระบุผู้ใช้สำหรับผู้ให้บริการที่กำหนด |
ผลตอบแทน:
สัญญา < บันทึกผู้ใช้ >
คำสัญญาที่ปฏิบัติตามข้อมูลผู้ใช้ที่สอดคล้องกับรหัสผู้ให้บริการที่กำหนด
BaseAuth.getUsers()
รับข้อมูลผู้ใช้ที่สอดคล้องกับตัวระบุที่ระบุ
ไม่มีการรับประกันการสั่งซื้อ โดยเฉพาะอย่างยิ่ง รายการที่ n ในรายการผลลัพธ์ไม่รับประกันว่าจะสอดคล้องกับรายการที่ n ในรายการพารามิเตอร์อินพุต
สามารถระบุตัวระบุได้สูงสุด 100 ตัวเท่านั้น หากมีการระบุตัวระบุมากกว่า 100 ตัว วิธีการนี้จะส่งออก FirebaseAuthError
ลายเซ็น:
getUsers(identifiers: UserIdentifier[]): Promise<GetUsersResult>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
ตัวระบุ | ตัวระบุผู้ใช้ [] | ตัวระบุที่ใช้ระบุว่าควรส่งคืนบันทึกผู้ใช้ใด ต้องไม่เกิน 100 รายการ |
ผลตอบแทน:
สัญญา < GetUsersResult >
คำสัญญาที่แก้ไขบันทึกผู้ใช้ที่เกี่ยวข้อง
ข้อยกเว้น
FirebaseAuthError หากตัวระบุใด ๆ ไม่ถูกต้องหรือมีการระบุตัวระบุมากกว่า 100 ตัว
BaseAuth.importUsers()
นำเข้ารายชื่อผู้ใช้ที่ระบุไปยัง Firebase Auth อนุญาตให้นำเข้าผู้ใช้ได้สูงสุดครั้งละ 1,000 ราย เมื่อนำเข้าผู้ใช้ด้วยรหัสผ่าน จำเป็นต้องระบุ UserImportOptions การดำเนินการนี้ได้รับการปรับให้เหมาะสมสำหรับการนำเข้าจำนวนมาก และจะเพิกเฉยต่อการตรวจสอบบน uid
email
และตัวระบุอื่นๆ ที่ไม่ซ้ำใครซึ่งอาจส่งผลให้เกิดการซ้ำซ้อน
ลายเซ็น:
importUsers(users: UserImportRecord[], options?: UserImportOptions): Promise<UserImportResult>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
ผู้ใช้ | UserImportRecord [] | รายการบันทึกผู้ใช้ที่จะนำเข้าไปยัง Firebase Auth |
ตัวเลือก | UserImportOptions | ตัวเลือกการนำเข้าผู้ใช้ จำเป็นเมื่อผู้ใช้ระบุรวมข้อมูลรับรองรหัสผ่าน |
ผลตอบแทน:
สัญญา < UserImportResult >
คำมั่นสัญญาที่จะแก้ไขเมื่อการดำเนินการเสร็จสมบูรณ์พร้อมกับผลลัพธ์ของการนำเข้า ซึ่งรวมถึงจำนวนการนำเข้าที่สำเร็จ จำนวนการนำเข้าที่ล้มเหลว และข้อผิดพลาดที่เกี่ยวข้อง
BaseAuth.listProviderConfigs()
ส่งคืนรายการการกำหนดค่าผู้ให้บริการที่มีอยู่ซึ่งตรงกับตัวกรองที่ให้ไว้ สามารถแสดงรายการการกำหนดค่าผู้ให้บริการได้สูงสุดครั้งละ 100 รายการ
การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP .
ลายเซ็น:
listProviderConfigs(options: AuthProviderConfigFilter): Promise<ListProviderConfigResults>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
ตัวเลือก | AuthProviderConfigFilter | ตัวกรองการกำหนดค่าผู้ให้บริการที่จะใช้ |
ผลตอบแทน:
สัญญา < ListProviderConfigResults >
คำสัญญาที่จะแก้ไขได้ด้วยรายการการกำหนดค่าผู้ให้บริการที่ตรงตามข้อกำหนดตัวกรอง
BaseAuth.listUsers()
ดึงรายชื่อผู้ใช้ (ชุดเดียวเท่านั้น) ด้วยขนาด maxResults
โดยเริ่มต้นจากออฟเซ็ตตามที่ระบุโดย pageToken
. ใช้เพื่อดึงข้อมูลผู้ใช้ทั้งหมดของโปรเจ็กต์ที่ระบุเป็นชุด
ดู รายชื่อผู้ใช้ทั้งหมด สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
listUsers(maxResults?: number, pageToken?: string): Promise<ListUsersResult>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
ผลลัพธ์สูงสุด | ตัวเลข | ขนาดหน้า 1,000 หากไม่ได้กำหนด นี่เป็นขีดจำกัดสูงสุดที่อนุญาตด้วย |
โทเค็นเพจ | เชือก | โทเค็นหน้าถัดไป หากไม่ได้ระบุ จะส่งคืนผู้ใช้โดยเริ่มต้นโดยไม่มีออฟเซ็ตใดๆ |
ผลตอบแทน:
สัญญา < ListUsersResult >
คำสัญญาที่จะแก้ไขได้ด้วยจำนวนผู้ใช้ที่ดาวน์โหลดในปัจจุบันและโทเค็นหน้าถัดไป
BaseAuth.revoidRefreshTokens()
เพิกถอนโทเค็นการรีเฟรชทั้งหมดสำหรับผู้ใช้ที่มีอยู่
API นี้จะอัปเดต UserRecord.tokensValidAfterTime ของผู้ใช้เป็น UTC ปัจจุบัน สิ่งสำคัญคือเซิร์ฟเวอร์ที่เรียกใช้สิ่งนี้จะต้องตั้งค่านาฬิกาอย่างถูกต้องและซิงโครไนซ์
แม้ว่าการดำเนินการนี้จะเพิกถอนเซสชันทั้งหมดสำหรับผู้ใช้ที่ระบุและปิดใช้งานโทเค็น ID ใหม่สำหรับเซสชันที่มีอยู่ไม่ให้ถูกสร้างเสร็จ แต่โทเค็น ID ที่มีอยู่อาจยังคงใช้งานได้จนกว่าจะหมดอายุตามธรรมชาติ (หนึ่งชั่วโมง) หากต้องการตรวจสอบว่าโทเค็น ID ถูกเพิกถอน ให้ใช้ BaseAuth.verifyIdToken() โดยที่ checkRevoked
ถูกตั้งค่าเป็นจริง
ลายเซ็น:
revokeRefreshTokens(uid: string): Promise<void>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
uid | เชือก | uid ที่สอดคล้องกับผู้ใช้ซึ่งโทเค็นการรีเฟรชจะถูกเพิกถอน |
ผลตอบแทน:
สัญญา<โมฆะ>
สัญญาที่ว่างเปล่าเป็นจริงเมื่อโทเค็นการรีเฟรชของผู้ใช้ถูกเพิกถอน
BaseAuth.setCustomUserClaims()
ตั้งค่าการอ้างสิทธิ์ของนักพัฒนาเพิ่มเติมสำหรับผู้ใช้ที่มีอยู่ซึ่งระบุโดย uid
ที่ให้ไว้ โดยทั่วไปใช้เพื่อกำหนดบทบาทของผู้ใช้และระดับการเข้าถึง การอ้างสิทธิ์เหล่านี้ควรเผยแพร่ไปยังอุปกรณ์ทั้งหมดที่ผู้ใช้ลงชื่อเข้าใช้อยู่แล้ว (หลังจากโทเค็นหมดอายุหรือเมื่อบังคับให้รีเฟรชโทเค็น) และในครั้งต่อไปที่ผู้ใช้ลงชื่อเข้าใช้ หากมีการใช้ชื่อการอ้างสิทธิ์ OIDC ที่สงวนไว้ (sub, iat, iss ฯลฯ ) เกิดข้อผิดพลาด สิ่งเหล่านี้ถูกตั้งค่าบนโทเค็น ID ของผู้ใช้ที่ได้รับการรับรองความถูกต้อง JWT
ดู การกำหนดบทบาทของผู้ใช้และระดับการเข้าถึง สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
setCustomUserClaims(uid: string, customUserClaims: object | null): Promise<void>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
uid | เชือก | uid ของผู้ใช้ที่ต้องการแก้ไข |
การอ้างสิทธิ์ผู้ใช้แบบกำหนดเอง | วัตถุ | โมฆะ | ผู้พัฒนาอ้างว่าตั้งค่า หากผ่านค่าว่าง การอ้างสิทธิ์แบบกำหนดเองที่มีอยู่จะถูกลบ การส่งผ่านเพย์โหลดการอ้างสิทธิ์แบบกำหนดเองที่ใหญ่กว่า 1,000 ไบต์จะทำให้เกิดข้อผิดพลาด การอ้างสิทธิ์แบบกำหนดเองจะถูกเพิ่มลงในโทเค็น ID ของผู้ใช้ซึ่งจะถูกส่งไปในทุกคำขอที่ได้รับการตรวจสอบสิทธิ์ สำหรับแอตทริบิวต์ผู้ใช้ที่ไม่เกี่ยวข้องกับการเข้าถึงโปรไฟล์ ให้ใช้ฐานข้อมูลหรือระบบจัดเก็บข้อมูลอื่นที่แยกจากกัน |
ผลตอบแทน:
สัญญา<โมฆะ>
คำสัญญาที่จะแก้ไขเมื่อการดำเนินการเสร็จสมบูรณ์สำเร็จ
BaseAuth.updateProviderConfig()
ส่งคืนสัญญาที่แก้ไขด้วย AuthProviderConfig
ที่อัปเดตซึ่งสอดคล้องกับ ID ผู้ให้บริการที่ระบุ หากไม่มี ID ที่ระบุ ข้อผิดพลาด auth/configuration-not-found
จะปรากฏขึ้น
การรองรับผู้ให้บริการ SAML และ OIDC ต้องใช้ Identity Platform (GCIP) ของ Google Cloud หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ GCIP รวมถึงราคาและฟีเจอร์ โปรดดู เอกสารประกอบ GCIP .
ลายเซ็น:
updateProviderConfig(providerId: string, updatedConfig: UpdateAuthProviderRequest): Promise<AuthProviderConfig>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
รหัสผู้ให้บริการ | เชือก | รหัสผู้ให้บริการที่สอดคล้องกับการกำหนดค่าผู้ให้บริการที่จะอัปเดต |
ปรับปรุงการกำหนดค่า | อัปเดตคำขอ AuthProvider | การกำหนดค่าที่อัปเดต |
ผลตอบแทน:
สัญญา < AuthProviderConfig >
คำมั่นสัญญาที่จะแก้ไขได้ด้วยการกำหนดค่าผู้ให้บริการที่อัปเดต
BaseAuth.updateUser()
อัพเดตผู้ใช้ที่มีอยู่
ดู อัปเดตผู้ใช้ สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
updateUser(uid: string, properties: UpdateRequest): Promise<UserRecord>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
uid | เชือก | uid ที่สอดคล้องกับผู้ใช้ที่จะอัปเดต |
คุณสมบัติ | อัปเดตคำขอ | คุณสมบัติที่จะอัพเดตกับผู้ใช้ที่ระบุ |
ผลตอบแทน:
สัญญา < บันทึกผู้ใช้ >
สัญญาที่ปฏิบัติตามด้วยข้อมูลผู้ใช้ที่อัปเดต
BaseAuth.verifyIdToken()
ตรวจสอบโทเค็น Firebase ID (JWT) หากโทเค็นถูกต้อง สัญญาจะเป็นไปตามการอ้างสิทธิ์ที่ถอดรหัสของโทเค็น มิฉะนั้นสัญญาจะถูกปฏิเสธ
หาก checkRevoked
ถูกตั้งค่าเป็นจริง ให้ตรวจสอบก่อนว่าผู้ใช้ที่เกี่ยวข้องถูกปิดใช้งานหรือไม่ หากใช่ auth/user-disabled
หากไม่มี ให้ตรวจสอบว่าเซสชันที่เกี่ยวข้องกับโทเค็น ID ถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง จะมีข้อผิดพลาด auth/id-token-revoked
เกิดขึ้น หากไม่ได้ระบุจะไม่ใช้เช็ค
ดู ยืนยันโทเค็น ID สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
idToken | เชือก | โทเค็น ID ที่จะตรวจสอบ |
ตรวจสอบเพิกถอนแล้ว | บูลีน | จะตรวจสอบว่าโทเค็น ID ถูกเพิกถอนหรือไม่ ซึ่งต้องมีการร้องขอเพิ่มเติมไปยังแบ็กเอนด์ Firebase Auth เพื่อตรวจสอบเวลา tokensValidAfterTime สำหรับผู้ใช้ที่เกี่ยวข้อง เมื่อไม่ได้ระบุ จะไม่ใช้การตรวจสอบเพิ่มเติมนี้ |
ผลตอบแทน:
สัญญา < DecodedIdToken >
คำสัญญาที่ปฏิบัติตามคำเรียกร้องที่ถอดรหัสของโทเค็นหากโทเค็น ID ถูกต้อง มิฉะนั้นจะเป็นคำสัญญาที่ถูกปฏิเสธ
BaseAuth.verifySessionCookie()
ตรวจสอบคุกกี้เซสชัน Firebase ส่งคืนสัญญาด้วยการอ้างสิทธิ์คุกกี้ ปฏิเสธคำสัญญาหากไม่สามารถตรวจสอบคุกกี้ได้
หาก checkRevoked
ถูกตั้งค่าเป็นจริง ให้ตรวจสอบก่อนว่าผู้ใช้ที่เกี่ยวข้องถูกปิดใช้งานหรือไม่ หากใช่ ระบบจะแสดงข้อผิดพลาด auth/user-disabled
หากไม่มี ให้ตรวจสอบว่าเซสชันที่สอดคล้องกับคุกกี้เซสชันถูกเพิกถอนหรือไม่ หากเซสชันของผู้ใช้ที่เกี่ยวข้องไม่ถูกต้อง จะมีข้อผิดพลาด auth/session-cookie-revoked
เกิดขึ้น หากไม่ได้ระบุจะไม่ดำเนินการตรวจสอบ
ดู ตรวจสอบคุกกี้เซสชัน สำหรับตัวอย่างโค้ดและเอกสารประกอบโดยละเอียด
ลายเซ็น:
verifySessionCookie(sessionCookie: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
เซสชันคุกกี้ | เชือก | คุกกี้เซสชั่นที่จะตรวจสอบ |
ตรวจสอบเพิกถอนแล้ว | บูลีน |
ผลตอบแทน:
สัญญา < DecodedIdToken >
คำมั่นสัญญาที่ปฏิบัติตามคำเรียกร้องที่ถอดรหัสของคุกกี้เซสชันหากคุกกี้เซสชันนั้นถูกต้อง มิฉะนั้นจะเป็นคำสัญญาที่ถูกปฏิเสธ