หน้านี้อธิบายบันทึกการตรวจสอบที่ Firebase สร้างขึ้นซึ่งเป็นส่วนหนึ่งของ Cloud Audit Logs
ภาพรวม
บริการของ Firebase จะเขียนบันทึกการตรวจสอบเพื่อช่วยตอบคำถามที่ว่า "ใครทำอะไร ที่ไหน และเมื่อใด" ซึ่งเป็น Cloud Audit Logs ที่มีให้เป็นส่วนหนึ่งของโปรเจ็กต์ Google Cloud ที่เชื่อมต่อกับ โปรเจ็กต์ Firebase
โปรเจ็กต์ Firebase แต่ละโปรเจ็กต์จะมีเฉพาะบันทึกการตรวจสอบสำหรับทรัพยากรที่อยู่ภายในโปรเจ็กต์โดยตรงเท่านั้น
ดูภาพรวมทั่วไปของบันทึกการตรวจสอบ Cloud ได้ที่ภาพรวมของบันทึกการตรวจสอบ Cloud หากต้องการทำความเข้าใจรูปแบบบันทึกการตรวจสอบให้ดียิ่งขึ้น โปรดดูทำความเข้าใจบันทึกการตรวจสอบ
บันทึกการตรวจสอบที่ใช้ได้
บันทึกการตรวจสอบประเภทต่อไปนี้พร้อมให้บริการสำหรับ Firebase AI Logic
-
บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ
รวมถึงการดำเนินการ "เขียนโดยผู้ดูแลระบบ" ที่เขียนข้อมูลเมตาหรือข้อมูลการกำหนดค่า
คุณปิดใช้บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบไม่ได้
-
บันทึกการตรวจสอบการเข้าถึงข้อมูล
รวมถึงการดำเนินการ "ผู้ดูแลระบบอ่าน" ที่อ่านข้อมูลเมตาหรือข้อมูลการกำหนดค่า รวมถึงการดำเนินการ "อ่านข้อมูล" และ "เขียนข้อมูล" ที่อ่านหรือเขียนข้อมูลที่ได้จากผู้ใช้ด้วย
หากต้องการรับบันทึกการตรวจสอบการเข้าถึงข้อมูล คุณต้องเปิดใช้บันทึกการตรวจสอบอย่างชัดเจน
ดูคำอธิบายแบบเต็มของประเภทบันทึกการตรวจสอบได้ที่ประเภทของบันทึกการตรวจสอบ
การดำเนินการที่ตรวจสอบแล้ว
ต่อไปนี้เป็นข้อมูลสรุปการดำเนินการของ API ที่สอดคล้องกับบันทึกการตรวจสอบแต่ละประเภทใน Firebase AI Logic
ประเภทสิทธิ์ | เมธอด |
---|---|
ADMIN_READ |
google.firebase.vertexai.v1beta.ConfigService.GetConfig
|
ADMIN_WRITE |
google.firebase.vertexai.v1beta.ConfigService.UpdateConfig
|
รูปแบบบันทึกการตรวจสอบ
รายการบันทึกการตรวจสอบประกอบด้วยออบเจ็กต์ต่อไปนี้
รายการบันทึกเอง ซึ่งเป็นออบเจ็กต์ประเภท
LogEntry
ฟิลด์ที่มีประโยชน์ ได้แก่logName
มีรหัสทรัพยากรและประเภทบันทึกการตรวจสอบresource
มีเป้าหมายของการดำเนินการที่ตรวจสอบtimestamp
มีเวลาของการดำเนินการที่ตรวจสอบแล้วprotoPayload
มีข้อมูลที่ตรวจสอบแล้ว
ข้อมูลการบันทึกการตรวจสอบ ซึ่งเป็นออบเจ็กต์
AuditLog
ที่อยู่ใน ฟิลด์protoPayload
ของรายการบันทึกข้อมูลการตรวจสอบเฉพาะบริการที่ไม่บังคับ ซึ่งเป็นออบเจ็กต์เฉพาะบริการ สำหรับการผสานรวมรุ่นเก่า ออบเจ็กต์นี้จะอยู่ในฟิลด์
serviceData
ของออบเจ็กต์AuditLog
ส่วนการผสานรวมรุ่นใหม่จะใช้ฟิลด์metadata
สำหรับฟิลด์อื่นๆ ในออบเจ็กต์เหล่านี้และวิธีตีความ โปรดดูทำความเข้าใจบันทึกการตรวจสอบ
ชื่อบันทึก
ชื่อทรัพยากรของ Cloud Audit Logs จะระบุโปรเจ็กต์ Firebase หรือเอนทิตีอื่นๆ Google Cloud ที่เป็นเจ้าของบันทึกการตรวจสอบ และระบุว่าบันทึกมีข้อมูลการบันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ การเข้าถึงข้อมูล นโยบายที่ถูกปฏิเสธ หรือเหตุการณ์ของระบบหรือไม่ ตัวอย่างเช่น ข้อมูลต่อไปนี้แสดงชื่อบันทึกสำหรับบันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบระดับโปรเจ็กต์และบันทึกการตรวจสอบการเข้าถึงข้อมูลขององค์กร ตัวแปรระบุตัวระบุโปรเจ็กต์และองค์กร Firebase
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
ชื่อบริการ
บันทึกการตรวจสอบ Firebase AI Logic ใช้ชื่อบริการ
firebasevertexai.googleapis.com
ดูรายการชื่อบริการ Cloud Logging API ทั้งหมดและประเภททรัพยากรที่ตรวจสอบที่เกี่ยวข้องได้ที่ แมปบริการกับทรัพยากร
ประเภททรัพยากร
บันทึกการตรวจสอบ Firebase AI Logic ใช้
ประเภททรัพยากร audited_resource
สำหรับบันทึกการตรวจสอบทั้งหมด
ดูรายการประเภททรัพยากรที่ตรวจสอบทั้งหมดของ Cloud Logging และข้อมูล เชิงอธิบายได้ที่ ประเภททรัพยากรที่ตรวจสอบ
เปิดใช้การบันทึกการตรวจสอบ
บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบจะเปิดใช้ตลอดเวลา คุณจะปิดใช้ไม่ได้
บันทึกการตรวจสอบการเข้าถึงข้อมูลจะปิดใช้โดยค่าเริ่มต้นและจะไม่เขียนเว้นแต่จะเปิดใช้โดยชัดแจ้ง (ข้อยกเว้นคือบันทึกการตรวจสอบการเข้าถึงข้อมูลสำหรับ BigQuery ซึ่งปิดใช้ไม่ได้)
ดูวิธีการเปิดใช้บันทึกการตรวจสอบการเข้าถึงข้อมูลบางส่วนหรือทั้งหมดได้ที่ กำหนดค่าบันทึกการเข้าถึงข้อมูล
สิทธิ์และบทบาท
สิทธิ์และบทบาทของ Cloud IAM จะกำหนดความสามารถในการเข้าถึงข้อมูลบันทึกการตรวจสอบในทรัพยากร Google Cloud
เมื่อตัดสินใจว่าสิทธิ์และบทบาทเฉพาะการบันทึกใดที่ใช้กับกรณีการใช้งานของคุณ ให้พิจารณาสิ่งต่อไปนี้
บทบาทผู้ดูบันทึก (
roles/logging.viewer
) ให้สิทธิ์การเข้าถึงแบบอ่านอย่างเดียวแก่บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ นโยบายที่ถูกปฏิเสธ และเหตุการณ์ของระบบ หากคุณมีเพียงบทบาทนี้ คุณจะดูบันทึกการตรวจสอบการเข้าถึงข้อมูลที่อยู่ใน_Default
ที่เก็บข้อมูลไม่ได้บทบาทผู้ดูบันทึกส่วนตัว
(roles/logging.privateLogViewer
) มีสิทธิ์ที่อยู่ในroles/logging.viewer
รวมถึงความสามารถในการอ่านบันทึกการตรวจสอบการเข้าถึงข้อมูลในที่เก็บข้อมูล_Default
โปรดทราบว่าหากจัดเก็บบันทึกส่วนตัวเหล่านี้ไว้ในที่เก็บข้อมูลที่ผู้ใช้กำหนด ผู้ใช้ที่มีสิทธิ์อ่านบันทึกในที่เก็บข้อมูลเหล่านั้นจะอ่านบันทึกส่วนตัวได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับที่เก็บข้อมูลบันทึกได้ที่ภาพรวมการกำหนดเส้นทางและการจัดเก็บ
ดูข้อมูลเพิ่มเติมเกี่ยวกับสิทธิ์และบทบาท Cloud IAM ที่ใช้กับข้อมูลบันทึกการตรวจสอบได้ที่การควบคุมการเข้าถึง
ดูบันทึก
หากต้องการค้นหาและดูบันทึกการตรวจสอบ คุณต้องทราบตัวระบุของ
โปรเจ็กต์ โฟลเดอร์ หรือองค์กร Firebase ที่ต้องการดู
ข้อมูลการบันทึกการตรวจสอบ คุณระบุฟิลด์อื่นๆ ที่จัดทำดัชนี
LogEntry
เพิ่มเติมได้ เช่น resource.type
โปรดดูรายละเอียดในหัวข้อ
ค้นหารายการบันทึกอย่างรวดเร็ว
ชื่อบันทึกการตรวจสอบต่อไปนี้มีตัวแปรสำหรับ ตัวระบุของโปรเจ็กต์ โฟลเดอร์ หรือองค์กร Firebase
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy
คุณดูบันทึกการตรวจสอบใน Cloud Logging ได้โดยใช้
คอนโซล Google Cloud, เครื่องมือบรรทัดคำสั่ง gcloud
หรือ Logging API
คอนโซล
คุณสามารถใช้ Logs Explorer ในคอนโซล Google Cloud เพื่อดึงข้อมูลรายการบันทึกการตรวจสอบสำหรับโปรเจ็กต์ โฟลเดอร์ หรือองค์กร Firebase ได้โดยทำดังนี้
ในคอนโซล Google Cloud ให้ไปที่หน้า Logging > Logs Explorer
ในหน้า Logs Explorer ให้เลือกโปรเจ็กต์ โฟลเดอร์ หรือองค์กร Firebase ที่มีอยู่
ในแผงเครื่องมือสร้างคำค้นหา ให้ทำดังนี้
ในประเภททรัพยากร ให้เลือกทรัพยากร Google Cloud ที่คุณต้องการดู บันทึกการตรวจสอบ
ในชื่อบันทึก ให้เลือกประเภทบันทึกการตรวจสอบที่ต้องการดู
- สำหรับบันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ ให้เลือกกิจกรรม
- สําหรับบันทึกการตรวจสอบการเข้าถึงข้อมูล ให้เลือก data_access
- สําหรับบันทึกการตรวจสอบเหตุการณ์ของระบบ ให้เลือก system_event
- สำหรับบันทึกการตรวจสอบที่ถูกปฏิเสธเนื่องจากนโยบาย ให้เลือกนโยบาย
หากไม่เห็นตัวเลือกเหล่านี้ แสดงว่าไม่มีบันทึกการตรวจสอบประเภทดังกล่าวในโปรเจ็กต์ โฟลเดอร์ หรือองค์กร Firebase
ดูรายละเอียดเพิ่มเติมเกี่ยวกับการค้นหาโดยใช้ Logs Explorer ได้ที่ สร้างการค้นหาบันทึก
gcloud
gcloud
เครื่องมือบรรทัดคำสั่งมีอินเทอร์เฟซบรรทัดคำสั่งสำหรับ Cloud Logging API
ระบุ PROJECT_ID
, FOLDER_ID
หรือ ORGANIZATION_ID
ที่ถูกต้องในชื่อบันทึกแต่ละรายการ
หากต้องการอ่านรายการบันทึกการตรวจสอบระดับโปรเจ็กต์ Firebase ให้เรียกใช้คำสั่งต่อไปนี้
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" --project=PROJECT_ID
หากต้องการอ่านรายการบันทึกการตรวจสอบระดับโฟลเดอร์ ให้เรียกใช้คำสั่งต่อไปนี้
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" --folder=FOLDER_ID
หากต้องการอ่านรายการบันทึกการตรวจสอบระดับองค์กร ให้เรียกใช้คำสั่งต่อไปนี้
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" --organization=ORGANIZATION_ID
ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้gcloud
ได้ที่
อ่านรายการบันทึก
API
เมื่อสร้างคําค้นหา ให้แทนที่ตัวแปรด้วยค่าที่ถูกต้อง แทนที่ชื่อหรือตัวระบุของบันทึกการตรวจสอบระดับโปรเจ็กต์ ระดับโฟลเดอร์ หรือ ระดับองค์กรที่เหมาะสมตามที่ระบุไว้ในชื่อบันทึกการตรวจสอบ เช่น หากการค้นหามี PROJECT_ID ตัวระบุโปรเจ็กต์ที่คุณระบุต้องอ้างอิงถึงโปรเจ็กต์ Firebase ที่เลือกอยู่ในปัจจุบัน
หากต้องการใช้ Logging API เพื่อดูรายการบันทึกการตรวจสอบ ให้ทำดังนี้
ไปที่ส่วนลองใช้ API นี้ในเอกสารประกอบสำหรับเมธอด
entries.list
ใส่ข้อมูลต่อไปนี้ในส่วนเนื้อหาของคำขอของแบบฟอร์มลองใช้ API นี้ การคลิกแบบฟอร์มที่กรอกข้อมูลไว้ล่วงหน้านี้ จะกรอกข้อมูลในเนื้อหาคำขอโดยอัตโนมัติ แต่คุณต้อง ระบุ
PROJECT_ID
ที่ถูกต้องในแต่ละชื่อบันทึก{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
คลิกดำเนินการ
ดูรายละเอียดเพิ่มเติมเกี่ยวกับการค้นหาได้ที่ ภาษาในการค้นหาการบันทึก
ดูตัวอย่างรายการบันทึกการตรวจสอบและวิธีค้นหาข้อมูลที่สำคัญที่สุด ในบันทึกได้ที่ ตัวอย่างรายการบันทึกการตรวจสอบ
กำหนดเส้นทางบันทึกการตรวจสอบ
คุณกำหนดเส้นทางบันทึกการตรวจสอบไปยังปลายทางที่รองรับได้ในลักษณะเดียวกับการกำหนดเส้นทางบันทึกประเภทอื่นๆ สาเหตุบางประการที่คุณอาจต้องการกำหนดเส้นทางบันทึกการตรวจสอบมีดังนี้
หากต้องการเก็บบันทึกการตรวจสอบไว้นานขึ้นหรือใช้ความสามารถในการค้นหาที่ทรงพลังยิ่งขึ้น คุณสามารถกำหนดเส้นทางการคัดลอกบันทึกการตรวจสอบไปยัง Google Cloud Storage, BigQuery หรือ Google Cloud Pub/Sub ได้ คุณใช้ Cloud Pub/Sub เพื่อกำหนดเส้นทางไปยังแอปพลิเคชันอื่นๆ ที่เก็บข้อมูลอื่นๆ และบุคคลที่สามได้
หากต้องการจัดการบันทึกการตรวจสอบทั่วทั้งองค์กร คุณสามารถสร้าง ซิงก์แบบรวมที่สามารถ กำหนดเส้นทางบันทึกจากโปรเจ็กต์ Firebase ทั้งหมดหรือบางส่วนในองค์กรได้
- หากบันทึกการตรวจสอบการเข้าถึงข้อมูลที่เปิดใช้อยู่ทำให้โปรเจ็กต์ Firebase ใช้บันทึกเกินโควต้า คุณสามารถสร้าง Sink ที่ยกเว้นบันทึกการตรวจสอบการเข้าถึงข้อมูลจาก Logging ได้
ดูวิธีการกำหนดเส้นทางการบันทึกได้ที่กำหนดค่า Sink
ราคา
บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบและบันทึกการตรวจสอบเหตุการณ์ของระบบไม่มีค่าใช้จ่าย
บันทึกการตรวจสอบการเข้าถึงข้อมูลและบันทึกการตรวจสอบที่ถูกปฏิเสธตามนโยบายมีค่าใช้จ่าย
ดูข้อมูลเพิ่มเติมเกี่ยวกับราคา Cloud Logging ได้ที่ ราคาชุดเครื่องมือการดำเนินการของ Google Cloud: Cloud Logging