บันทึกการตรวจสอบ

หน้านี้อธิบายบันทึกการตรวจสอบที่ Cloud Search สร้างขึ้นซึ่งเป็นส่วนหนึ่งของบันทึกการตรวจสอบ Cloud

ภาพรวม

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

ดูภาพรวมทั่วไปได้ที่บันทึกการตรวจสอบ Cloud ดูรายละเอียดเพิ่มเติมได้ที่ทำความเข้าใจบันทึกการตรวจสอบ

Cloud Audit Logs จะมีบันทึกต่อไปนี้สำหรับแต่ละโปรเจ็กต์ โฟลเดอร์ และองค์กรในระบบคลาวด์

  • บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ: รายการสำหรับเมธอดที่ดำเนินการเขียนของผู้ดูแลระบบ
  • บันทึกการตรวจสอบการเข้าถึงข้อมูล: รายการสำหรับเมธอดที่ดำเนินการอ่านของผู้ดูแลระบบ การเขียนข้อมูล และการอ่านข้อมูล
  • บันทึกการตรวจสอบเหตุการณ์ของระบบ
  • บันทึกการตรวจสอบนโยบายที่ถูกปฏิเสธ

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

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

Cloud Search จะไม่เขียนบันทึกการตรวจสอบเหตุการณ์ของระบบหรือการปฏิเสธนโยบาย

การดำเนินการที่ตรวจสอบแล้ว

ตารางต่อไปนี้สรุปการดำเนินการของ API ที่สอดคล้องกับบันทึกการตรวจสอบแต่ละประเภทใน Cloud Search

หมวดหมู่บันทึกการตรวจสอบ การดำเนินการใน Cloud Search
กิจกรรมของผู้ดูแลระบบ: การเขียนของผู้ดูแลระบบ indexing.datasources.updateSchema
indexing.datasources.deleteSchema
settings.datasources.create
settings.datasources.delete
settings.datasources.update
settings.searchapplications.create
settings.searchapplications.delete
settings.searchapplications.reset
settings.searchapplications.update
settings.updateCustomer
cloudsearch.IdentitySourceService.create
cloudsearch.IdentitySourceService.update
cloudsearch.IdentitySourceService.delete
การเข้าถึงข้อมูล: ผู้ดูแลระบบอ่าน indexing.datasources.getSchema
settings.datasources.get
settings.datasources.list
settings.searchapplications.get
settings.searchapplications.list
settings.getCustomer
cloudsearch.IdentitySourceService.get
cloudsearch.IdentitySourceService.list
การเข้าถึงข้อมูล: การเขียนข้อมูล indexing.datasources.items.delete
indexing.datasources.items.deleteQueueItems
indexing.datasources.items.index
indexing.datasources.items.poll
indexing.datasources.items.push
indexing.datasources.items.unreserve
indexing.datasources.items.upload
media.upload
การเข้าถึงข้อมูล: อ่านข้อมูล indexing.datasources.items.get
indexing.datasources.items.list
operations.get
operations.list
debug.datasources.items.checkAccess
debug.datasources.items.searchByViewUrl
stats.getIndex
stats.getQuery
stats.getSession
stats.getUser
stats.index.datasources.get
stats.query.searchapplications.get
stats.session.searchapplications.get
stats.user.search applications.get
debug.identitysources.items.listForunmappedidentity
debug.identitysources.unmappedids.list
debug.datasources.items.unmappedids.list
query.sources.list
query.suggest
query.search
stats.getSearchapplication

รูปแบบบันทึกการตรวจสอบ

รายการบันทึกการตรวจสอบมีออบเจ็กต์ต่อไปนี้ คุณดูบันทึกได้ใน Cloud Logging โดยใช้ Logs Explorer, Cloud Logging API หรือเครื่องมือบรรทัดคำสั่ง gcloud

รายการบันทึกเองก็เป็นออบเจ็กต์ LogEntry ฟิลด์ที่มีประโยชน์ ได้แก่

  • logName: รหัสทรัพยากรและประเภทบันทึกการตรวจสอบ
  • resource: เป้าหมายของการดำเนินการที่ตรวจสอบ
  • timeStamp: เวลาของการดำเนินการที่ตรวจสอบ
  • protoPayload: ข้อมูลที่ตรวจสอบ

ข้อมูลการบันทึกการตรวจสอบคือออบเจ็กต์ AuditLog ในฟิลด์ protoPayload

ข้อมูลการตรวจสอบเฉพาะบริการที่ไม่บังคับคือออบเจ็กต์เฉพาะบริการ สำหรับการผสานรวมเวอร์ชันก่อนหน้า ออบเจ็กต์นี้จะอยู่ในฟิลด์ serviceData ของออบเจ็กต์ AuditLog ส่วนการผสานรวมเวอร์ชันใหม่กว่าจะใช้ฟิลด์ metadata

ดูข้อมูลเพิ่มเติมได้ที่ทำความเข้าใจบันทึกการตรวจสอบ

ชื่อบันทึก

ชื่อทรัพยากรของบันทึกการตรวจสอบของ Cloud จะระบุโปรเจ็กต์หรือเอนทิตีอื่นๆ ของ Google Cloud ที่เป็นเจ้าของบันทึก และประเภทบันทึกการตรวจสอบ เช่น

projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access

ชื่อบริการ

บันทึกการตรวจสอบของ Cloud Search ใช้ชื่อบริการ cloudsearch.googleapis.com

ประเภททรัพยากร

บันทึกการตรวจสอบของ Cloud Search ใช้ประเภททรัพยากร audited_resource สำหรับบันทึกทั้งหมด ดูประเภททรัพยากรเพิ่มเติมได้ที่ ประเภททรัพยากรที่ตรวจสอบ

เปิดใช้การบันทึกการตรวจสอบ

โดยค่าเริ่มต้น ระบบจะปิดใช้การบันทึกการตรวจสอบสำหรับ Cloud Search API หากต้องการ เปิดใช้การบันทึกการตรวจสอบสำหรับ Cloud Search ให้ทำดังนี้

  1. (ไม่บังคับ) หากยังไม่ได้สร้างโปรเจ็กต์ Google Cloud เพื่อจัดเก็บบันทึก โปรดดูกำหนดค่าการเข้าถึง Cloud Search API
  2. รับรหัสโปรเจ็กต์สำหรับโปรเจ็กต์ Google Cloud ที่คุณต้องการจัดเก็บบันทึก ดูการระบุโปรเจ็กต์
  3. กำหนดหมวดหมู่บันทึกที่จะเปิดใช้สำหรับ API ที่เฉพาะเจาะจง ดูการดำเนินการที่ตรวจสอบแล้ว
  4. ใช้วิธีการ updateCustomer() REST API เพื่ออัปเดต auditLogSettings ด้วยหมวดหมู่ต่อไปนี้

    1. รับโทเค็นเพื่อการเข้าถึง OAuth 2.0 ดูการใช้ OAuth 2.0 เพื่อเข้าถึง Google APIs ใช้ขอบเขตใดขอบเขตหนึ่งต่อไปนี้
      • https://www.googleapis.com/auth/cloud_search.settings.indexing
      • https://www.googleapis.com/auth/cloud_search.settings
      • https://www.googleapis.com/auth/cloud_search
    2. เรียกใช้คำสั่ง curl นี้ bash curl --request PATCH \ 'https://cloudsearch.googleapis.com/v1/settings/customer?updateMask=auditLoggingSettings&key=[YOUR_API_KEY]' \ --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \ --header 'Content-Type: application/json' \ --data '{"auditLoggingSettings": { "project": "projects/PROJECT_ID", "CATEGORY1": "true", "CATEGORY2": "true" } }' แทนที่ YOUR_ACCESS_TOKEN, PROJECT_ID และหมวดหมู่ (logAdminReadActions, logDataWriteActions หรือ logDataReadActions) ระบบจะเปิดใช้การดำเนินการเขียนของผู้ดูแลระบบโดยค่าเริ่มต้น หากต้องการบันทึกวิธีการค้นหา ให้เปิดใช้ หมวดหมู่การอ่านข้อมูล

      คำขอที่ส่งไปยัง Cloud Search API ในภายหลังจะสร้างบันทึกในโปรเจ็กต์ที่ระบุ

  5. การบันทึกการตรวจสอบสำหรับเมธอดการค้นหาต้องใช้หมวดหมู่การอ่านข้อมูล วิธีเปิดใช้ การบันทึกสำหรับ query.sources.list, query.suggest และ query.search

    1. ดึงชื่อของแอปพลิเคชันการค้นหาแต่ละรายการในรูปแบบ searchapplications/<search_application_id>
    2. โทรหา settings.searchapplications.update โดยตั้งค่า enableAuditLog เป็น true
  6. หากต้องการเปิดใช้การบันทึกการตรวจสอบสําหรับการเรียกจาก cloudsearch.google.com ให้ตรวจสอบว่าได้เปิดใช้หมวดหมู่การอ่านข้อมูลและอัปเดต searchapplications/default แล้ว

ดูบันทึกใน Logs Explorer ของคอนโซล Google Cloud ใช้ตัวกรองนี้สำหรับ บันทึกการตรวจสอบของ Cloud Search

protoPayload.serviceName="cloudsearch.googleapis.com"

ดูข้อมูลเพิ่มเติมได้ที่ ภาพรวมของ Logs Explorer

สิทธิ์ของบันทึกการตรวจสอบ

สิทธิ์ Identity and Access Management (IAM) จะกำหนดบันทึกที่คุณดูหรือส่งออกได้ ดูข้อมูลเพิ่มเติมได้ที่ ทำความเข้าใจเกี่ยวกับบทบาท

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

หากต้องการดูบันทึกการตรวจสอบการเข้าถึงข้อมูล คุณต้องมีบทบาทใดบทบาทหนึ่งต่อไปนี้

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

ดูบันทึก

หากต้องการดูบันทึก คุณต้องมีตัวระบุของโปรเจ็กต์ โฟลเดอร์ หรือองค์กรในระบบคลาวด์ คุณสามารถระบุฟิลด์อื่นๆ LogEntry เช่น resource.type ดูสร้างการค้นหาใน Logs Explorer

ชื่อบันทึกการตรวจสอบจะเป็นไปตามรูปแบบต่อไปนี้

   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

คุณมีตัวเลือกหลายตัวในการดูรายการบันทึกการตรวจสอบ

คอนโซล

  1. ไปที่หน้า Logging > Logs Explorer ในคอนโซล Google Cloud ไปที่เครื่องมือสำรวจบันทึก
  2. เลือกโปรเจ็กต์
  3. ในบานหน้าต่างเครื่องมือสร้างคำค้นหา ให้เลือกทรัพยากรและประเภทบันทึก ดูรายละเอียดเพิ่มเติมเกี่ยวกับการค้นหาโดยใช้ Logs Explorer ใหม่ได้ที่ สร้างการค้นหาใน Logs Explorer

gcloud

เรียกใช้คำสั่งนี้สำหรับบันทึกระดับโปรเจ็กต์

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" 
--project=PROJECT_ID

API

  1. ไปที่ส่วนลองใช้ API นี้สำหรับเมธอด entries.list
  2. ใช้เนื้อหาคำขอนี้ โดยแทนที่ PROJECT_ID ด้วยรหัสโปรเจ็กต์ที่คุณเลือก
    {
    "resourceNames": ["projects/PROJECT_ID"],
    "pageSize": 5,
    "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
  3. คลิกดำเนินการ

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

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

ส่งออกบันทึกการตรวจสอบ

คุณส่งออกบันทึกการตรวจสอบได้เช่นเดียวกับบันทึกอื่นๆ ดูการส่งออกบันทึก

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

การกำหนดราคาและการรักษาลูกค้า

Cloud Logging จะไม่เรียกเก็บเงินสำหรับบันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ Cloud Logging จะเรียกเก็บเงินสำหรับบันทึกการตรวจสอบการเข้าถึงข้อมูล ดูราคาของชุดเครื่องมือการดำเนินการของ Google Cloud

ระยะเวลาการเก็บรักษาบันทึกการตรวจสอบของ Cloud Search

  • บันทึกกิจกรรมของผู้ดูแลระบบ: 400 วัน
  • บันทึกการเข้าถึงข้อมูล: 30 วัน

ข้อจำกัดในปัจจุบัน

ข้อจำกัดของ Cloud Search Audit Logging มีดังนี้

  • รายการบันทึกต้องมีขนาดไม่เกิน 512 KB หากรายการมีขนาดเกิน 512 KB ระบบจะนำresponseฟิลด์ออก หากยังเกิน 512 KB ระบบจะนำrequestฟิลด์ ออก หากยังเกิน 512 KB ระบบจะทิ้งรายการทั้งหมด
  • ระบบจะไม่บันทึกเนื้อหาการตอบกลับสำหรับเมธอด list(), get() และ suggest()
  • ระบบจะบันทึกเฉพาะการเรียกใช้การค้นหาจาก cloudsearch.google.com และแอปพลิเคชันการค้นหาของลูกค้า
  • สำหรับการโทร search() ระบบจะบันทึกเฉพาะ Query, RequestOptions และ DataSourceRestriction ในคำขอ การตอบกลับจะตรวจสอบเฉพาะ URL และข้อมูลเมตา
  • ระบบจะไม่ตรวจสอบการเรียกข้อมูลแบ็กเอนด์สำหรับการส่งออกข้อมูล