Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Audit Trails
  • Начало работы
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Справочник событий уровня конфигурации
  • Справочник событий уровня сервисов
  • История изменений
  • Обучающие курсы

В этой статье:

  • Перед началом работы
  • Зашифровать бакет
  • Создать трейл
  • Просмотр аудитных логов
  • Просмотр файлов аудитных логов
  • Экспорт аудитных логов в SIEM
  • Что дальше

Как начать работать с Audit Trails

Статья создана
Yandex Cloud
Улучшена
Обновлена 21 апреля 2025 г.
  • Перед началом работы
  • Зашифровать бакет
  • Создать трейл
  • Просмотр аудитных логов
    • Просмотр файлов аудитных логов
  • Экспорт аудитных логов в SIEM
  • Что дальше

Audit Trails собирает аудитные логи ресурсов Yandex Cloud и загружает их в бакет Object Storage, лог-группу Cloud Logging или поток данных Data Streams.

Управление аудитными логами внутри Audit Trails осуществляется через трейлы.

По этой инструкции вы создадите новый трейл, который будет загружать аудитные логи ресурсов вашей организации в бакет Object Storage.

Совет

Чтобы дополнительно защитить аудитные логи, зашифруйте бакет.

Перед началом работыПеред началом работы

  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь, если вы еще не зарегистрированы.

  2. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его.

  3. Убедитесь, что в вашем облаке существует бакет для хранения аудитного лога, при необходимости создайте новый бакет с ограниченным доступом.

  4. Назначьте роли сервисному аккаунту:

    CLI

    Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

    По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

    • Назначьте роль audit-trails.viewer на облако, со всех ресурсов которого будут собираться аудитные логи:

      yc resource-manager cloud add-access-binding \
        --role audit-trails.viewer \
        --id <идентификатор_облака> \
        --service-account-id <идентификатор_сервисного_аккаунта>
      

      Где:

      • --role — назначаемая роль;
      • --id — идентификатор облака, с которого будут собираться аудитные логи;
      • --service-account-id — идентификатор сервисного аккаунта.
    • Назначьте роль storage.uploader на каталог, в котором будет находиться трейл:

      yc resource-manager folder add-access-binding \
        --role storage.uploader \
        --id <идентификатор_каталога> \
        --service-account-id <идентификатор_сервисного_аккаунта>
      

      Где:

      • --role — назначаемая роль;
      • --id — идентификатор каталога, в котором будет находиться трейл;
      • --service-account-id — идентификатор сервисного аккаунта.
  5. Назначьте вашему аккаунту в Yandex Cloud роли:

    • iam.serviceAccounts.user на сервисный аккаунт;
    • audit-trails.editor на каталог, где будет находиться трейл;
    • audit-trails.viewer на организацию, с которой будут собираться аудитные логи;
    • kms.editor на каталог, в котором будет создан ключ шифрования для бакета;
    • storage.viewer на бакет или каталог.

    Примечание

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

Зашифровать бакетЗашифровать бакет

Чтобы хранить логи в зашифрованном виде:

  1. Создайте симметричный ключ шифрования в сервисе Yandex Key Management Service.

  2. Включите шифрование бакета, используя созданный ключ.

  3. Назначьте сервисному аккаунту, который вы создали ранее, роль kms.keys.encrypter на ключ, чтобы загружать логи в зашифрованный бакет:

    yc kms symmetric-key add-access-binding \
        --role kms.keys.encrypter \
        --id <идентификатор_ключа> \
        --service-account-id <идентификатор_сервисного_аккаунта>
    

    Где:

    • --role — назначаемая роль;
    • --id — идентификатор ключа шифрования;
    • --service-account-id — идентификатор сервисного аккаунта.

Создать трейлСоздать трейл

Примечание

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

Чтобы создать первый трейл в Audit Trails и запустить процесс управления аудитными логами уровня конфигурации:

Консоль управления
CLI
Terraform
API
  1. В консоли управления выберите каталог, в котором вы хотите разместить трейл.

  2. Выберите сервис Audit Trails.

  3. Нажмите кнопку Создать трейл.

  4. В поле Имя укажите имя создаваемого трейла.

  5. В поле Описание задайте описание трейла, необязательный параметр.

  6. В блоке Назначение задайте параметры объекта назначения:

    • Назначение — Object Storage.
    • Бакет — выберите бакет, в который будут загружаться аудитные логи.
    • Префикс объекта — необязательный параметр, участвует в полном имени файла аудитного лога.

    Примечание

    Используйте префикс, если вы храните аудитные логи и сторонние данные в одном и том же бакете. Не используйте одинаковый префикс для логов и других объектов в бакете, так как в этом случае логи и сторонние объекты могут перезаписать друг друга.

    • Ключ шифрования — если выбранный бакет зашифрован, укажите ключ шифрования.
  7. В блоке Сервисный аккаунт выберите сервисный аккаунт, от имени которого трейл будет загружать файлы аудитного лога в бакет.

  8. В блоке Сбор событий c уровня конфигурации задайте параметры сбора аудитных логов уровня конфигурации:

    • Сбор событий — выберите Включено.
    • Ресурс — выберите Организация.
    • Организация — не требует заполнения, содержит имя текущей организации.
    • Облако — оставьте значение по умолчанию Все.
  9. (опционально) В блоке Сбор событий с уровня сервисов задайте параметры сбора аудитных логов уровня сервисов:

    • Сбор событий — выберите Включено.

    • Выберите сервисы, для которых вы хотите собирать аудитные логи.

    • Для каждого выбранного сервиса укажите область сбора аудитных логов и тип фильтра событий:

      • Получать все — чтобы получать все события сервиса.
      • Выбранные — чтобы получать только выбранные события. Затем выберите события.
      • Исключить — чтобы получать все события, кроме выбранных. Затем выберите события.
  10. Нажмите кнопку Создать.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Посмотрите описание команды CLI для создания трейла:

    yc audit-trails trail create --help
    
  2. Выполните команду, чтобы создать трейл для сбора аудитных логов уровня конфигурации в организации:

    yc audit-trails trail create \
      --name <имя_трейла> \
      --description "<описание_трейла>" \
      --service-account-id <идентификатор_сервисного_аккаунта> \
      --destination-bucket <имя_бакета> \
      --destination-bucket-object-prefix <префикс_в_бакете> \
      --filter-from-organisation-id <идентификатор_организации> \
      --filter-some-cloud-ids <список_облаков_в_организации>
    

    Где:

    • --name — имя создаваемого трейла.
      Требования к формату имени:

      • длина — от 2 до 63 символов;
      • может содержать строчные буквы латинского алфавита, цифры и дефисы;
      • первый символ — буква, последний — не дефис.
    • --description — описание трейла, которое позволит отличать его от других трейлов. Например --description "My very first trail". Необязательный параметр.

    • --service-account-id — идентификатор сервисного аккаунта, от имени которого трейл будет загружать файлы аудитного лога в бакет.

      В зависимости от области сбора аудитных логов, сервисному аккаунту должна быть назначена роль audit-trails.viewer на организацию, облако или каталог, в которых трейл будет собирать аудитные логи.

    • --destination-bucket — имя бакета, в который будут загружаться аудитные логи.
      Чтобы получить список бакетов в каталоге по умолчанию, выполните команду CLI yc storage bucket list.

    • --destination-bucket-object-prefix — префикс, который будет присвоен объектам с аудитными логами в бакете. Необязательный параметр, участвует в полном имени файла аудитного лога.

      Примечание

      Используйте префикс, если вы храните аудитные логи и сторонние данные в одном и том же бакете. Не используйте одинаковый префикс для логов и других объектов в бакете, так как в этом случае логи и сторонние объекты могут перезаписать друг друга.

    • --filter-from-organisation-id — идентификатор организации, которой принадлежит создаваемый трейл и для ресурсов которой будут собираться аудитные логи.

      При использовании параметра --filter-from-organisation-id необходимо также задать идентификаторы облаков в параметре --filter-some-cloud-ids.

      Использование параметра --filter-from-organisation-id исключает использование параметра --filter-all-organisation-id.

    • --filter-some-cloud-ids — список идентификаторов облаков, для ресурсов которых трейл будет собирать аудитные логи. Используйте этот параметр только в том случае, если задан параметр --filter-from-organisation-id.

      Указанные в параметре облака должны принадлежать организации, заданной в параметре --filter-from-organisation-id.

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

    • --filter-all-organisation-id — идентификатор организации, которой принадлежит создаваемый трейл и для всех ресурсов во всех облаках которой будут собираться аудитные логи.

      Использование параметра --filter-all-organisation-id исключает использование параметра --filter-from-organisation-id.

    Результат:

    done (1s)
    id: cnpe0gldjeq0********
    folder_id: b1g9d2k0itu4********
    created_at: "2024-03-31T16:54:56.187Z"
    updated_at: "2024-03-31T16:54:56.187Z"
    name: sample-trail
    description: My very first trail
    destination:
      object_storage:
        bucket_id: at-destination-bucket
        object_prefix: sample-trail-audit-logs
    service_account_id: ajeee339l4m5********
    status: ACTIVE
    filter:
      path_filter:
        root:
          some_filter:
            resource:
              id: bpfaidqca8vd********
              type: organization-manager.organization
            filters:
              - any_filter:
                  resource:
                    id: b1glti4eser3********
                    type: resource-manager.cloud
              - any_filter:
                  resource:
                    id: b1gssd27h7ra********
                    type: resource-manager.cloud
      event_filter: {}
    cloud_id: b1glti4eser3********
    

    Подробнее о команде yc audit-trails trail create читайте в справочнике CLI.

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Terraform распространяется под лицензией Business Source License, а провайдер Yandex Cloud для Terraform — под лицензией MPL-2.0.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

  1. Опишите в конфигурационном файле параметры трейла, который будет собирать аудитные события ресурсов организации:

    resource "yandex_audit_trails_trail" "basic_trail" {
      name = "<имя_трейла>"
      folder_id   = "<идентификатор_каталога>"
      description = "<описание_трейла>"
      
      labels = {
        key = "value"
      }
      
      service_account_id = "<идентификатор_сервисного_аккаунта>"
      
      storage_destination {
        bucket_name   = "<имя_бакета>"
        object_prefix = "<префикс_в_бакете>"
      }
      
      filter {
        path_filter {
          some_filter {
            resource_id   = "<идентификатор_организации>"
            resource_type = "<тип_родительского_ресурса>"
            any_filters {
                resource_id   = "<идентификатор_облака_1>"
                resource_type = "<тип_дочернего_ресурса>"
            }
            any_filters {
                resource_id   = "<идентификатор_облака_2>"
                resource_type = "<тип_дочернего_ресурса>"
            }
          }
        }
        event_filters {
          service = "<идентификатор_сервиса_1>"
          categories {
            plane = "DATA_PLANE"
            type  = "<тип_действия>"
          }
          path_filter {
            any_filter {
              resource_id = "<идентификатор_организации>"
              resource_type = "<тип_ресурса>"
            }
          }
        }
        event_filters {
          service = "<идентификатор_сервиса_2>"
          categories {
            plane = "DATA_PLANE"
            type  = "<тип_действия>"
          }
          path_filter {
            any_filter {
              resource_id = "<идентификатор_организации>"
              resource_type = "<тип_ресурса>"
            }
          }
        }
      }
    }
    

    Где:

    • name — имя создаваемого трейла. Требования к формату имени:

      • длина — от 2 до 63 символов;
      • может содержать строчные буквы латинского алфавита, цифры и дефисы;
      • первый символ — буква, последний — не дефис.
    • folder_id — идентификатор каталога, в котором создается трейл.

    • description — описание трейла, которое позволит отличать его от других трейлов. Например My very first trail. Необязательный параметр.

    • labels — список меток в формате ключ=значение. Необязательный параметр.

    • service_account_id — идентификатор сервисного аккаунта, от имени которого трейл будет загружать файлы аудитного лога в бакет.

      В зависимости от области сбора аудитных логов, сервисному аккаунту должна быть назначена роль audit-trails.viewer на организацию, облако или каталог, в которых трейл будет собирать аудитные логи.

    • storage_destination — структура, описывающая целевой бакет.
      • bucket_name — имя бакета, в который будут загружаться аудитные логи.
        Чтобы получить список бакетов в каталоге по умолчанию, выполните команду CLI yc storage bucket list.

      • object_prefix — префикс, который будет присвоен объектам с аудитными логами в бакете. Необязательный параметр, участвует в полном имени файла аудитного лога.

        Примечание

        Используйте префикс, если вы храните аудитные логи и сторонние данные в одном и том же бакете. Не используйте одинаковый префикс для логов и других объектов в бакете, так как в этом случае логи и сторонние объекты могут перезаписать друг друга.

    • filtering_policy — настройки политики фильтрации, которая определяет, какие события будут собираться и попадут в аудитные логи. Политика состоит из набора фильтров, которые относятся к разным уровням событий. Содержит объекты management_events_filter и data_events_filters.

      • management_events_filter — фильтр событий уровня конфигурации.

      • resource_scopes — область сбора логов. Можно комбинировать в одном параметре resource_scopes несколько областей, которые принадлежат одной организации. Например, собирать логи из одного облака целиком, а из другого — только из определенных каталогов. Права сервисного аккаунта должны позволять сбор логов из указанных областей.

        • resource_id — идентификатор ресурса, для ресурсов которого будут собираться аудитные логи. В зависимости от области сбора аудитных логов укажите в этом параметре идентификатор организации или идентификатор облака.

        • resource_type — тип области согласно указанному идентификатору:

          • organization-manager.organization — организация;
          • resource-manager.cloud — облако;
          • resource-manager.folder — каталог.
      • data_events_filters — фильтры событий уровня сервисов. Можно настроить несколько фильтров такого типа — по одному для каждого сервиса. Фильтр для одного сервиса имеет следующую структуру:

        • service — имя сервиса, в котором трейл будет обрабатывать события. Его можно получить в справочнике событий уровня сервисов).
        • resource_scopes — места, откуда собирать события уровня сервисов. Этот параметр настраивается аналогично фильтру событий уровня конфигурации.
        • included_events — собирать только указанные события. Необязательный параметр. Если не указать, то будут собираться все события. Вместо included_events можно указать excluded_events — собирать все события, кроме указанных. Эти параметры — взаимоисключающие.
          Полный перечень событий можно получить в справочнике событий уровня сервисов.

    Более подробную информацию о параметрах ресурса yandex_audit_trails_trail в Terraform см. в документации провайдера.

  2. Создайте ресурсы:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

    2. Проверьте корректность конфигурационного файла с помощью команды:

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

      В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

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

    yc audit-trails trail get <имя_трейла>
    

Воспользуйтесь методом REST API create для ресурса Trail или вызовом gRPC API TrailService/Create.

Просмотр аудитных логовПросмотр аудитных логов

При загрузке аудитных логов в бакет Audit Trails формирует файлы аудитных логов приблизительно раз в 5 минут. Трейл запишет все события, которые произошли за это время с ресурсами организации, в один или несколько файлов. Если никакие события за этот период не произойдут, файлы не сформируются.

Удостоверьтесь, что файл аудитного лога существует в бакете, указанном при создании трейла.

Просмотр файлов аудитных логовПросмотр файлов аудитных логов

Audit Trails создает файлы логов в формате JSON.

Получите доступ к содержимому файла аудитного лога одним из способов:

  • Скачайте объект.
  • Получите публичную ссылку на объект.
  • Смонтируйте бакет через FUSE: s3fs или goofys.

Экспорт аудитных логов в SIEMЭкспорт аудитных логов в SIEM

Вы можете экспортировать файлы аудитных логов в ваше SIEM-решение.

Что дальшеЧто дальше

  • Узнайте больше о сервисе.
  • Узнайте о типах аудитных логов.

Была ли статья полезна?

Следующая
Все инструкции
Проект Яндекса
© 2025 ООО «Яндекс.Облако»