put-key-policy
Описание
Прикрепляет политику ключа к указанному ключу KMS.
Дополнительную информацию о политиках ключей см. в разделе «Политики ключей» в Руководстве разработчика службы управления ключами. Справочную информацию по написанию и форматированию документа политики JSON см. в разделе «Справочник по политикам JSON IAM» в *Руководстве пользователя по управлению идентификацией и доступом*. Примеры добавления политики ключа на нескольких языках программирования см. в разделе «Установка политики ключа» в Руководстве разработчика службы управления ключами.
Использование между аккаунтами: Нет. Вы не можете выполнить эту операцию с ключом KMS в другом аккаунте Amazon Web Services.
Требуемые разрешения: kms:PutKeyPolicy (политика ключа)
Связанные операции: GetKeyPolicy
Эвентуальная согласованность: API KMS использует модель эвентуальной согласованности. Дополнительную информацию см. в разделе «Эвентуальная согласованность KMS».
См. также: Документация API AWS
Синтаксис
put-key-policy
--key-id <value>
[--policy-name <value>]
--policy <value>
[--bypass-policy-lockout-safety-check | --no-bypass-policy-lockout-safety-check]
[--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]
Параметры
--key-id (строка)
Устанавливает политику ключа для указанного ключа KMS.
Укажите идентификатор ключа или ARN ключа KMS.
Например:
- Идентификатор ключа:
1234abcd-12ab-34cd-56ef-1234567890ab - ARN ключа:
arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Чтобы получить идентификатор ключа и ARN ключа KMS, используйте ListKeys или DescribeKey .
--policy-name (строка)
default. Единственное допустимое значение — default.--policy (строка)
Политика ключа для прикрепления к ключу KMS.
Политика ключа должна соответствовать следующим критериям:
- Политика ключа должна разрешать вызывающему принципу выполнить последующий запрос
PutKeyPolicyна ключ KMS. Это снижает риск того, что ключ KMS станет неподконтрольным. Дополнительную информацию см. в разделе «Политика ключа по умолчанию» в Руководстве разработчика службы управления ключами. (Чтобы исключить это условие, установитеBypassPolicyLockoutSafetyCheckв значение true.) - Каждое утверждение в политике ключа должно содержать одного или нескольких принципов. Принципы в политике ключа должны существовать и быть видимыми для KMS. При создании нового принципа Amazon Web Services может потребоваться выдержка перед добавлением нового принципа в политику ключа, так как новый принцип может не быть немедленно видимым для KMS. Дополнительную информацию см. в разделе «Изменения, которые я вношу, не всегда сразу видны» в Руководстве пользователя по управлению идентификацией и доступом Amazon Web Services.
Документ политики ключа может содержать только следующие символы:
- Печатные символы ASCII от пробела (
\u0020) до конца диапазона символов ASCII. - Печатные символы в наборах символов Basic Latin и Latin-1 Supplement (до
\u00FF). - Специальные символы табуляции (
\u0009), перевода строки (\u000A) и возврата каретки (\u000D).
Дополнительную информацию о политиках ключей см. в разделе «Политики ключей в KMS» в Руководстве разработчика службы управления ключами. Справочную информацию по написанию и форматированию документа политики JSON см. в разделе «Справочник по политикам JSON IAM» в *Руководстве пользователя по управлению идентификацией и доступом*.
--bypass-policy-lockout-safety-check | --no-bypass-policy-lockout-safety-check (логическое)
Пропускает («обходит») проверку блокировки политики ключа. Значение по умолчанию — false.
Предупреждение
Установка этого значения в true увеличивает риск того, что ключ KMS станет неподконтрольным. Не устанавливайте это значение в true бездумно.
Дополнительную информацию см. в разделе «Политика ключа по умолчанию» в Руководстве разработчика службы управления ключами.
Используйте этот параметр только в том случае, если вы намерены предотвратить выполнение принципом, который делает запрос, последующего запроса PutKeyPolicy на ключ KMS.
--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 для вывода.
--cli-auto-prompt (логическое)
Автоматически запрашивать параметры входных данных CLI.
--no-cli-auto-prompt (логическое)
Отключить автоматический запрос параметров входных данных CLI.
Примеры
Примечание
Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. См. руководство по началу работы в Руководстве пользователя AWS CLI для получения дополнительной информации.
Если не указано иное, во всех примерах используются правила цитирования Unix-подобных систем. Эти примеры потребуется адаптировать к правилам цитирования вашей консоли. См. Использование кавычек со строками в Руководстве пользователя AWS CLI.
Изменение политики ключа для ключа KMS
В следующем примере изменяется политика ключа для управляемого пользователем ключа.
Начните с создания политики ключа и сохраните ее в локальном файле JSON. В этом примере файл — key_policy.json. Вы также можете указать политику ключа как строковое значение параметра policy.
Первое утверждение в этой политике ключа предоставляет аккаунту AWS разрешение на использование политик IAM для управления доступом к ключу KMS. Второе утверждение предоставляет пользователю test-user разрешение на выполнение команд describe-key и list-keys для ключа KMS.
Содержимое key_policy.json:
{
"Version" : "2012-10-17",
"Id" : "key-default-1",
"Statement" : [
{
"Sid" : "Enable IAM User Permissions",
"Effect" : "Allow",
"Principal" : {
"AWS" : "arn:aws:iam::111122223333:root"
},
"Action" : "kms:*",
"Resource" : "*"
},
{
"Sid" : "Allow Use of Key",
"Effect" : "Allow",
"Principal" : {
"AWS" : "arn:aws:iam::111122223333:user/test-user"
},
"Action" : [
"kms:DescribeKey",
"kms:ListKeys"
],
"Resource" : "*"
}
]
}
Для идентификации ключа KMS в этом примере используется идентификатор ключа, но можно также использовать ARN ключа. Для указания политики ключа команда использует параметр policy. Для указания того, что политика находится в файле, используется обязательная префикс file://. Этот префикс требуется для идентификации файлов на всех поддерживаемых операционных системах. Наконец, команда использует параметр policy-name со значением default. Если имя политики не указано, значение по умолчанию — default. Единственное допустимое значение — default.
aws kms put-key-policy \
--policy-name default \
--key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
--policy file://key_policy.json
Эта команда не выводит ничего на экран. Чтобы проверить, что команда была выполнена успешно, используйте команду get-key-policy. Следующий пример команды получает политику ключа для того же ключа KMS. Параметр output со значением text возвращает текстовый формат, который легко читать.
aws kms get-key-policy \
--policy-name default \
--key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
--output text
Вывод:
{
"Version" : "2012-10-17",
"Id" : "key-default-1",
"Statement" : [
{
"Sid" : "Enable IAM User Permissions",
"Effect" : "Allow",
"Principal" : {
"AWS" : "arn:aws:iam::111122223333:root"
},
"Action" : "kms:*",
"Resource" : "*"
},
{
"Sid" : "Allow Use of Key",
"Effect" : "Allow",
"Principal" : {
"AWS" : "arn:aws:iam::111122223333:user/test-user"
},
"Action" : [ "kms:Describe", "kms:List" ],
"Resource" : "*"
}
]
}
Дополнительную информацию см. в разделе «Изменение политики ключа» в Руководстве разработчика службы управления ключами AWS.
Вывод
Нет
© Copyright 2025, Amazon Web Services. Created using Sphinx.