BaseAuth class

อินเทอร์เฟซหลักทั่วไปสำหรับทั้ง 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 >

คำมั่นสัญญาที่แก้ไขจำนวนการลบที่สำเร็จ/ล้มเหลวทั้งหมด รวมถึงอาร์เรย์ของข้อผิดพลาดที่สอดคล้องกับการลบที่ล้มเหลว

สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ 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
    });

สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อรีเซ็ตรหัสผ่านของผู้ใช้ ลิงค์ถูกสร้างขึ้นสำหรับผู้ใช้ที่มีที่อยู่อีเมลที่ระบุ ออบเจ็กต์ 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
    });

สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ 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
    });

สร้างลิงก์การดำเนินการอีเมลนอกกลุ่มเพื่อตรวจสอบความเป็นเจ้าของอีเมลที่ระบุของผู้ใช้ ออบเจ็กต์ 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 >

คำมั่นสัญญาที่ปฏิบัติตามคำเรียกร้องที่ถอดรหัสของคุกกี้เซสชันหากคุกกี้เซสชันนั้นถูกต้อง มิฉะนั้นจะเป็นคำสัญญาที่ถูกปฏิเสธ