หน้านี้จะอธิบายบันทึกการตรวจสอบที่ Cloud Search สร้างขึ้นซึ่งเป็นส่วนหนึ่ง ของ บันทึกการตรวจสอบ Cloud
ภาพรวม
บริการ Google Cloud จะเขียนบันทึกการตรวจสอบเพื่อช่วยคุณตอบคำถาม "ใครทำอะไร ที่ไหน และเมื่อใด" ภายในทรัพยากรของคุณ โปรเจ็กต์ Cloud ของคุณจะมีบันทึกการตรวจสอบสำหรับทรัพยากรที่อยู่ในโปรเจ็กต์โดยตรงเท่านั้น ส่วนเอนทิตีอื่นๆ เช่น โฟลเดอร์ องค์กร และบัญชีสำหรับการเรียกเก็บเงินใน Cloud จะมีบันทึกการตรวจสอบของตัวเอง
ดูภาพรวมทั่วไปได้ที่ บันทึกการตรวจสอบ Cloud ดูรายละเอียดเพิ่มเติมได้ที่ ทำความเข้าใจบันทึกการตรวจสอบ
บันทึกการตรวจสอบ Cloud จะมีบันทึกต่อไปนี้สำหรับโปรเจ็กต์ที่อยู่ในระบบคลาวด์ โฟลเดอร์ และองค์กรแต่ละรายการ
- บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ: รายการสำหรับเมธอดที่ดำเนินการเขียนของผู้ดูแลระบบ
- บันทึกการตรวจสอบการเข้าถึงข้อมูล: รายการสำหรับเมธอดที่ดำเนินการอ่านของผู้ดูแลระบบ การเขียนข้อมูล และการอ่านข้อมูล
- บันทึกการตรวจสอบเหตุการณ์ของระบบ
- บันทึกการตรวจสอบนโยบายที่ถูกปฏิเสธ
Cloud Search จะเขียนบันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบเพื่อบันทึกการดำเนินการที่แก้ไขการกำหนดค่าหรือข้อมูลเมตาของทรัพยากร คุณจะปิดใช้บันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบไม่ได้
Cloud Search จะเขียนบันทึกการตรวจสอบการเข้าถึงข้อมูลก็ต่อเมื่อคุณ เปิดใช้บันทึกดังกล่าวอย่างชัดเจน บันทึกเหล่านี้จะมี API Call ที่อ่านการกำหนดค่าหรือข้อมูลเมตาของทรัพยากร รวมถึง API Call ที่ผู้ใช้เป็นผู้เริ่มซึ่งสร้าง แก้ไข หรืออ่านข้อมูลทรัพยากรที่ผู้ใช้ระบุ
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
- (ไม่บังคับ) หากยังไม่ได้สร้างโปรเจ็กต์ที่อยู่ในระบบคลาวด์ของ Google Cloud เพื่อจัดเก็บบันทึก โปรดดูหัวข้อ กำหนดค่าการเข้าถึง Cloud Search API
- รับรหัสโปรเจ็กต์สำหรับโปรเจ็กต์ Google Cloud ที่คุณต้องการจัดเก็บบันทึก ดูการระบุโปรเจ็กต์
- กำหนดหมวดหมู่บันทึกที่จะเปิดใช้สำหรับ API ที่เฉพาะเจาะจง ดู การดำเนินการที่ตรวจสอบ
ใช้เมธอด
updateCustomer()REST API เพื่ออัปเดตauditLogSettingsด้วยหมวดหมู่ต่อไปนี้- รับโทเค็นเพื่อการเข้าถึง OAuth 2.0 ดู
การใช้ OAuth 2.0 เพื่อเข้าถึง Google APIs
ใช้ขอบเขตใดขอบเขตหนึ่งต่อไปนี้
https://www.googleapis.com/auth/cloud_search.settings.indexinghttps://www.googleapis.com/auth/cloud_search.settingshttps://www.googleapis.com/auth/cloud_search
เรียกใช้คำสั่ง 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 ในภายหลังจะสร้างบันทึกในโปรเจ็กต์ที่ระบุ
- รับโทเค็นเพื่อการเข้าถึง OAuth 2.0 ดู
การใช้ OAuth 2.0 เพื่อเข้าถึง Google APIs
ใช้ขอบเขตใดขอบเขตหนึ่งต่อไปนี้
การบันทึกการตรวจสอบสำหรับเมธอดการค้นหาต้องใช้หมวดหมู่การอ่านข้อมูล วิธีเปิดใช้การบันทึกสำหรับ
query.sources.list,query.suggestและquery.search- ดึงข้อมูลชื่อของแอปพลิเคชันการค้นหาแต่ละรายการในรูปแบบ
searchapplications/<search_application_id> - เรียก
settings.searchapplications.updateโดยตั้งค่าenableAuditLogเป็นtrue
- ดึงข้อมูลชื่อของแอปพลิเคชันการค้นหาแต่ละรายการในรูปแบบ
หากต้องการเปิดใช้การบันทึกการตรวจสอบสำหรับการเรียกจาก
cloudsearch.google.comให้ตรวจสอบว่าได้เปิดใช้หมวดหมู่การอ่านข้อมูลแล้วและอัปเดตsearchapplications/default
ดูบันทึกใน Logs Explorer ของคอนโซล Google Cloud ใช้ตัวกรองนี้สำหรับบันทึกการตรวจสอบของ Cloud Search
protoPayload.serviceName="cloudsearch.googleapis.com"
ดูข้อมูลเพิ่มเติมได้ที่ ภาพรวมของ Logs Explorer
สิทธิ์บันทึกการตรวจสอบ
สิทธิ์ Identity and Access Management (IAM) จะกำหนดบันทึกที่คุณดูหรือส่งออกได้ ดูข้อมูลเพิ่มเติมได้ที่ ทำความเข้าใจบทบาท
หากต้องการดูบันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ คุณต้องมีบทบาท IAM อย่างใดอย่างหนึ่งต่อไปนี้
- เจ้าของ ผู้แก้ไข หรือผู้ดูโปรเจ็กต์
- บทบาทผู้ดูบันทึกของ Logging
- บทบาท IAM ที่กำหนดเอง
ซึ่งมีสิทธิ์
logging.logEntries.list
หากต้องการดูบันทึกการตรวจสอบการเข้าถึงข้อมูล คุณต้องมีบทบาทอย่างใดอย่างหนึ่งต่อไปนี้
- เจ้าของโปรเจ็กต์
- บทบาท ผู้ดูบันทึกส่วนตัว ของ Logging
- บทบาท IAM ที่กำหนดเอง
ซึ่งมีสิทธิ์ IAM
logging.privateLogEntries.list
หากคุณใช้บันทึกการตรวจสอบจากเอนทิตีที่ไม่ใช่โปรเจ็กต์ เช่น องค์กร ให้เปลี่ยนบทบาทโปรเจ็กต์ที่อยู่ในระบบคลาวด์เป็นบทบาทองค์กรที่เหมาะสม
ดูบันทึก
หากต้องการดูบันทึก คุณต้องมีตัวระบุของโปรเจ็กต์ที่อยู่ในระบบคลาวด์ โฟลเดอร์ หรือองค์กร นอกจากนี้ คุณยังระบุช่อง
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%2Fpolicyfolders/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
คุณมีตัวเลือกมากมายในการดูรายการบันทึกการตรวจสอบ
คอนโซล
- ไปที่หน้า Logging > Logs Explorer ในคอนโซล Google Cloud ไปที่ Logs Explorer
- เลือกโปรเจ็กต์
- ในบานหน้าต่างเครื่องมือสร้างการค้นหา ให้เลือกทรัพยากรและประเภทบันทึก ดูรายละเอียดเพิ่มเติมเกี่ยวกับการค้นหาโดยใช้ Logs Explorer ใหม่ได้ที่ สร้างการค้นหาใน Logs Explorer
gcloud
เรียกใช้คำสั่งนี้สำหรับบันทึกระดับโปรเจ็กต์
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
--project=PROJECT_ID
API
- ไปที่ส่วน ลองใช้ API นี้ สำหรับเมธอด
entries.list - ใช้เนื้อหาคำขอต่อไปนี้ โดยแทนที่
PROJECT_IDด้วยรหัสโปรเจ็กต์ที่เลือก{ "resourceNames": ["projects/PROJECT_ID"], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" } - คลิกเรียกใช้
ดูรายละเอียดเพิ่มเติมเกี่ยวกับการค้นหาได้ที่ ภาษาในการค้นหาการบันทึก
ดูรายการบันทึกการตรวจสอบตัวอย่างและวิธีค้นหาข้อมูลที่สำคัญที่สุด ในรายการได้ที่ ทำความเข้าใจบันทึกการตรวจสอบ
ส่งออกบันทึกการตรวจสอบ
คุณสามารถส่งออกบันทึกการตรวจสอบได้เช่นเดียวกับบันทึกอื่นๆ ดู การส่งออกบันทึก
- ส่งออกไปยัง Cloud Storage, BigQuery หรือ Pub/Sub เพื่อการเก็บรักษานานขึ้นหรือการค้นหาขั้นสูง
- ใช้ Sink แบบรวม เพื่อจัดการบันทึกทั่วทั้งองค์กร
- ยกเว้นบันทึกการเข้าถึงข้อมูลเพื่อจัดการการจัดสรรบันทึก ดู การยกเว้นบันทึก
การกำหนดราคาและการเก็บรักษา
Cloud Logging จะไม่คิดค่าบริการสำหรับบันทึกการตรวจสอบกิจกรรมของผู้ดูแลระบบ แต่จะคิดค่าบริการสำหรับบันทึกการตรวจสอบการเข้าถึงข้อมูล ดูราคาของชุดเครื่องมือการดำเนินการของ Google Cloud
ระยะเวลาการเก็บรักษาบันทึกการตรวจสอบของ Cloud Search
- บันทึกกิจกรรมของผู้ดูแลระบบ: 400 วัน
- บันทึกการเข้าถึงข้อมูล: 30 วัน
ข้อจำกัดปัจจุบัน
ข้อจำกัดของการบันทึกการตรวจสอบของ Cloud Search
- รายการบันทึกต้องมีขนาดไม่เกิน 512 KB หากรายการมีขนาดเกิน 512 KB ระบบจะนำช่อง
responseออก หากรายการยังมีขนาดเกิน 512 KB ระบบจะนำช่องrequestออก หากรายการยังมีขนาดเกิน 512 KB ระบบจะทิ้งรายการทั้งหมด - ระบบจะไม่บันทึกเนื้อหาการตอบกลับสำหรับเมธอด
list(),get()และsuggest() - ระบบจะบันทึกเฉพาะการเรียกการค้นหาจาก
cloudsearch.google.comและแอปพลิเคชันการค้นหาของลูกค้า - สำหรับการเรียก
search()ระบบจะบันทึกเฉพาะQuery,RequestOptionsและDataSourceRestrictionในคำขอ ส่วนการตอบกลับจะตรวจสอบเฉพาะ URL และข้อมูลเมตา - ระบบจะไม่ตรวจสอบการเรียก Backend สำหรับการส่งออกข้อมูล