put-account-policy
Описание
Создаёт политику защиты данных на уровне аккаунта, политику фильтрации подписок или политику индексации полей, которая применяется ко всем группам логов или подмножеству групп логов в аккаунте.
Для использования этой операции необходимо иметь соответствующие разрешения в зависимости от типа создаваемой политики.
- Для создания политики защиты данных необходимо иметь разрешения
logs:PutDataProtectionPolicyиlogs:PutAccountPolicy. - Для создания политики фильтрации подписок необходимо иметь разрешения
logs:PutSubscriptionFilterиlogs:PutccountPolicy. - Для создания политики преобразования необходимо иметь разрешения
logs:PutTransformerиlogs:PutAccountPolicy. - Для создания политики индексации полей необходимо иметь разрешения
logs:PutIndexPolicyиlogs:PutAccountPolicy.
Политика защиты данных может помочь защитить конфиденциальные данные, которые поступают в ваши группы логов, выполняя аудит и маскирование конфиденциальных данных логов. Каждый аккаунт может иметь только одну политику защиты данных на уровне аккаунта.
Предупреждение
Конфиденциальные данные обнаруживаются и маскируются при поступлении в группу логов. Когда вы устанавливаете политику защиты данных, события логов, поступившие в группы логов до этого момента, не маскируются.Если вы используете PutAccountPolicy для создания политики защиты данных для всего аккаунта, она применяется как к существующим группам логов, так и ко всем группам логов, которые будут созданы позже в этом аккаунте. Политика на уровне аккаунта применяется к существующим группам логов с конечной согласованностью. Может потребоваться до 5 минут, прежде чем конфиденциальные данные в существующих группах логов начнут маскироваться.
По умолчанию, когда пользователь просматривает событие лога, содержащее замаскированные данные, конфиденциальные данные заменяются звёздочками. Пользователь, обладающий разрешением logs:Unmask, может использовать операцию GetLogEvents или FilterLogEvents с параметром unmask, установленным в значение true, чтобы просмотреть незамаскированные события логов. Пользователи с разрешением logs:Unmask также могут просматривать незамаскированные данные в консоли CloudWatch Logs, выполняя запрос CloudWatch Logs Insights с командой запроса unmask.
Дополнительную информацию, включая список типов данных, которые можно аудитировать и маскировать, см. в разделе Protect sensitive log data with masking.
Для использования операции PutAccountPolicy для политики защиты данных необходимо иметь разрешения logs:PutDataProtectionPolicy и logs:PutAccountPolicy.
Операция PutAccountPolicy применяется ко всем группам логов в аккаунте. Вы можете использовать PutDataProtectionPolicy для создания политики защиты данных, которая применяется только к одной группе логов. Если у группы логов есть своя собственная политика защиты данных, и аккаунт также имеет политику защиты данных на уровне аккаунта, то обе политики суммируются. Любой конфиденциальный термин, указанный в любой из политик, маскируется.
Политика фильтрации подписок настраивает потоковую передачу событий логов из CloudWatch Logs в другие службы Amazon Web Services. Политики фильтрации подписок на уровне аккаунта применяются как к существующим группам логов, так и к группам логов, созданным позже в этом аккаунте. Поддерживаемые пункты назначения — Kinesis Data Streams, Firehose и Lambda. Когда события логов отправляются в принимающую службу, они кодируются в Base64 и сжимаются в формате GZIP.
Для фильтров подписок поддерживаются следующие пункты назначения:
- Поток данных Kinesis Data Streams в том же аккаунте, что и политика подписки, для доставки в пределах одного аккаунта.
- Поток данных Firehose в том же аккаунте, что и политика подписки, для доставки в пределах одного аккаунта.
- Функция Lambda в том же аккаунте, что и политика подписки, для доставки в пределах одного аккаунта.
- Логический пункт назначения в другом аккаунте, созданный с помощью PutDestination, для доставки между аккаунтами. Kinesis Data Streams и Firehose поддерживаются в качестве логических пунктов назначения.
Каждый аккаунт может иметь одну политику фильтрации подписок на уровне аккаунта на регион. Если вы обновляете существующий фильтр, необходимо указать правильное имя в PolicyName . Для выполнения операции PutAccountPolicy фильтрации подписки для любого пункта назначения, кроме функции Lambda, необходимо также иметь разрешение iam:PassRole.
Создаёт или обновляет политику преобразования логов для вашего аккаунта. Вы используете преобразователи логов для преобразования событий логов в другой формат, что упрощает обработку и анализ. Вы также можете преобразовывать логи из различных источников в стандартные форматы, содержащие релевантную информацию, специфичную для источника. После создания преобразователя CloudWatch Logs выполняет это преобразование в момент поступления логов. Затем вы можете ссылаться на преобразованные версии логов во время операций, таких как запросы с помощью CloudWatch Logs Insights или создание фильтров метрик или фильтров подписок.
Вы также можете использовать преобразователь для копирования метаданных из ключей метаданных в сами события логов. Эти метаданные могут включать имя группы логов, имя потока логов, идентификатор аккаунта и регион.
Преобразователь для группы логов представляет собой набор процессоров, где каждый процессор применяет один тип преобразования к событиям логов, поступающим в эту группу логов. Дополнительную информацию о доступных процессорах, которые можно использовать в преобразователе, см. в разделе Processors that you can use.
Наличие событий логов в стандартном формате обеспечивает видимость во всех ваших приложениях для анализа, отчётности и оповещений логов. CloudWatch Logs предоставляет преобразование для распространённых типов логов с готовыми шаблонами преобразования для основных источников логов Amazon Web Services, таких как VPC flow logs, Lambda и Amazon RDS. Вы можете использовать готовые шаблоны преобразования или создавать собственные политики преобразования.
Вы можете создавать преобразователи только для групп логов в стандартном классе логов.
Вы можете иметь одну политику преобразования на уровне аккаунта, которая применяется ко всем группам логов в аккаунте. Или вы можете создать до 20 политик преобразования на уровне аккаунта, которые каждая ограничена подмножеством групп логов с параметром selectionCriteria. Если у вас есть несколько политик преобразования на уровне аккаунта с критериями выбора, то никакие две из них не могут использовать одинаковые или перекрывающиеся префиксы имён групп логов. Например, если у вас есть одна политика, отфильтрованная для групп логов, начинающихся с my-log, у вас не может быть другой политики индексации полей, отфильтрованной для my-logpprod или my-logging.
Вы также можете настроить преобразователь на уровне группы логов. Дополнительную информацию см. в разделе PutTransformer. Если создан преобразователь на уровне группы логов с помощью PutTransformer и есть преобразователь на уровне аккаунта, который мог бы применяться к той же группе логов, то группа логов использует только преобразователь на уровне группы логов. Он игнорирует преобразователь на уровне аккаунта.
Вы можете использовать политики индексации полей для создания индексов по полям, найденным в событиях логов в группе логов. Создание индексов полей может помочь снизить объём сканирования для запросов CloudWatch Logs Insights, которые ссылаются на эти поля, потому что эти запросы пытаются пропустить обработку событий логов, которые, как известно, не соответствуют индексированному полю. Хорошими полями для индексации являются поля, которые вы часто используете для запросов, и поля или значения, которые соответствуют только небольшой части всех событий логов. Примеры индексов включают идентификатор запроса, идентификатор сессии, идентификаторы пользователей или идентификаторы экземпляров. Дополнительную информацию см. в разделе Create field indexes to improve query performance and reduce costs.
Для поиска полей, которые находятся в событиях вашей группы логов, используйте операцию GetLogGroupFields.
Например, предположим, что вы создали индекс для поля requestId. Тогда любой запрос CloudWatch Logs Insights в этой группе логов, который включает поле requestId = *value* `` or ``requestId in [*value* , *value* , ...], будет пытаться обработать только события логов, где индексированное поле соответствует указанному значению.
Сопоставления событий логов с именами индексированных полей чувствительны к регистру. Например, индексированное поле RequestId не будет соответствовать событию лога, содержащему requestId.
Вы можете иметь одну политику индексации полей на уровне аккаунта, которая применяется ко всем группам логов в аккаунте. Или вы можете создать до 20 политик индексации полей на уровне аккаунта, которые каждая ограничена подмножеством групп логов с параметром selectionCriteria. Если у вас есть несколько политик индексации на уровне аккаунта с критериями выбора, то никакие две из них не могут использовать одинаковые или перекрывающиеся префиксы имён групп логов. Например, если у вас есть одна политика, отфильтрованная для групп логов, начинающихся с my-log, у вас не может быть другой политики индексации полей, отфильтрованной для my-logpprod или my-logging.
Если вы создаёте политику индексации полей на уровне аккаунта в аккаунте мониторинга в рамках кросс-аккаунтного наблюдения, политика применяется только к аккаунту мониторинга, а не к любым исходным аккаунтам.
Если вы хотите создать политику индексации полей для одной группы логов, вы можете использовать PutIndexPolicy вместо PutAccountPolicy. В этом случае эта группа логов будет использовать только политику на уровне группы логов и игнорировать политику на уровне аккаунта, которую вы создаёте с помощью PutAccountPolicy.
См. также: AWS API Documentation
Резюме
put-account-policy
--policy-name <value>
--policy-document <value>
--policy-type <value>
[--scope <value>]
[--selection-criteria <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--policy-name (строка)
--policy-document (строка)
Укажите политику в формате JSON.
Политика защиты данных должна включать два блока JSON:
- Первый блок должен содержать массив
DataIdentiferи свойствоOperationс действиемAudit. МассивDataIdentiferперечисляет типы конфиденциальных данных, которые вы хотите замаскировать. Для получения дополнительной информации об доступных вариантах, обратитесь к разделу Типы данных, которые можно замаскировать. СвойствоOperationс действиемAuditнеобходимо для поиска терминов конфиденциальных данных. Это действиеAuditдолжно содержать объектFindingsDestination. Вы можете (необязательно) использовать этот объектFindingsDestination, чтобы указать один или несколько пунктов назначения для отправки результатов аудита. Если вы укажете такие пункты назначения, как группы журналов, потоки Firehose и ведра S3, они должны уже существовать. - Второй блок должен содержать массив
DataIdentiferи свойствоOperationс действиемDeidentify. МассивDataIdentiferдолжен точно соответствовать массивуDataIdentiferв первом блоке политики. СвойствоOperationс действиемDeidentifyфактически маскирует данные и должно содержать объект"MaskConfig": {}. Объект"MaskConfig": {}должен быть пустым.
Пример политики защиты данных приведен в разделе Примеры на этой странице.
Предупреждение
Содержимое двух массивовDataIdentifer должно точно совпадать.Помимо двух блоков JSON, в policyDocument могут также быть включены поля Name, Description и Version. Поле Name отличается от параметра policyName операции и используется как измерение при отчете метрик результатов аудита CloudWatch Logs в CloudWatch.
JSON, указанный в policyDocument, может иметь длину до 30 720 символов.
Политика фильтрации подписки может включать следующие атрибуты в блоке JSON:
-
DestinationArn ARN пункта назначения для доставки событий журналов. Поддерживаемые пункты назначения:
- Поток Kinesis Data Streams в том же аккаунте, что и политика подписки, для доставки в рамках одного аккаунта.
- Поток Firehose в том же аккаунте, что и политика подписки, для доставки в рамках одного аккаунта.
- Функция Lambda в том же аккаунте, что и политика подписки, для доставки в рамках одного аккаунта.
- Логическое место назначения в другом аккаунте, созданное с помощью PutDestination, для межаккаунтовой доставки. Kinesis Data Streams и Firehose поддерживаются в качестве логических мест назначения.
- RoleArn ARN IAM роли, которая предоставляет CloudWatch Logs права на доставку обработанных событий журналов в целевой поток. Вам не нужно предоставлять ARN, когда вы работаете с логическим местом назначения для межаккаунтовой доставки.
- FilterPattern Шаблон фильтра для подписки на отфильтрованный поток событий журналов.
-
Distribution Метод распределения данных журналов в место назначения. По умолчанию данные журналов группируются по потоку журналов, но группировка может быть установлена на
Randomдля более равномерного распределения. Это свойство применимо только в случае, если место назначения является потоком Kinesis Data Streams.
Политика трансформации должна включать один блок JSON с массивом процессоров и их конфигураций. Дополнительная информация о доступных процессорах находится в разделе Обработчики, которые можно использовать.
Политика фильтрации индекса поля может включать атрибут в блоке JSON:
- Fields Массив индексов полей для создания.
Она должна содержать как минимум один индекс поля.
Ниже приведен пример документа политики индексов, создающего два индекса, RequestId и TransactionId.
"policyDocument": "{ \"Fields\": [ \"RequestId\", \"TransactionId\" ] }"--policy-type (строка)
Тип создаваемой или обновляемой политики.
Возможные значения:
DATA_PROTECTION_POLICYSUBSCRIPTION_FILTER_POLICYFIELD_INDEX_POLICYTRANSFORMER_POLICY
--scope (строка)
В настоящее время единственное допустимое значение для этого параметра — ALL, которое указывает, что политика защиты данных применяется ко всем группам журналов в аккаунте. Если вы опустите этот параметр, используется значение по умолчанию ALL.
Возможные значения:
ALL
--selection-criteria (строка)
Используйте этот параметр, чтобы применить новую политику к подмножеству групп журналов в аккаунте.
Указание selectionCriteria допустимо только при указании SUBSCRIPTION_FILTER_POLICY, FIELD_INDEX_POLICY или TRANSFORMER_POLICY для policyType.
Если policyType равно SUBSCRIPTION_FILTER_POLICY, единственный поддерживаемый фильтр selectionCriteria — LogGroupName NOT IN []
Если policyType равно FIELD_INDEX_POLICY или TRANSFORMER_POLICY, единственный поддерживаемый фильтр selectionCriteria — LogGroupNamePrefix
Строка selectionCriteria может иметь длину до 25 КБ, определяемую с использованием UTF-8 байтов.
Использование параметра selectionCriteria с SUBSCRIPTION_FILTER_POLICY полезно для предотвращения бесконечных циклов. Дополнительная информация приведена в разделе Предотвращение рекурсии журналов.
--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON строки. Строка JSON следует формату, заданному в --generate-cli-skeleton. Если на командной строке предоставляются другие аргументы, эти значения будут переопределять значения, предоставленные JSON. Невозможно передавать произвольные двоичные значения с помощью значения, предоставленного JSON, так как строка будет воспринята буквально. Это может не быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если предоставлено значение без значения или значение input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, он выведет пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, он проверяет входные данные команды и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (логическое)
Включить отладочную запись в журналы.
--endpoint-url (строка)
Переопределить значение URL по умолчанию команды на заданный URL.
--no-verify-ssl (логическое)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять сертификаты SSL. Этот параметр переопределяет поведение проверки сертификатов SSL по умолчанию.
--no-paginate (логическое)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команд.
- json
- text
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Используемый регион. Переопределяет настройки конфигурации/среды.
--version (строка)
Показать версию этого инструмента.
--color (строка)
Включить/отключить цветной вывод.
- вкл
- выкл
- авто
--no-sign-request (логическое)
Не подписывать запросы. Учетные данные не будут загружаться, если этот аргумент предоставлен.
--ca-bundle (строка)
Обрабатываемый пакет сертификатов CA при проверке SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как закодированная строка base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку, fileb:// всегда будет обрабатываться как двоичный, и будет использоваться содержимое файла непосредственно, независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое)
Отключить кли-пагинатор для вывода.
--cli-auto-prompt (логическое)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (логическое)
Отключить автоматическое запрошенние параметров ввода CLI.
Вывод
accountPolicy -> (структура)
Политика аккаунта, которую вы создали.
policyName -> (строка)
policyDocument -> (строка)
Документ политики для данного аккаунта.
JSON, указанный в policyDocument, может иметь длину до 30 720 символов.
lastUpdatedTime -> (целое число)
policyType -> (строка)
scope -> (строка)
selectionCriteria -> (строка)
accountId -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.