Halaman ini menjelaskan log audit yang dibuat oleh Cloud Search sebagai bagian dari Cloud Audit Logs.
Ringkasan
Layanan Google Cloud menulis log audit untuk membantu Anda menjawab pertanyaan, "Siapa melakukan apa, di mana, dan kapan" dalam resource Anda. Project Cloud Anda hanya berisi log audit untuk resource yang berada dalam project secara langsung. Entitas lain, seperti folder, organisasi, dan akun Penagihan Cloud, berisi log audit untuk entitas itu sendiri.
Untuk ringkasan umum tentang Cloud Audit Logs, lihat Cloud Audit Logs. Untuk pembahasan mendalam pemahaman tentang Cloud Audit Logs, peninjauan Memahami log audit.
Cloud Audit Logs menyediakan log audit berikut untuk setiap project Cloud, folder, dan organisasi:
- Log audit Aktivitas Admin yang berisi entri yang sesuai dengan metode melakukan operasi tulis Admin. Metode yang sesuai dengan Aktivitas Admin:Operasi tulis admin dibahas dalam sesi Bagian Operasi yang diaudit.
- Log audit Akses Data yang berisi entri yang sesuai dengan metode yang dijalankan Operasi baca data, operasi tulis data, dan pembacaan data oleh admin. Metode yang sesuai dengan Akses Data:Pembacaan admin, Akses Data:Penulisan data, Akses Data:Pembacaan data akan dibahas di bagian Operasi yang diaudit berikutnya.
- Log audit Peristiwa Sistem
- Log audit Kebijakan Ditolak
Cloud Search menulis log audit Aktivitas Admin, yang mencatat operasi yang mengubah konfigurasi atau metadata resource. Anda tidak dapat menonaktifkan Admin Log audit aktivitas.
Hanya jika diaktifkan secara eksplisit, Cloud Search menulis log audit Akses Data. Log audit Akses Data berisi API yang membaca konfigurasi atau metadata resource, serta panggilan API berbasis pengguna yang membuat, mengubah, atau membaca data resource yang disediakan pengguna.
Cloud Search tidak menulis log audit Peristiwa Sistem.
Cloud Search tidak menulis log audit Kebijakan Ditolak.
Operasi yang diaudit
Tabel berikut merangkum operasi API yang sesuai dengan setiap jenis log audit di Cloud Search:
Kategori log audit | Operasi Cloud Search |
---|---|
Aktivitas Admin: Penulisan admin | 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 |
Akses Data: Pembacaan admin | indexing.datasources.getSchema settings.datasources.get settings.datasources.list settings.searchapplications.get settings.searchapplications.list settings.getCustomer cloudsearch.IdentitySourceService.get cloudsearch.IdentitySourceService.list |
Akses Data: Penulisan data | 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 |
Akses Data: Pembacaan data | di..file.datasources..file.item.checkAccess debug.datasources..item.item.com.get mengindeks.datasources...... dapat.list mengindeks. mengindeks.datasources...... dapat.list operasi. lnya.get operasi.(l.dalam.list debug.datasources.datasources... |
Format log audit
Entri log audit—yang dapat dilihat di Cloud Logging menggunakan Logs Explorer, Cloud Logging API, atau alat command line gcloud, mencakup hal-hal objek:
Entri log itu sendiri, yang
merupakan objek berjenis
LogEntry
Kolom berguna yang meliputi hal berikut ini:
logName
berisi ID resource dan jenis log audit.resource
berisi target operasi yang diaudit.timeStamp
berisi waktu operasi yang diaudit.protoPayload
berisi informasi yang diaudit.- Data log audit, yang merupakan AuditLog yang disimpan di isian {i> protoPayload <i}dari entri log.
Informasi audit khusus layanan opsional, yang merupakan objek khusus layanan.
Untuk integrasi sebelumnya, objek ini disimpan di kolom serviceData
pada
Objek AuditLog
; integrasi berikutnya menggunakan kolom metadata
.
Untuk kolom lain dalam objek ini dan cara menafsirkannya, tinjau Memahami log audit.
Nama log
Nama resource Cloud Audit Logs menunjukkan project Cloud atau project Google Cloud lainnya yang memiliki log audit, dan apakah log tersebut berisi Aktivitas Admin, Data logging audit Akses Data, Kebijakan Ditolak, atau Peristiwa Sistem. Misalnya, menampilkan nama log untuk log audit Aktivitas Admin tingkat project dan Log audit Akses Data. Variabel menunjukkan proyek dan organisasi pengenal.
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Nama layanan
Log audit Cloud Search menggunakan nama layanan cloudsearch.googleapis.com
.
Jenis resource
Log audit Cloud Search menggunakan jenis resource audited_resource
untuk semua audit
log.
Untuk daftar jenis resource lainnya, lihat Jenis resource yang dimonitor.
Mengaktifkan logging audit
Secara default, logging audit dinonaktifkan untuk Cloud Search API. Untuk mengaktifkan audit logging untuk Google Cloud Search:
(opsional) Jika Anda belum membuat project Google Cloud Platform untuk disimpan log, lihat Konfigurasikan akses ke Google Cloud Search API.
Dapatkan project ID untuk Google Cloud tempat Anda ingin menyimpan log. Untuk mempelajari cara mendapatkan project ID, lihat Mengidentifikasi project.
Untuk mengaktifkan logging audit untuk API tertentu, Anda perlu menentukan log-nya kategori yang diinginkan. Untuk API dan kategorinya yang sesuai, lihat Operasi yang diaudit sebelumnya dalam dokumen ini.
Gunakan
updateCustomer()
Metode REST API untuk memperbarui auditLogSettings dengan kategori log menjadi aktifkan:Dapatkan token akses OAuth 2.0 dari Server Otorisasi Google. Sebagai informasi tentang mendapatkan token, lihat langkah 2 untuk Menggunakan OAuth 2.0 untuk Mengakses Google API. Gunakan salah satu cakupan OAuth berikut saat mendapatkan token akses:
https://www.googleapis.com/auth/cloud_search.settings.indexing
https://www.googleapis.com/auth/cloud_search.settings
https://www.googleapis.com/auth/cloud_search
Jalankan perintah curl berikut.
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" } }'
Dengan keterangan:
YOUR_ACCESS_TOKEN
adalah token akses OAuth 2.0 yang diperoleh di langkah 4a.PROJECT_ID
adalah project ID yang diperoleh di langkah 2.CATEGORY1
,CATEGORY2
,…
adalah kategori yang Anda pilih untuk diaktifkan langkah 3. Nilai yang valid adalahlogAdminReadActions
,logDataWriteActions
, danlogDataReadActions
. Tindakan tulis admin diaktifkan secara default dan tidak dapat dinonaktifkan. Jika Anda ingin logging audit untuk metode kueri, Anda harus mengaktifkan Kategori pembacaan data.
Setelah memperbarui
AuditLoggingSettings
, permintaan lebih lanjut ke Cloud Search API membuat log audit di project ID yang ditentukan diAuditLoggingSettings
.Logging audit untuk metode kueri mengharuskan kategori Pembacaan data diaktifkan (dilakukan pada langkah 4). Guna mengaktifkan logging audit untuk metode kueri (
query.sources.list
,query.suggest
, danquery.search
) mengikuti ini langkah-langkah tambahan:Untuk setiap aplikasi penelusuran yang ingin Anda aktifkan logging auditnya, mengambil namanya. Nama harus berupa
searchapplications/<search_application_id>
.Gunakan nama untuk memanggil
settings.searchapplications.update
bersamaenableAuditLog
ditetapkan ketrue
.
Guna mengaktifkan logging audit untuk panggilan dari
cloudsearch.google.com
, pastikan kategori Pembacaan data diaktifkan (langkah 4). Selain itu, lakukan langkah 5b denganname
darisearchapplications/default
.
Setelah diaktifkan, log dapat dilihat di bagian Logs Explorer di Google Cloud Konsol Play. Gunakan filter berikut untuk hanya melihat log audit Cloud Search:
protoPayload.serviceName="cloudsearch.googleapis.com"
Untuk informasi tentang cara melihat log, lihat Ringkasan logs explorer.
Izin log audit
Izin dan peran Identity and Access Management menentukan log audit mana yang dapat Anda lihat atau ekspor. Log berada di project Cloud dan di beberapa entity lainnya termasuk organisasi, folder, dan akun Penagihan Cloud. Untuk selengkapnya informasi, lihat Memahami peran.
Untuk melihat log audit Aktivitas Admin, Anda harus memiliki salah satu peran IAM berikut dalam project yang berisi log audit Anda:
- Pemilik Project, Editor Project, atau Viewer Project.
- Pencatatan log Logs Viewer peran
- J
peran IAM khusus dengan
izin IAM
logging.logEntries.list
Untuk melihat log audit Akses Data, Anda harus memiliki salah satu peran berikut dalam project yang berisi log audit Anda:
- Project Owner
- Pencatatan Peran Private Logs Viewer
- Peran IAM khusus
dengan izin IAM
logging.privateLogEntries.list
Jika Anda menggunakan log audit dari entitas non-project, seperti organisasi, lalu ubah peran project Cloud ke peran organisasi yang sesuai.
Lihat log
Untuk menemukan dan melihat log audit, Anda perlu mengetahui ID Cloud
project, folder, atau organisasi yang ingin Anda lihat logging auditnya
tidak akurat atau tidak sesuai. Anda dapat menentukan lebih lanjut kolom
LogEntry
seperti resource.type; untuk mengetahui detail, tinjau
Buat kueri di Logs Explorer.
Berikut adalah nama log audit; mereka menyertakan variabel untuk ID project, folder, atau organisasi Cloud:
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
Anda memiliki beberapa opsi untuk melihat entri log audit.
Konsol
Anda dapat menggunakan Logs Explorer di Cloud Console untuk mengambil entri log audit untuk project Cloud Anda:
Di Konsol Cloud, buka Pencatatan > Logs Explorer.
Di halaman Logs Explorer, pilih project Cloud yang sudah ada.
Di panel Query builder, lakukan hal berikut:
Di bagian Resource, pilih jenis resource Google Cloud yang log audit yang ingin Anda lihat.
Di Log name, pilih jenis log audit yang ingin dilihat:
- Untuk log audit Aktivitas Admin, pilih activity.
- Untuk log audit Akses Data, pilih data_access.
- Untuk log audit Peristiwa Sistem, pilih system_event.
- Untuk log audit Kebijakan Ditolak, pilih policy.
Jika Anda tidak melihat opsi ini, maka tidak ada log audit apa pun jenis tersebut yang tersedia di project Cloud.
Untuk detail selengkapnya tentang cara membuat kueri menggunakan Logs Explorer yang baru, lihat Buat kueri di Logs Explorer.
gcloud
gcloud menyediakan antarmuka command line untuk
API Logging. Berikan atribut yang valid
PROJECT_ID
, FOLDER_ID
,
atau ORGANIZATION_ID
di setiap nama log.
Untuk membaca entri log audit level project Google Cloud Anda, jalankan perintah berikut:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \ --project=PROJECT_ID
Untuk membaca entri log audit level folder, jalankan perintah berikut:
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \ --folder=FOLDER_ID
Untuk membaca entri log audit tingkat organisasi, jalankan perintah berikut:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \ --organization=ORGANIZATION_ID
Untuk mengetahui informasi selengkapnya tentang penggunaan alat gcloud, lihat
gcloud logging read
API
Saat membuat kueri, ganti variabel dengan nilai yang valid, mengganti level project, level folder, atau project nama atau ID log audit tingkat organisasi seperti yang tercantum dalam nama-nama log audit. Misalnya, jika kueri Anda menyertakan PROJECT_ID, lalu project ID yang Anda berikan harus mengacu pada ID project Google Cloud.
Untuk menggunakan Logging API guna melihat entri log audit Anda, lakukan berikut ini:
Buka bagian Coba API ini dalam dokumentasi untuk metode
entries.list
.Masukkan string berikut ke dalam bagian Isi permintaan di formulir Coba API ini. Mengklik formulir yang telah diisi otomatis ini akan mengisi isi permintaan secara otomatis, tetapi Anda harus memberikan
PROJECT_ID
yang valid di setiap log nama.{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
Klik Jalankan.
Untuk detail selengkapnya tentang pembuatan kueri, lihat Bahasa kueri logging.
Untuk contoh entri log audit dan cara menemukan hal terpenting informasi di dalamnya, lihat Memahami log audit.
Mengekspor log audit
Anda dapat mengekspor log audit dengan cara yang sama seperti saat mengekspor jenis log lainnya. Untuk mengetahui detail tentang cara mengekspor log Anda, lihat Mengekspor log. Berikut adalah beberapa penerapan ekspor log audit:
Untuk menyimpan log audit dalam jangka waktu yang lebih lama atau untuk menggunakan penelusuran yang lebih efektif Anda dapat mengekspor salinan log audit ke Cloud Storage, BigQuery, atau Pub/Sub. Menggunakan Pub/Sub, Anda dapat mengekspor ke aplikasi lain, repositori lain, dan ke pihak ketiga.
Untuk mengelola log audit di seluruh organisasi, Anda dapat membuat sink gabungan yang dapat mengekspor log dari salah satu atau semua project Cloud di organisasi.
Jika log audit Akses Data yang diaktifkan membuat project Cloud Anda alokasi lognya, Anda dapat mengekspor dan mengecualikan log audit Akses Data dari Logging. Untuk mengetahui detailnya, lihat Mengecualikan log.
Penetapan harga dan retensi
Cloud Logging tidak mengenakan biaya untuk log audit yang tidak dapat dinonaktifkan, termasuk semua log audit Aktivitas Admin. Cloud Logging mengenakan biaya kepada Anda untuk Data Akses log audit yang Anda minta secara eksplisit.
Untuk informasi selengkapnya tentang harga log audit, lihat Harga Google Cloud Operations Suite.
Durasi penyimpanan yang terkait dengan log audit Cloud Search adalah:
- Log Aktivitas Admin (atau Tulis Admin) - Log ini disimpan selama 400 hari.
- Log Akses Data (Pembacaan Admin, Penulisan Data, dan Pembacaan Data) - Log ini adalah disimpan selama 30 hari.
Untuk informasi selengkapnya tentang durasi penyimpanan, lihat Periode retensi data dicatat.
Batasan saat ini
Logging audit Cloud Search memiliki batasan berikut:
Ukuran entri log harus kurang dari 512 KB. Jika ukurannya melebihi 512 KB, maka respons akan dihapus dari entri log. Jika hal itu tidak mengurangi menjadi 512 KB atau lebih rendah, permintaan akan dihapus. Akhirnya, jika ukuran masih melebihi 512 KB, entri log akan dihapus.
Isi respons tidak dicatat untuk metode
list()
,get()
, dansuggest()
. Namun, status respons tersedia.Hanya panggilan API Kueri dari
cloudsearch.google.com
(jika diaktifkan) dan pelanggan aplikasi penelusuran dicatat.Untuk panggilan
search()
, hanyaQuery
,RequestOptions
, danDataSourceRestriction
dicatat dalam permintaan. Dalam respons, hanya url dan metadata (sumber danobjectType
) untuk setiapSearchResult
diaudit.Panggilan yang dikeluarkan ke backend Cloud Search dan sesuai dengan ekspor data tidak diaudit.