Ведение журнала аудита

На этой странице описаны журналы аудита, создаваемые Cloud Search в рамках функции Cloud Audit Logs .

Обзор

Сервисы Google Cloud записывают журналы аудита, которые помогают ответить на вопросы «Кто что сделал, где и когда» в рамках ваших ресурсов. Ваши облачные проекты содержат журналы аудита только для ресурсов, непосредственно входящих в проект. Другие сущности, такие как папки, организации и учетные записи Cloud Billing, содержат свои собственные журналы аудита.

Общий обзор см. в разделе «Журналы аудита в облаке» . Более подробную информацию см. в разделе «Понимание журналов аудита» .

Cloud Audit Logs предоставляет следующие журналы для каждого облачного проекта, папки и организации:

  • Журналы аудита активности администратора: записи для методов, выполняющих операции записи данных администратором.
  • Журналы аудита доступа к данным: записи для методов, выполняющих операции чтения администратора, записи данных и чтения данных.
  • Журналы аудита системных событий
  • Журналы аудита отклонены в соответствии с политикой.

Cloud Search записывает в журналы аудита «Активность администратора» операции, изменяющие конфигурацию ресурсов или метаданные. Отключить журналы аудита «Активность администратора» невозможно.

Cloud Search записывает журналы аудита доступа к данным только в том случае, если вы явно включите эту функцию. Эти журналы содержат вызовы API, которые считывают конфигурацию ресурсов или метаданные, а также вызовы API, инициированные пользователем, которые создают, изменяют или считывают предоставленные пользователем данные ресурсов.

Cloud Search не записывает в журналы аудита события системы или отказ в применении политики.

Проверенные операции

В следующей таблице приведено краткое описание того, какие операции API соответствуют каждому типу журнала аудита в Cloud Search:

Категория журналов аудита операции Cloud Search
Действия администратора: запись администратора indexing.datasources.updateSchema
indexing.datasources.deleteSchema
настройки.источники данных.создать
настройки.источники данных.удалить
настройки.источники данных.обновление
настройки.поискприложений.создать
настройки.поискприложений.удалить
настройки.поискприложений.сброс
настройки.поискприложений.обновление
настройки.обновитьКлиента
cloudsearch.IdentitySourceService.create
cloudsearch.IdentitySourceService.update
cloudsearch.IdentitySourceService.delete
Доступ к данным: чтение администратором. индексирование.источники данных.получитьСхему
настройки.источники данных.получить
настройки.источники данных.список
settings.searchapplications.get
settings.searchapplications.list
настройки.getCustomer
cloudsearch.IdentitySourceService.get
cloudsearch.IdentitySourceService.list
Доступ к данным: запись данных индексирование.источники данных.элементы.удаление
indexing.datasources.items.deleteQueueItems
индексирование.источники данных.элементы.индекс
индексирование.источники данных.элементы.опрос
индексирование.источники данных.элементы.push
индексирование.источники данных.элементы.нерезервировать
индексирование.источники данных.элементы.загрузка
медиа.загрузка
Доступ к данным: чтение данных индексирование.источники данных.элементы.получить
индексирование.источники данных.элементы.список
операции.получить
операции.список
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.suggest
запрос.поиск
stats.getSearchapplication

формат журнала аудита

В записи журнала аудита включены следующие объекты. Вы можете просмотреть их в Cloud Logging, используя Logs Explorer, API Cloud Logging или инструмент командной строки gcloud.

Сама запись в журнале представляет собой объект LogEntry . Полезные поля включают:

  • logName : идентификатор ресурса и тип журнала аудита.
  • resource : объект проверяемой операции.
  • timeStamp : время проведения проверяемой операции.
  • protoPayload : проверенная информация.

Данные для аудита представляют собой объект AuditLog в поле protoPayload .

Дополнительная информация для аудита, специфичная для конкретной службы, представляет собой объект, специфичный для данной службы. В более ранних интеграциях этот объект находился в поле serviceData объекта AuditLog ; в более поздних интеграциях используется поле metadata .

Для получения более подробной информации см. раздел «Понимание журналов аудита» .

Имя журнала

В именах ресурсов Cloud Audit Logs указывается проект или другой объект 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 . Дополнительные типы ресурсов см. в разделе «Отслеживаемые типы ресурсов» .

Включить ведение журнала аудита

По умолчанию ведение журнала аудита для API Cloud Search отключено. Чтобы включить ведение журнала аудита для Cloud Search:

  1. (Необязательно) Если вы еще не создали проект Google Cloud для хранения журналов, см. раздел «Настройка доступа к API Cloud Search» .
  2. Получите идентификатор проекта Google Cloud, в котором вы хотите хранить журналы. См. раздел «Идентификация проектов» .
  3. Определите категорию журнала, которую необходимо включить для конкретного API. См. раздел «Проверяемые операции» .
  4. Используйте метод REST API updateCustomer() для обновления параметров auditLogSettings , указав следующие категории:

    1. Получите токен доступа OAuth 2.0. См. раздел «Использование OAuth 2.0 для доступа к API Google» . Используйте одну из следующих областей действия (scopes):
      • 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 ). Действия записи администратора включены по умолчанию. Для регистрации методов запросов включите категорию «Чтение данных».

      Последующие запросы к API Cloud Search генерируют журналы в указанном проекте.

  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 .

Просматривайте журналы в обозревателе журналов консоли Google Cloud. Используйте этот фильтр для журналов аудита Cloud Search:

protoPayload.serviceName="cloudsearch.googleapis.com"

Для получения более подробной информации см. раздел «Обзор обозревателя журналов» .

Права доступа к журналу аудита

Права доступа в системе управления идентификацией и доступом (IAM) определяют, какие журналы вы можете просматривать или экспортировать. Для получения дополнительной информации см. раздел «Понимание ролей» .

Для просмотра журналов аудита действий администратора необходимо иметь одну из следующих ролей IAM:

Для просмотра журналов аудита доступа к данным необходимо иметь одну из следующих ролей:

Если вы используете журналы аудита от организации, не входящей в проект, например, от другой организации, измените роли проекта в облаке на соответствующие роли организации.

Просмотреть журналы

Для просмотра журналов вам потребуется идентификатор проекта, папки или организации в облаке. Вы можете указать и другие поля LogEntry , например, resource.type . См. раздел «Создание запросов в обозревателе журналов» .

Названия журналов аудита имеют следующий формат:

   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. Перейдите на страницу «Ведение журналов» > «Обозреватель журналов» в консоли Google Cloud. Перейдите в «Обозреватель журналов».
  2. Выберите свой проект.
  3. В панели «Конструктор запросов» выберите ресурс и тип журнала. Дополнительные сведения о выполнении запросов с помощью нового обозревателя журналов см. в разделе «Создание запросов в обозревателе журналов» .

gcloud

Выполните эту команду для получения журналов на уровне проекта:

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

API

  1. Для метода entries.list перейдите в раздел «Попробуйте этот API» .
  2. Используйте этот текст запроса, заменив PROJECT_ID на выбранный вами идентификатор проекта:
    {
    "resourceNames": ["projects/PROJECT_ID"],
    "pageSize": 5,
    "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
  3. Нажмите «Выполнить» .

Для получения более подробной информации о запросах см. раздел «Ведение журнала запросов» .

Пример записи в журнале аудита и информация о том, как найти в ней наиболее важную информацию, приведены в разделе «Понимание журналов аудита» .

Экспорт журналов аудита

Экспорт журналов аудита осуществляется так же, как и экспорт других журналов. См. раздел «Экспорт журналов» .

  • Экспорт в облачное хранилище, BigQuery или Pub/Sub для более длительного хранения или расширенного поиска.
  • Используйте агрегированные хранилища для управления журналами событий в масштабах всей организации.
  • Исключите журналы доступа к данным, чтобы управлять распределением журналов. См. раздел «Исключение журналов» .

Ценообразование и удержание клиентов

Cloud Logging не взимает плату за журналы аудита административной активности. Cloud Logging взимает плату за журналы аудита доступа к данным. См. цены на пакет услуг Google Cloud Operations Suite .

Сроки хранения журналов аудита Cloud Search:

  • Журналы активности администратора: 400 дней.
  • Журналы доступа к данным: 30 дней.

Текущие ограничения

Ограничения на ведение журнала аудита в Cloud Search:

  • Размер записи в журнале должен быть меньше 512 КБ. Если размер записи превышает 512 КБ, поле response удаляется. Если он по-прежнему превышает 512 КБ, поле request удаляется. Если он по-прежнему превышает 512 КБ, вся запись удаляется.
  • Содержимое ответов не регистрируется в логах для методов list() , get() и suggest() .
  • В журнал регистрируются только запросы от cloudsearch.google.com и приложений для поиска пользователей.
  • При вызовах функции search() в запросе регистрируются только Query , RequestOptions и DataSourceRestriction . В ответе проверяется только URL-адрес и метаданные.
  • Запросы к серверной части для экспорта данных не проходят аудит.