เพื่อให้ส่วนขยาย Firebase ดำเนินการตามที่ระบุ Firebase ให้สิทธิ์การเข้าถึงแบบจำกัดส่วนขยายที่ติดตั้งในโปรเจ็กต์และข้อมูลของคุณแต่ละอินสแตนซ์ผ่าน บัญชีบริการ
บัญชีบริการคืออะไร?
บัญชีบริการเป็นบัญชี ผู้ใช้ Google ชนิดพิเศษ ซึ่งแสดงถึงผู้ใช้ที่ไม่ใช่มนุษย์ที่ได้รับอนุญาตให้เข้าถึงข้อมูลโดยใช้ Google API
ระหว่างการติดตั้งส่วนขยาย Firebase จะสร้างบัญชีบริการในโปรเจ็กต์ของคุณ แต่ละอินสแตนซ์ของส่วนขยายที่ติดตั้งไว้จะมีบัญชีบริการของตัวเอง
Firebase จำกัดการเข้าถึงโปรเจ็กต์และข้อมูลของคุณโดยกำหนด บทบาท เฉพาะของบัญชีบริการของส่วนขยาย (ชุดสิทธิ์) Firebase กำหนดบทบาทที่ส่วนขยายต้องใช้ในการทำงานระหว่างการพัฒนาส่วนขยาย เมื่อทำการติดตั้ง Firebase จะกำหนดบทบาทเหล่านี้ให้กับบัญชีบริการของส่วนขยาย และคุณไม่ควรแก้ไข เพิ่ม หรือลบบทบาทที่ได้รับมอบหมายเหล่านี้ (มิฉะนั้น ส่วนขยายที่ติดตั้งไว้จะไม่ทำงานตามที่คาดไว้) อย่างไรก็ตาม คุณสามารถ ถอนการติดตั้งส่วนขยาย ซึ่งจะลบบัญชีบริการ (และการเข้าถึง) ทั้งหมด
บัญชีบริการที่สร้างสำหรับส่วนขยายอยู่ในรูปแบบ: ext- extension-instance-id @ project-id .iam.gserviceaccount.com
คุณสามารถดูบัญชีบริการทั้งหมดที่เชื่อมโยงกับโปรเจ็กต์ Firebase ได้ในแท็บ บัญชีบริการ ของ โปรเจ็ กต์
สิทธิ์และบทบาท
ในระหว่างการพัฒนาส่วนขยาย Firebase จะกำหนดระดับการเข้าถึงที่ส่วนขยายนั้นต้องใช้ในการทำงาน
Firebase กำหนดระดับการเข้าถึงนี้โดยการแสดงรายการ บทบาท (กลุ่มสิทธิ์) ที่ Firebase ควรกำหนดให้กับ บัญชีบริการ ของส่วนขยายอย่างชัดเจนระหว่างการติดตั้งส่วนขยาย
แต่ละบทบาท (และการอนุญาตโดยธรรมชาติ) จะขึ้นอยู่กับผลิตภัณฑ์หรือบริการเฉพาะ ตัวอย่างของบทบาท ได้แก่ firebasehosting.admin
, bigquery.dataEditor
และ firebasedatabase.admin
Firebase แสดงรายการบทบาทที่จำเป็นสำหรับส่วนขยายในไฟล์ข้อมูลจำเพาะของส่วนขยาย ( ไฟล์ extension.yaml
)
สำหรับส่วนขยาย Firebase อย่างเป็นทางการ Firebase จะตรวจสอบรายการบทบาทนี้อย่างละเอียดเพื่อให้แน่ใจว่าการเข้าถึงของส่วนขยายนั้นจำกัดเฉพาะขอบเขตของงานของส่วนขยายเท่านั้น คุณยังสามารถตรวจสอบและยืนยันสิทธิ์การเข้าถึงที่ได้รับให้กับส่วนขยายได้ด้วยตนเอง โดยดูที่หน้ารายละเอียดของส่วนขยายใน แดชบอร์ด Firebase Extensions หรือดู README
ของส่วนขยายนั้น
เรียนรู้เกี่ยวกับการอนุญาตที่รวมอยู่ในแต่ละบทบาท:
จะเกิดอะไรขึ้นเมื่อฉันถอนการติดตั้งส่วนขยาย
เมื่อคุณ ถอนการติดตั้งส่วนขยาย จากโปรเจ็กต์ของคุณ Firebase จะลบ บัญชีบริการ ที่สร้างขึ้นสำหรับอินสแตนซ์ของส่วนขยายนั้น หลังจากการลบบัญชีบริการนี้ ส่วนขยายจะไม่สามารถทำงานในโปรเจ็กต์ของคุณได้ เนื่องจากไม่มีสิทธิ์เข้าถึงโปรเจ็กต์หรือข้อมูลของคุณอีกต่อไป