การบันทึกการตรวจสอบสําหรับ Firebase AI Logic

หน้านี้อธิบายบันทึกการตรวจสอบที่ 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 ได้โดยทำดังนี้

  1. ในคอนโซล Google Cloud ให้ไปที่หน้า Logging > Logs Explorer

    ไปที่หน้า Logs Explorer

  2. ในหน้า Logs Explorer ให้เลือกโปรเจ็กต์ โฟลเดอร์ หรือองค์กร Firebase ที่มีอยู่

  3. ในแผงเครื่องมือสร้างคำค้นหา ให้ทำดังนี้

    • ในประเภททรัพยากร ให้เลือกทรัพยากร 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 เพื่อดูรายการบันทึกการตรวจสอบ ให้ทำดังนี้

  1. ไปที่ส่วนลองใช้ API นี้ในเอกสารประกอบสำหรับเมธอด entries.list

  2. ใส่ข้อมูลต่อไปนี้ในส่วนเนื้อหาของคำขอของแบบฟอร์มลองใช้ API นี้ การคลิกแบบฟอร์มที่กรอกข้อมูลไว้ล่วงหน้านี้ จะกรอกข้อมูลในเนื้อหาคำขอโดยอัตโนมัติ แต่คุณต้อง ระบุ PROJECT_ID ที่ถูกต้องในแต่ละชื่อบันทึก

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
  3. คลิกดำเนินการ

ดูรายละเอียดเพิ่มเติมเกี่ยวกับการค้นหาได้ที่ ภาษาในการค้นหาการบันทึก

ดูตัวอย่างรายการบันทึกการตรวจสอบและวิธีค้นหาข้อมูลที่สำคัญที่สุด ในบันทึกได้ที่ ตัวอย่างรายการบันทึกการตรวจสอบ

กำหนดเส้นทางบันทึกการตรวจสอบ

คุณกำหนดเส้นทางบันทึกการตรวจสอบไปยังปลายทางที่รองรับได้ในลักษณะเดียวกับการกำหนดเส้นทางบันทึกประเภทอื่นๆ สาเหตุบางประการที่คุณอาจต้องการกำหนดเส้นทางบันทึกการตรวจสอบมีดังนี้

  • หากต้องการเก็บบันทึกการตรวจสอบไว้นานขึ้นหรือใช้ความสามารถในการค้นหาที่ทรงพลังยิ่งขึ้น คุณสามารถกำหนดเส้นทางการคัดลอกบันทึกการตรวจสอบไปยัง Google Cloud Storage, BigQuery หรือ Google Cloud Pub/Sub ได้ คุณใช้ Cloud Pub/Sub เพื่อกำหนดเส้นทางไปยังแอปพลิเคชันอื่นๆ ที่เก็บข้อมูลอื่นๆ และบุคคลที่สามได้

  • หากต้องการจัดการบันทึกการตรวจสอบทั่วทั้งองค์กร คุณสามารถสร้าง ซิงก์แบบรวมที่สามารถ กำหนดเส้นทางบันทึกจากโปรเจ็กต์ Firebase ทั้งหมดหรือบางส่วนในองค์กรได้

  • หากบันทึกการตรวจสอบการเข้าถึงข้อมูลที่เปิดใช้อยู่ทำให้โปรเจ็กต์ Firebase ใช้บันทึกเกินโควต้า คุณสามารถสร้าง Sink ที่ยกเว้นบันทึกการตรวจสอบการเข้าถึงข้อมูลจาก Logging ได้

ดูวิธีการกำหนดเส้นทางการบันทึกได้ที่กำหนดค่า Sink

ราคา

บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบและบันทึกการตรวจสอบเหตุการณ์ของระบบไม่มีค่าใช้จ่าย

บันทึกการตรวจสอบการเข้าถึงข้อมูลและบันทึกการตรวจสอบที่ถูกปฏิเสธตามนโยบายมีค่าใช้จ่าย

ดูข้อมูลเพิ่มเติมเกี่ยวกับราคา Cloud Logging ได้ที่ ราคาชุดเครื่องมือการดำเนินการของ Google Cloud: Cloud Logging