หน้านี้ได้รับการแปลโดย Cloud Translation API
Switch to English

รู้เบื้องต้นเกี่ยวกับ Admin Auth API

Firebase Admin SDK อนุญาตให้คุณรวมเซิร์ฟเวอร์ของคุณเองกับ Firebase Authentication คุณสามารถใช้ Firebase Admin SDK เพื่อจัดการผู้ใช้ของคุณหรือจัดการโทเค็นการตรวจสอบสิทธิ์ มีหลายสาเหตุที่คุณต้องการทำสิ่งนี้:

การจัดการผู้ใช้

ไม่สะดวกเสมอไปที่จะต้องไปที่คอนโซล Firebase เพื่อจัดการผู้ใช้ Firebase ของคุณ API การจัดการผู้ใช้ของผู้ดูแลระบบให้การเข้าถึงแบบเป็นโปรแกรมแก่ผู้ใช้เดียวกัน มันยังช่วยให้คุณทำสิ่งต่าง ๆ ที่คอนโซล Firebase ไม่สามารถทำได้เช่นการดึงข้อมูลทั้งหมดของผู้ใช้และการเปลี่ยนรหัสผ่านที่อยู่อีเมลหรือหมายเลขโทรศัพท์ของผู้ใช้

รับรองความถูกต้องที่กำหนดเอง

คุณสามารถรวมระบบผู้ใช้ภายนอกเข้ากับ Firebase ตัวอย่างเช่นคุณอาจมีฐานข้อมูลผู้ใช้ที่มีอยู่แล้วหรือคุณอาจต้องการรวมกับผู้ให้บริการข้อมูลประจำตัวบุคคลที่สามที่การรับรองความถูกต้องของ Firebase ไม่สนับสนุน

ในการทำเช่นนี้คุณสามารถสร้างโทเค็นที่กำหนดเองด้วยการอ้างสิทธิ์ตามอำเภอใจที่ระบุผู้ใช้ โทเค็นที่กำหนดเองเหล่านี้สามารถใช้เพื่อลงชื่อเข้าใช้บริการการรับรองความถูกต้องของ Firebase ในแอปพลิเคชันไคลเอนต์และรับข้อมูลประจำตัวที่อธิบายโดยการเรียกร้องของโทเค็น ข้อมูลประจำตัวนี้จะถูกใช้เมื่อเข้าถึงบริการ Firebase อื่น ๆ เช่น Cloud Storage

การยืนยันตัวตน

การรับรองความถูกต้องของ Firebase ใช้เพื่อระบุผู้ใช้แอปของคุณเป็นหลักเพื่อ จำกัด การเข้าถึงบริการอื่น ๆ เช่น Cloud Storage นอกจากนี้คุณยังสามารถใช้บริการเพื่อระบุผู้ใช้เหล่านี้บนเซิร์ฟเวอร์ของคุณเอง สิ่งนี้ช่วยให้คุณสามารถดำเนินการตรรกะด้านเซิร์ฟเวอร์อย่างปลอดภัยในนามของผู้ใช้ที่ลงชื่อเข้าใช้ด้วยการรับรองความถูกต้องของ Firebase

ในการทำเช่นนี้คุณสามารถดึงโทเค็น ID จากแอปพลิเคชันไคลเอนต์ที่ลงชื่อเข้าใช้ด้วยการรับรองความถูกต้องของ Firebase และรวมโทเค็นในคำขอไปยังเซิร์ฟเวอร์ของคุณ เซิร์ฟเวอร์ของคุณจะตรวจสอบโทเค็น ID และแยกการอ้างสิทธิ์ที่ระบุผู้ใช้ (รวมถึง uid ผู้ให้บริการข้อมูลประจำตัวที่พวกเขาลงชื่อเข้าใช้ด้วยเป็นต้น) เซิร์ฟเวอร์ของคุณสามารถใช้ข้อมูลประจำตัวนี้เพื่อดำเนินการในนามของผู้ใช้

Firebase Admin SDK จัดเตรียมวิธีในการทำภารกิจการตรวจสอบความถูกต้องด้านบนโดยให้คุณสามารถจัดการผู้ใช้ของคุณสร้างโทเค็นที่กำหนดเองและตรวจสอบโทเค็น ID

การเรียกร้องของผู้ใช้ที่กำหนดเอง

ในบางกรณีคุณอาจต้องการใช้การควบคุมการเข้าถึงอย่างละเอียดสำหรับผู้ใช้ที่ลงชื่อเข้าใช้แล้วกับหนึ่งในผู้ให้บริการรับรองความถูกต้อง Firebase ที่สนับสนุนเช่นอีเมล / รหัสผ่าน, Google, Facebook, โทรศัพท์ ฯลฯ การรวมกันของการเรียกร้องของผู้ใช้ กฎให้ความสามารถนี้ ตัวอย่างเช่นผู้ใช้ที่ลงชื่อเข้าใช้ด้วยผู้ให้บริการอีเมลและรหัสผ่านการพิสูจน์ตัวตน Firebase สามารถกำหนดการควบคุมการเข้าถึงได้

การจัดการผู้ใช้

Firebase Admin SDK จัดเตรียม API สำหรับการจัดการผู้ใช้ Firebase ของคุณด้วยสิทธิ์ยกระดับ API การจัดการผู้ใช้ของผู้ดูแลระบบช่วยให้คุณสามารถเรียกค้นสร้างอัปเดตและลบผู้ใช้โดยไม่ต้องใช้ข้อมูลประจำตัวที่มีอยู่ของผู้ใช้และไม่ต้องกังวลเกี่ยวกับการ จำกัด อัตราฝั่งไคลเอ็นต์

จัดการผู้ใช้

การสร้างโทเค็นที่กำหนดเอง

การใช้งานหลักสำหรับการสร้างโทเค็นที่กำหนดเองคือการอนุญาตให้ผู้ใช้รับรองความถูกต้องกับกลไกการพิสูจน์ตัวตนภายนอกหรือแบบดั้งเดิม นี่อาจเป็นสิ่งที่คุณควบคุมเช่นเซิร์ฟเวอร์ LDAP ของคุณหรือผู้ให้บริการ OAuth บุคคลที่สามซึ่ง Firebase ไม่สนับสนุนตามปกติเช่น Instagram หรือ LinkedIn

Firebase Admin SDK มีวิธีการในการสร้างโทเค็นที่กำหนดเอง คุณยังสามารถสร้างโทเค็นที่กำหนดเองโดยทางโปรแกรมในภาษาใด ๆ โดยใช้ไลบรารี JWT ของบุคคลที่สาม

เซิร์ฟเวอร์ของคุณควรสร้างโทเค็นที่กำหนดเองด้วยตัวระบุที่ไม่ซ้ำกัน ( uid ) และส่งโทเค็นนั้นไปยังแอปไคลเอ็นต์ซึ่งจะใช้เพื่อลงชื่อเข้าใช้ Firebase ดู สร้างโทเค็นที่กำหนดเอง สำหรับตัวอย่างโค้ดและรายละเอียดเพิ่มเติมเกี่ยวกับกระบวนการสร้างโทเค็นที่กำหนดเอง

สร้างโทเค็นที่กำหนดเอง

การตรวจสอบรหัสโทเค็น

หากแอปไคลเอ็นต์ Firebase ของคุณสื่อสารกับเซิร์ฟเวอร์ด้านหลังคุณอาจต้องระบุผู้ใช้ที่ลงชื่อเข้าใช้ปัจจุบันบนเซิร์ฟเวอร์ของคุณเพื่อให้คุณสามารถดำเนินการตรรกะด้านเซิร์ฟเวอร์ในนามของพวกเขา คุณสามารถทำได้อย่างปลอดภัยโดยใช้ ID โทเค็นซึ่งสร้างขึ้นโดย Firebase เมื่อผู้ใช้ลงชื่อเข้าใช้แอป Firebase ID โทเค็นเป็นไปตามข้อกำหนด OpenID Connect และมีข้อมูลเพื่อระบุผู้ใช้รวมถึงข้อมูลอื่น ๆ ที่เกี่ยวข้องกับโปรไฟล์และการตรวจสอบสิทธิ์ คุณสามารถส่งตรวจสอบและตรวจสอบโทเค็นเหล่านี้ได้จากแบ็กเอนด์ของคุณเอง สิ่งนี้ช่วยให้คุณสามารถระบุผู้ใช้ที่ลงชื่อเข้าใช้อย่างปลอดภัยในปัจจุบันและอนุญาตให้พวกเขาลงในทรัพยากรแบ็กเอนด์ของคุณเอง

Firebase Admin SDK มีวิธีการในการตรวจสอบโทเค็น ID คุณยังสามารถยืนยันโทเค็น ID ในภาษาใด ๆ โดยทางโปรแกรมโดยใช้ไลบรารี JWT ของบุคคลที่สาม ดูที่ ตรวจสอบโทเค็น ID สำหรับรายละเอียดเพิ่มเติมและตัวอย่างโค้ดเกี่ยวกับกระบวนการตรวจสอบโทเค็น ID

ตรวจสอบโทเค็น ID

การเรียกร้องของผู้ใช้ที่กำหนดเอง

Firebase Admin SDK อนุญาตให้คุณตั้งค่าแอตทริบิวต์ที่กำหนดเองในบัญชีผู้ใช้ ด้วยการอ้างสิทธิ์ผู้ใช้ที่กำหนดเองคุณสามารถให้สิทธิ์ผู้ใช้ในการเข้าถึง (บทบาท) ในระดับต่างๆซึ่งจะมีการบังคับใช้ในกฎความปลอดภัยของแอปพลิเคชัน

หลังจากที่มีการแก้ไขการอ้างสิทธิ์ที่กำหนดเองในผู้ใช้ผ่านทาง SDK ของ Firebase Admin พวกเขาจะเผยแพร่ไปยังผู้ใช้ที่ผ่านการรับรองความถูกต้องทางฝั่งไคลเอ็นต์ผ่านโทเค็น ID โทเค็น ID เป็นกลไกที่เชื่อถือได้สำหรับการส่งการอ้างสิทธิ์ที่กำหนดเองเหล่านี้และการเข้าถึงที่ได้รับการรับรองความถูกต้องทั้งหมดจะต้องตรวจสอบโทเค็น ID ก่อนที่จะดำเนินการตามคำขอที่เกี่ยวข้อง

ควบคุมการเข้าถึงด้วยการอ้างสิทธิ์ที่กำหนดเอง