Bu sayfada, Cloud Search'ün Cloud Denetleme Günlükleri kapsamında oluşturduğu denetleme günlükleri açıklanmaktadır.
Genel Bakış
Google Cloud hizmetleri, kaynaklarınızda "Kim neyi, nerede ve ne zaman yaptı?" sorusuna yanıt vermenize yardımcı olmak için denetleme günlükleri yazar. Cloud projeleriniz yalnızca doğrudan proje içindeki kaynaklara ait denetleme günlüklerini içerir. Klasörler, kuruluşlar ve Cloud Faturalandırma hesapları gibi diğer öğeler kendi denetim günlüklerini içerir.
Genel bakış için Cloud Denetleme Günlükleri başlıklı makaleyi inceleyin. Daha ayrıntılı bilgi için Denetleme günlüklerini anlama başlıklı makaleyi inceleyin.
Cloud Audit Logs, her Cloud projesi, klasörü ve kuruluşu için aşağıdaki günlükleri sağlar:
- Yönetici Etkinliği denetleme günlükleri: Yönetici yazma işlemleri gerçekleştiren yöntemlere ait girişler.
- Veri erişimi denetleme günlükleri: Yönetici okuma, veri yazma ve veri okuma işlemlerini gerçekleştiren yöntemlere ait girişler.
- Sistem Etkinliği denetleme günlükleri
- Politika reddedildi denetleme günlükleri
Cloud Search, kaynak yapılandırmasını veya meta verilerini değiştiren işlemleri kaydetmek için Yönetici İşlemi denetleme günlükleri yazar. Yönetici Etkinliği denetleme günlüklerini devre dışı bırakamazsınız.
Cloud Search, Veri Erişimi denetleme günlüklerini yalnızca açıkça etkinleştirmeniz durumunda yazar. Bu günlükler, kaynak yapılandırmasını veya meta verilerini okuyan API çağrılarını ve kullanıcı tarafından sağlanan kaynak verilerini oluşturan, değiştiren ya da okuyan kullanıcı odaklı API çağrılarını içerir.
Cloud Search, Sistem Etkinliği veya Politika Reddedildi denetleme günlüklerini yazmaz.
Denetlenmiş işlemler
Aşağıdaki tabloda, Cloud Search'teki her denetleme günlüğü türüne karşılık gelen API işlemleri özetlenmektedir:
| Denetleme günlükleri kategorisi | Cloud Search işlemleri |
|---|---|
| Yönetici Etkinliği: Yönetici yazma | 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 |
| Veri erişimi: Yönetici okuma | indexing.datasources.getSchema settings.datasources.get settings.datasources.list settings.searchapplications.get settings.searchapplications.list settings.getCustomer cloudsearch.IdentitySourceService.get cloudsearch.IdentitySourceService.list |
| Veri erişimi: Veri yazma | 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 |
| Veri erişimi: Veri okuma | 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 |
Denetleme günlüğü biçimi
Denetleme günlüğü girişleri aşağıdaki nesneleri içerir. Bunları Günlük Gezgini, Cloud Logging API veya gcloud komut satırı aracını kullanarak Cloud Logging'de görüntüleyebilirsiniz.
Günlük girişinin kendisi bir LogEntry nesnesidir. Faydalı alanlar şunlardır:
logName: Kaynak kimliği ve denetleme günlüğü türü.resource: Denetlenen işlemin hedefi.timeStamp: Denetlenen işlemin zamanı.protoPayload: Denetlenen bilgiler.
Denetleme günlüğü verileri, protoPayload alanındaki bir AuditLog nesnesidir.
İsteğe bağlı hizmete özel denetleme bilgileri, hizmete özel bir nesnedir. Daha önceki entegrasyonlarda bu nesne, AuditLog nesnesinin serviceData alanında yer alır. Daha sonraki entegrasyonlarda ise metadata alanı kullanılır.
Daha fazla bilgi için Denetleme günlüklerini anlama başlıklı makaleyi inceleyin.
Günlük adı
Cloud Audit Logs kaynak adları, günlüklere sahip olan projeyi veya diğer Google Cloud varlığını ve denetleme günlüğü türünü belirtir. Örneğin:
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Hizmet adı
Cloud Search denetleme günlüklerinde hizmet adı cloudsearch.googleapis.com kullanılır.
Kaynak türleri
Cloud Search denetleme günlükleri, tüm günlükler için audited_resource kaynak türünü kullanır. Diğer kaynak türleri için İzlenen kaynak türleri başlıklı makaleyi inceleyin.
Denetleme günlüğünü etkinleştirme
Denetleme günlüğü, Cloud Search API için varsayılan olarak devre dışıdır. Cloud Search için denetleme günlüğünü etkinleştirmek üzere:
- (İsteğe bağlı) Günlükleri depolamak için bir Google Cloud projesi oluşturmadıysanız Cloud Search API'ye erişimi yapılandırma başlıklı makaleye bakın.
- Günlükleri depolamak istediğiniz Google Cloud projesinin proje kimliğini alın. Projeleri tanımlama başlıklı makaleyi inceleyin.
- Belirli bir API için etkinleştirilecek günlük kategorisini belirleyin. Denetlenen işlemler başlıklı makaleyi inceleyin.
auditLogSettingsöğesini kategorilerle güncellemek içinupdateCustomer()REST API yöntemini kullanın:- OAuth 2.0 erişim jetonu alın. Google API'lerine Erişmek İçin OAuth 2.0'ı Kullanma başlıklı makaleyi inceleyin.
Aşağıdaki kapsamlardan birini kullanın:
https://www.googleapis.com/auth/cloud_search.settings.indexinghttps://www.googleapis.com/auth/cloud_search.settingshttps://www.googleapis.com/auth/cloud_search
Aşağıdaki curl komutunu çalıştırın:
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_IDve kategorileri (logAdminReadActions,logDataWriteActionsveyalogDataReadActions) değiştirin. Yönetici yazma işlemleri varsayılan olarak etkindir. Sorgu yöntemlerini günlüğe kaydetmek için Veri okuma kategorisini etkinleştirin.Cloud Search API'ye yapılan sonraki istekler, belirtilen projede günlükler oluşturur.
- OAuth 2.0 erişim jetonu alın. Google API'lerine Erişmek İçin OAuth 2.0'ı Kullanma başlıklı makaleyi inceleyin.
Aşağıdaki kapsamlardan birini kullanın:
Sorgu yöntemleri için denetleme günlüğü oluşturma işlemi, Veri okuma kategorisini gerektirir.
query.sources.list,query.suggestvequery.searchiçin günlük kaydını etkinleştirmek istiyorsanız:- Her arama uygulamasının adını
searchapplications/<search_application_id>biçiminde alın. enableAuditLogayarıtrueolarak belirlenmişkensettings.searchapplications.updatenumaralı telefona yapılan arama.
- Her arama uygulamasının adını
cloudsearch.google.com'dan gelen çağrılar için denetleme günlük kaydını etkinleştirmek istiyorsanız Veri okuma kategorisinin etkinleştirildiğinden emin olun vesearchapplications/default'ı güncelleyin.
Google Cloud Console'un Günlük Gezgini'nde günlükleri görüntüleyin. Bu filtreyi Cloud Search denetleme günlükleri için kullanın:
protoPayload.serviceName="cloudsearch.googleapis.com"
Daha fazla bilgi için Günlük Gezgini'ne genel bakış başlıklı makaleyi inceleyin.
Denetleme günlüğü izinleri
Kimlik ve Erişim Yönetimi (IAM) izinleri, hangi günlükleri görüntüleyebileceğinizi veya dışa aktarabileceğinizi belirler. Daha fazla bilgi için Rolleri anlama başlıklı makaleyi inceleyin.
Yönetici Etkinliği denetleme günlüklerini görüntülemek için aşağıdaki IAM rollerinden birine sahip olmanız gerekir:
- Proje Sahibi, Düzenleyicisi veya Görüntüleyicisi
- Logging Logs Viewer rolü.
logging.logEntries.listiznine sahip bir özel IAM rolü.
Veri erişimi denetleme günlüklerini görüntülemek için aşağıdaki rollerden birine sahip olmanız gerekir:
- Proje Sahibi.
- Günlük kaydının Özel Günlük Görüntüleyici rolü.
logging.privateLogEntries.listIAM iznine sahip bir özel IAM rolü
Kuruluş gibi proje dışı bir varlığın denetleme günlüklerini kullanıyorsanız Cloud projesi rollerini uygun kuruluş rolleriyle değiştirin.
Günlükleri göster
Günlükleri görüntülemek için Cloud projesinin, klasörün veya kuruluşun tanımlayıcısına ihtiyacınız vardır. resource.type gibi diğer LogEntry alanlarını belirtebilirsiniz. Günlük Gezgini'nde sorgu oluşturma başlıklı makaleyi inceleyin.
Denetleme günlüğü adları şu biçimdedir:
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
Denetim günlüğü girişlerinizi görüntülemek için çeşitli seçenekleriniz vardır.
Konsol
- Google Cloud Console'da Logging > Logs Explorer (Günlük Kaydı > Günlük Gezgini) sayfasına gidin. Günlük Gezgini'ne git
- Projenizi seçin.
- Sorgu oluşturucu bölmesinde kaynağı ve günlük türünü seçin. Yeni Günlük Gezgini'ni kullanarak sorgulama hakkında daha fazla bilgi için Günlük Gezgini'nde sorgu oluşturma başlıklı makaleyi inceleyin.
gcloud
Proje düzeyindeki günlükler için bu komutu çalıştırın:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
--project=PROJECT_ID
API
entries.listyöntemi için Bu API'yi deneyin bölümüne gidin.- Bu istek gövdesini kullanın ve
PROJECT_IDyerine seçtiğiniz proje kimliğini yazın:{ "resourceNames": ["projects/PROJECT_ID"], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" } - Execute'u (Çalıştır) tıklayın.
Sorgulama hakkında daha fazla bilgi için �Günlük sorgu dili bölümüne bakın.
Örnek bir denetleme günlüğü girişi ve bu girişteki en önemli bilgileri nasıl bulacağınız hakkında bilgi edinmek için Denetleme günlüklerini anlama başlıklı makaleyi inceleyin.
Denetleme günlüklerini dışa aktarma
Denetleme günlüklerini diğer günlükler gibi dışa aktarabilirsiniz. Günlükleri dışa aktarma başlıklı makaleye bakın.
- Daha uzun saklama süresi veya gelişmiş arama için Cloud Storage, BigQuery ya da Pub/Sub'a aktarın.
- Bir kuruluş genelindeki günlükleri yönetmek için toplu günlük havuzlarını kullanın.
- Günlük tahsislerini yönetmek için veri erişimi günlüklerini hariç tutun. Günlükleri hariç tutma bölümüne bakın.
Fiyatlandırma ve elde tutma
Cloud Logging, Yönetici Etkinliği denetleme günlükleri için ücret almaz. Cloud Logging, Veri Erişimi denetleme günlükleri için ücret alır. Google Cloud'un işlem paketi fiyatlandırması sayfasına bakın.
Cloud Search denetleme günlüklerinin saklama süreleri:
- Yönetici Etkinliği günlükleri: 400 gün.
- Veri erişimi günlükleri: 30 gün.
Mevcut sınırlamalar
Cloud Search denetleme günlüğü sınırlamaları:
- Günlük girişi boyutu 512 KB'tan az olmalıdır. Bir giriş 512 KB'ı aşarsa
responsealanı kaldırılır. Boyut hâlâ 512 KB'ı aşıyorsarequestalanı kaldırılır. Boyut hâlâ 512 KB'ı aşıyorsa girişin tamamı bırakılır. list(),get()vesuggest()yöntemleri için yanıt gövdeleri günlüğe kaydedilmez.- Yalnızca
cloudsearch.google.comve müşteri arama uygulamalarından gelen sorgu çağrıları kaydedilir. search()aramalarında yalnızcaQuery,RequestOptionsveDataSourceRestrictionistekte günlüğe kaydedilir. Yanıt yalnızca URL'yi ve meta verileri denetler.- Veri dışa aktarma için arka uç çağrıları denetlenmez.