Denetleme günlüğü

Bu sayfada, Cloud Denetleme Günlükleri kapsamında Cloud Search tarafından oluşturulan denetleme günlükleri açıklanmaktadır.

Genel Bakış

Google Cloud hizmetleri, kaynaklarınızda "Kim neyi, nerede ve ne zaman yaptı?" gibi soruları yanıtlamanıza yardımcı olmak için denetleme günlükleri yazar. Cloud projeleriniz yalnızca doğrudan proje içinde bulunan kaynakların denetim günlüklerini içerir. Klasörler, kuruluşlar ve Cloud Faturalandırma hesapları gibi diğer öğeler, öğenin denetleme günlüklerini içerir.

Cloud Denetleme Günlükleri'ne genel bakış için Cloud Denetleme Günlükleri başlıklı makaleyi inceleyin. Cloud Denetleme Günlükleri hakkında daha fazla bilgi edinmek için Denetleme günlüklerini anlama başlıklı makaleyi inceleyin.

Cloud Denetleme Günlükleri, her Cloud projesi, klasörü ve kuruluş için aşağıdaki denetleme günlüklerini sağlar:

  • Yönetici yazma işlemlerini gerçekleştiren yöntemlere karşılık gelen girişler içeren Yönetici Etkinliği denetleme günlükleri. Yönetici Etkinliği:Yönetici yazma işlemleri'ne karşılık gelen yöntemler, yakında yayınlanacak Denetlenen işlemler bölümünde ele alınacaktır.
  • Yönetici okuma, Veri yazma ve Veri okuma işlemlerini gerçekleştiren yöntemlere karşılık gelen girişler içeren Veri Erişimi denetleme günlükleri. Veri Erişimi:Yönetici okuma, Veri Erişimi:Veri yazma, Veri Erişimi:Veri okuma işlemlerine karşılık gelen yöntemler, yakında yayınlanacak Denetlenen işlemler bölümünde ele alınacaktır.
  • Sistem Etkinliği denetleme günlükleri
  • Politika reddedildi denetleme günlükleri

Cloud Search, bir kaynağın yapılandırmasını veya meta verilerini değiştiren işlemleri kaydeden Yönetici Etkinliği 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ştirilirse yazar. Veri erişimi denetim günlükleri, kaynakların yapılandırmasını veya meta verilerini okuyan API çağrılarının yanı sıra kullanıcı tarafından sağlanan kaynak verilerini oluşturan, değiştiren veya okuyan kullanıcı odaklı API çağrılarını içerir.

Cloud Search, sistem etkinliği denetleme günlükleri yazmaz.

Cloud Search, Politika Reddedildi denetleme günlükleri yazmaz.

Denetlenen işlemler

Aşağıda, Cloud Search'taki her denetleme günlüğü türüne karşılık gelen API işlemleri özetlenmiştir:

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

Cloud Logging'da Günlük Gezgini, Cloud Logging API veya gcloud komut satırı aracı kullanılarak görüntülenebilen denetleme günlüğü girişleri aşağıdaki nesneleri içerir:

Günlük girişinin kendisidir. LogEntry türündeki bir nesnedir. Yararlı alanlar şunlardır:

  • logName, kaynak kimliğini ve denetleme günlüğü türünü içerir.
  • resource, denetlenen işlemin hedefini içerir.
  • timeStamp, denetlenen işlemin zamanını içerir.
  • protoPayload, denetlenen bilgileri içerir.
  • Günlük girişinin protoPayload alanında tutulan bir AuditLog nesnesi olan denetleme günlüğü verileri.

Hizmete özel bir nesne olan isteğe bağlı hizmete özgü denetim bilgileri. Daha önceki entegrasyonlarda bu nesne, AuditLog nesnesinin serviceData alanında tutulur; daha sonraki entegrasyonlarda ise metadata alanı kullanılır.

Bu nesnelerdeki diğer alanlar ve bunların nasıl yorumlanacağı hakkında bilgi edinmek için Denetleme günlüklerini anlama başlıklı makaleyi inceleyin.

Günlük adı

Cloud Denetleme Günlükleri kaynak adları, denetleme günlüklerinin sahibi olan Cloud projesini veya diğer Google Cloud öğesini ve günlükte Yönetici Etkinliği, Veri Erişimi, Politika Reddedildi veya Sistem Etkinliği denetleme günlük kaydı verilerinin bulunup bulunmadığını belirtir. Örneğin, aşağıdaki resimde proje düzeyindeki yönetici etkinliği denetleme günlüklerinin ve bir kuruluşun veri erişimi denetleme günlüklerinin günlük adları gösterilmektedir. Değişkenler, proje ve kuruluş tanımlayıcılarını belirtir.

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 cloudsearch.googleapis.com hizmet adı kullanılır.

Kaynak türleri

Cloud Search denetleme günlükleri, tüm denetleme günlükleri için audited_resource kaynak türünü kullanır.

Diğer kaynak türlerinin listesi için İzlenen kaynak türleri başlıklı makaleyi inceleyin.

Denetleme günlüklerini etkinleştirme

Denetleme günlüğe kaydetme özelliği, Cloud Search API için varsayılan olarak devre dışıdır. Google Cloud Search için denetim günlük kaydını etkinleştirmek üzere:

  1. (isteğe bağlı) Günlükleri depolamak için bir Google Cloud Platform projesi oluşturmadıysanız Google Cloud Search API'ye erişimi yapılandırma başlıklı makaleyi inceleyin.

  2. Günlükleri depolamak istediğiniz Google Cloud projesinin kimliğini alın. Proje kimliğini nasıl edineceğinizi öğrenmek için Projeleri tanımlama başlıklı makaleyi inceleyin.

  3. Belirli bir API için denetim günlüğünü etkinleştirmek istiyorsanız etkinleştirilecek günlük kategorisini belirlemeniz gerekir. API'ler ve ilgili kategorileri için bu belgenin önceki bölümündeki Denetlenen işlemler bölümüne bakın.

  4. Aşağıdakileri etkinleştirmek için auditLogSettings'i günlük kategorileriyle güncellemek üzere updateCustomer() REST API yöntemini kullanın:

    1. Google Yetkilendirme Sunucusu'ndan bir OAuth 2.0 erişim jetonu alın. Jeton alma hakkında bilgi edinmek için Google API'lerine Erişmek için OAuth 2.0'ı Kullanma başlıklı makalenin 2. adımına bakın. Erişim jetonunu alırken aşağıdaki OAuth kapsamlarından birini kullanın:

      • 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. Aşağıdaki curl komutunu çalıştırın.

    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" } }'
    

    Burada:

    • YOUR_ACCESS_TOKEN, 4a adımında elde edilen OAuth 2.0 erişim jetonudur.
    • PROJECT_ID, 2. adımda elde edilen proje kimliğidir.
    • CATEGORY1, CATEGORY2, , 3. adımda etkinleştirmeyi seçtiğiniz kategorilerdir. Geçerli değerler logAdminReadActions, logDataWriteActions ve logDataReadActions'dir. Yönetici yazma işlemleri varsayılan olarak etkindir ve devre dışı bırakılamaz. Sorgu yöntemleri için denetim günlük kaydını istiyorsanız Veri okuma kategorisini etkinleştirmeniz gerekir.

    AuditLoggingSettings güncellendikten sonra Cloud Search API'ye yapılan diğer istekler, AuditLoggingSettings'te belirtilen proje kimliğinde bir denetleme günlüğü oluşturur.

  5. Sorgu yöntemleri için denetleme günlüğü, Veri okuma kategorisinin etkinleştirilmesini gerektirir (4. adımda yapılır). Sorgu yöntemleri (query.sources.list, query.suggest ve query.search) için denetim günlüğe kaydetme özelliğini etkinleştirmek üzere aşağıdaki ek adımları uygulayın:

    1. Denetim günlüğünü etkinleştirmek istediğiniz her arama uygulaması için adı alın. Ad searchapplications/<search_application_id> biçiminde olmalıdır.

    2. enableAuditLog değerini true olarak ayarlayarak settings.searchapplications.update'ü çağırmak için adı kullanın.

  6. cloudsearch.google.com kaynaklı aramalar için denetleme günlük kaydını etkinleştirmek istiyorsanız Veri okuma kategorisinin etkinleştirildiğinden emin olun (4. adım). Ayrıca, searchapplications/default değerine sahip bir name ile 5b adımını uygulayın .

Etkinleştirilen günlükler, Google Cloud Console'un Günlük Gezgini bölümünde görüntülenebilir. Yalnızca Cloud Search denetleme günlüklerini görüntülemek için aşağıdaki filtreyi kullanın:

protoPayload.serviceName="cloudsearch.googleapis.com"

Günlükleri görüntüleme hakkında bilgi edinmek için Günlük gezginine genel bakış başlıklı makaleyi inceleyin.

Denetleme günlüğü izinleri

Hangi denetleme günlüklerini görüntüleyebileceğiniz veya dışa aktarabileceğiniz Identity and Access Management izinleri ve rolleri tarafından belirlenir. Günlükler, Cloud projelerinde ve kuruluşlar, klasörler ve Cloud Faturalandırma hesapları da dahil olmak üzere diğer bazı varlıklarda bulunur. 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 denetleme günlüklerinizi içeren projede aşağıdaki IAM rollerinden birine sahip olmanız gerekir:

Veri erişimi denetleme günlüklerini görüntülemek için denetleme günlüklerinizi içeren projede aşağıdaki rollerden birine sahip olmanız gerekir:

Proje dışı bir öğeden (ör. kuruluş) denetleme günlükleri kullanıyorsanız Cloud proje rollerini uygun kuruluş rollerine değiştirin.

Günlükleri göster

Denetim günlüklerini bulup görüntülemek için denetim günlük bilgilerini görüntülemek istediğiniz Cloud projesinin, klasörünün veya kuruluşunun tanımlayıcısını bilmeniz gerekir. resource.type gibi dizine eklenen diğer LogEntry alanlarını da belirtebilirsiniz. Ayrıntılar için Günlük Gezgini'nde sorgu oluşturma başlıklı makaleyi inceleyin.

Aşağıda, Cloud projesinin, klasörünün veya kuruluşunun tanımlayıcıları için değişkenler içeren denetleme günlüğü adları verilmiştir:

   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

Denetleme günlük girişlerinizi görüntülemek için çeşitli seçenekleriniz vardır.

Konsol

Cloud projenizle ilgili denetleme günlüğü girişlerinizi almak için Cloud Console'daki Günlük Gezgini'ni kullanabilirsiniz:

  1. Cloud Console'da Günlük kaydı > Günlük Gezgini sayfasına gidin.

    Günlük Gezgini sayfasına gidin

  2. Günlük Gezgini sayfasında mevcut bir Cloud projesi seçin.

  3. Sorgu oluşturucu bölmesinde aşağıdakileri yapın:

    • Kaynak bölümünde, denetim günlüklerini görmek istediğiniz Google Cloud kaynak türünü seçin.

    • Günlük adı bölümünde, görmek istediğiniz denetleme günlüğü türünü seçin:

      • Yönetici Etkinliği denetleme günlükleri için etkinlik'i seçin.
      • Veri Erişimi denetleme günlükleri için data_access'i seçin.
      • Sistem Etkinliği denetleme günlükleri için system_event'i seçin.
      • Politika Reddedildi denetleme günlükleri için policy'yi seçin.

    Bu seçenekleri görmüyorsanız Cloud projesinde bu tür bir denetim günlüğü yoktur.

    Yeni Günlük Gezgini'ni kullanarak sorgu oluşturma hakkında daha fazla bilgi için Günlük Gezgini'nde sorgu oluşturma başlıklı makaleyi inceleyin.

gcloud

gcloud, Logging API için bir komut satırı arayüzü sağlar. Her bir günlük adında geçerli bir PROJECT_ID, FOLDER_ID veya ORGANIZATION_ID değeri belirtin.

Google Cloud proje düzeyindeki denetleme günlük girişlerinizi okumak için aşağıdaki komutu çalıştırın:

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

Klasör düzeyindeki denetim günlüğü girişlerinizi okumak için aşağıdaki komutu çalıştırın:

gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \
    --folder=FOLDER_ID

Kuruluş düzeyindeki denetleme günlüğü girişlerinizi okumak için aşağıdaki komutu çalıştırın:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \
    --organization=ORGANIZATION_ID

gcloud aracını kullanma hakkında daha fazla bilgi için gcloud logging read bölümüne bakın.

API

Sorgularınızı oluştururken değişkenleri geçerli değerlerle değiştirin, denetim günlük adlarında listelenen uygun proje düzeyindeki, klasör düzeyindeki veya kuruluş düzeyindeki denetim günlüğü adını ya da tanımlayıcıları yerine koyun. Örneğin, sorgunuzda PROJECT_ID varsa sağladığınız proje tanımlayıcısı, şu anda seçili olan Cloud projesine atıfta bulunmalıdır.

Denetleme günlüğü girişlerinizi incelemek için Logging API'yi kullanmak üzere aşağıdakileri yapın:

  1. entries.list yönteminin dokümanlarında Bu API'yi deneyin bölümüne gidin.

  2. Bu API'yi deneyin formunun İstek metni bölümüne aşağıdakileri girin. Bu önceden doldurulmuş formu tıkladığınızda istek gövdesi otomatik olarak doldurulur ancak günlük adlarının her birine geçerli bir PROJECT_ID sağlamanız gerekir.

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. Yürüt'ü tıklayın.

Sorgulama hakkında daha fazla bilgi için Günlük sorgu dili başlıklı makaleyi inceleyin.

Ö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ük türlerini dışa aktardığınız şekilde dışa aktarabilirsiniz. Günlüklerinizi nasıl dışa aktaracağınız hakkında ayrıntılı bilgi için Günlükleri dışa aktarma başlıklı makaleyi inceleyin. Denetleme günlüklerini dışa aktarmanın bazı uygulamaları şunlardır:

  • Denetleme günlüklerini daha uzun süre saklamak veya daha güçlü arama özellikleri kullanmak için denetleme günlüklerinizin kopyalarını Cloud Storage, BigQuery veya Pub/Sub'a aktarabilirsiniz. Pub/Sub'i kullanarak verileri diğer uygulamalara, diğer depolara ve üçüncü taraflara aktarabilirsiniz.

  • Kuruluşun tamamında denetim günlüklerinizi yönetmek için kuruluştaki herhangi bir Cloud projesinden veya tüm projelerden günlükleri dışa aktarabilen toplu toplayıcılar oluşturabilirsiniz.

  • Etkinleştirilen Veri Erişimi denetleme günlükleriniz, Cloud projelerinizin günlük atamalarının üzerine çıkıyorsa Veri Erişimi denetleme günlüklerini dışa aktarıp Logging'den hariç tutabilirsiniz. Ayrıntılar için Günlükleri hariç tutma bölümünü inceleyin.

Fiyatlandırma ve elde tutma

Cloud Logging, tüm Yönetici Etkinliği denetleme günlükleri dahil olmak üzere devre dışı bırakılamayan denetleme günlükleri için sizden ücret almaz. Cloud Logging, açıkça istediğiniz Veri Erişimi denetleme günlükleri için sizden ücret alır.

Denetleme günlükleri fiyatlandırması hakkında daha fazla bilgi için Google Cloud'un işlem paketi fiyatlandırması başlıklı makaleyi inceleyin.

Cloud Search denetleme günlükleriyle ilişkili depolama süresi:

  • Yönetici Etkinliği günlükleri (veya Yönetici Yazma) - Bu günlükler 400 gün boyunca tutulur.
  • Veri erişimi günlükleri (Yönetici Okuma, Veri Yazma ve Veri Okuma): Bu günlükler 30 gün boyunca saklanır.

Depolama süresi hakkında daha fazla bilgi için Günlük saklama süreleri başlıklı makaleyi inceleyin.

Mevcut sınırlamalar

Cloud Search denetleme günlüklerinin şu anki sınırlamaları şunlardır:

  • Günlük girişinin boyutu 512 KB'tan az olmalıdır. Boyut 512 KB'dan fazla olursa yanıt, günlük girişinden çıkarılır. Bu işlem, boyutu 512 KB veya daha düşük bir değere düşürmezse istek bırakılır. Son olarak, boyut hâlâ 512 KB'ı aşıyorsa günlük girişi atlanır.

  • Yanıt gövdeleri, list(), get() ve suggest() yöntemleri için günlüğe kaydedilmez. Ancak yanıt durumları kullanılabilir.

  • Yalnızca cloudsearch.google.com'ten (etkinleştirildiyse) ve müşteri arama uygulamalarından gelen sorgu API çağrıları günlüğe kaydedilir.

  • search() aramaları için istekte yalnızca Query, RequestOptions ve DataSourceRestriction kaydedilir. Yanıtta, her SearchResult için yalnızca URL ve meta veriler (kaynak ve objectType) denetlenir.

  • Cloud Search arka ucuna gönderilen ve veri dışa aktarma işlemine karşılık gelen çağrılar denetlenmez.