[ aws . secretsmanager ]
put-secret-value
Описание
Создаёт новую версию с новым зашифрованным значением секрета и прикрепляет её к секрету. Версия может содержать новое SecretString значение или новое SecretBinary значение.
Рекомендуется избегать вызова PutSecretValue с частотой более одного раза в 10 минут. При обновлении значения секрета Secrets Manager создаёт новую версию секрета. Secrets Manager удаляет устаревшие версии, когда их более 100, но не удаляет версии, созданные менее 24 часов назад. Если вы вызываете PutSecretValue чаще, чем один раз в 10 минут, вы создаёте больше версий, чем Secrets Manager удаляет, и достигнете квоты на версии секретов.
Вы можете указать метки этапирования, которые нужно прикрепить к новой версии в VersionStages. Если вы не включаете VersionStages, то Secrets Manager автоматически перемещает метку этапирования AWSCURRENT в эту версию. Если данная операция создаёт первую версию для секрета, то Secrets Manager автоматически прикрепляет метку этапирования AWSCURRENT к ней. Если эта операция перемещает метку этапирования AWSCURRENT из другой версии в эту версию, то Secrets Manager также автоматически перемещает метку этапирования AWSPREVIOUS в версию, из которой AWSCURRENT была удалена.
Данная операция идемпотентна. Если вы вызываете эту операцию с ClientRequestToken, соответствующей идентификатору версии существующей версии, и указываете те же данные секрета, операция выполняется успешно, но ничего не делает. Однако, если данные секрета отличаются, операция завершается с ошибкой, поскольку нельзя изменить существующую версию; можно только создать новые.
Secrets Manager генерирует запись журнала CloudTrail при вызове этого действия. Не включайте конфиденциальную информацию в параметры запроса, за исключением SecretBinary , SecretString или RotationToken, так как она может быть записана в журнал. Для получения дополнительной информации см. Запись событий Secrets Manager с помощью CloudTrail.
secretsmanager:PutSecretValue. Для получения дополнительной информации см. Действия политики IAM для Secrets Manager и Управление проверкой подлинности и доступом в Secrets Manager.Предупреждение
При вводе команд в командной оболочке существует риск доступа к истории команд или к вашим параметрам команд утилитами. Это проблема, если команда содержит значение секрета. Узнайте, как смягчить риски использования инструментов командной строки для хранения секретов Secrets Manager.См. также: Документация по API AWS
Синтаксис
put-secret-value
--secret-id <value>
[--client-request-token <value>]
[--secret-binary <value>]
[--secret-string <value>]
[--version-stages <value>]
[--rotation-token <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]
Параметры
--secret-id (строка)
ARN или имя секрета, к которому необходимо добавить новую версию.
Для ARN рекомендуется указать полный ARN, а не частичный. См. Нахождение секрета по частичному ARN.
Если секрет ещё не существует, используйте CreateSecret вместо этого.
--client-request-token (строка)
Уникальный идентификатор новой версии секрета.
Примечание
Если вы используете Amazon Web Services CLI или один из Amazon Web Services SDK, то можете оставить этот параметр пустым. CLI или SDK сгенерирует случайный UUID для вас и включит его в качестве значения этого параметра в запросе.Если вы генерируете прямой HTTP-запрос к конечной точке сервиса Secrets Manager, то должны сгенерировать ClientRequestToken и включить его в запрос.
Это значение помогает обеспечить идемпотентность. Secrets Manager использует это значение, чтобы предотвратить случайное создание дублирующих версий в случае сбоев и повторов во время вращения. Рекомендуется генерировать значение типа UUID для обеспечения уникальности ваших версий в указанном секрете.
- Если значение
ClientRequestTokenещё не ассоциировано с версией секрета, то создаётся новая версия секрета. - Если версия с этим значением уже существует, и значения
SecretStringилиSecretBinaryэтой версии совпадают со значениями в запросе, то запрос игнорируется. Операция идемпотентна. - Если версия с этим значением уже существует, и значения версии
SecretStringиSecretBinaryотличаются от значений в запросе, то запрос завершается с ошибкой, поскольку нельзя изменить версию секрета. Можно только создавать новые версии для хранения новых значений секрета.
Это значение становится VersionId новой версии.
--secret-binary (байтовый массив)
Двоичные данные для шифрования и хранения в новой версии секрета. Для использования этого параметра в инструментах командной строки рекомендуется хранить двоичные данные в файле, а затем передавать содержимое файла в качестве параметра.
Вы должны включить SecretBinary или SecretString , но не оба.
Вы не можете получить доступ к этому значению из консоли Secrets Manager.
Конфиденциальные данные: Это поле содержит конфиденциальную информацию, поэтому служба не включает его в записи журналов CloudTrail. Если вы создаёте свои собственные записи журналов, вы также должны избегать записи информации в этом поле.
--secret-string (строка)
Текст для шифрования и хранения в новой версии секрета.
Вы должны включить SecretBinary или SecretString , но не оба.
Рекомендуется создавать строку секрета в виде пар ключ/значение JSON, как показано в примере.
Конфиденциальные данные: Это поле содержит конфиденциальную информацию, поэтому служба не включает его в записи журналов CloudTrail. Если вы создаёте свои собственные записи журналов, вы также должны избегать записи информации в этом поле.
--version-stages (список)
Список меток этапирования, которые необходимо прикрепить к этой версии секрета. Secrets Manager использует метки этапирования для отслеживания версий секрета в процессе вращения.
Если вы укажете метку этапирования, которая уже ассоциирована с другой версией того же секрета, то Secrets Manager удалит метку из другой версии и прикрепит её к этой версии. Если вы укажете AWSCURRENT, и она уже прикреплена к другой версии, то Secrets Manager также переместит метку этапирования AWSPREVIOUS в версию, из которой AWSCURRENT была удалена.
Если вы не включаете VersionStages, то Secrets Manager автоматически перемещает метку этапирования AWSCURRENT в эту версию.
(строка)
Синтаксис:
"string" "string" ...
--rotation-token (строка)
Уникальный идентификатор, указывающий источник запроса. При вращении секрета в одной учётной записи с помощью функции вращения Lambda в другой учётной записи, и функция вращения Lambda принимает роль IAM для вызова Secrets Manager, Secrets Manager проверяет подлинность с помощью токена вращения. Для получения дополнительной информации см. Как работает вращение.
Конфиденциальные данные: Это поле содержит конфиденциальную информацию, поэтому служба не включает его в записи журналов CloudTrail. Если вы создаёте свои собственные записи журналов, вы также должны избегать записи информации в этом поле.
--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 (boolean)
Включить отладку регистрации.
--endpoint-url (string)
Переопределить URL по умолчанию команды заданным URL.
--no-verify-ssl (boolean)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.
--no-paginate (boolean)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (string)
Стиль форматирования вывода команды.
- json
- text
- table
- yaml
- yaml-stream
--query (string)
Запрос JMESPath для фильтрации данных ответа.
--profile (string)
Использовать конкретный профиль из файла учетных данных.
--region (string)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (string)
Отобразить версию этого инструмента.
--color (string)
Включить/выключить цветной вывод.
- on
- off
- auto
--no-sign-request (boolean)
Не подписывать запросы. Учетные данные не будут загружаться, если этот аргумент предоставлен.
--ca-bundle (string)
Файл-сборка сертификатов CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (int)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться без блокировки и без таймаута. Значение по умолчанию — 60 секунд.
--cli-connect-timeout (int)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет выполняться без блокировки и без таймаута. Значение по умолчанию — 60 секунд.
--cli-binary-format (string)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI версии 1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, которое соответствует двоичному блоку, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (boolean)
Отключить паджинг для вывода.
--cli-auto-prompt (boolean)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (boolean)
Отключить автоматическое запроса параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров вам необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы с руководством пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, характерные для Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. Дополнительную информацию см. в разделе «Использование кавычек со строками» в руководстве пользователя AWS CLI.
Пример 1: Сохранение нового секретного значения в секрете
Следующий put-secret-value пример создает новую версию секрета с двумя парами ключ-значение.
aws secretsmanager put-secret-value \
--secret-id MyTestSecret \
--secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
Вывод:
{
"ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c",
"Name": "MyTestSecret",
"VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
"VersionStages": [
"AWSCURRENT"
]
}
Дополнительную информацию см. в разделе «Изменение секрета» в руководстве пользователя Secrets Manager.
Пример 2: Сохранение нового секретного значения из учетных данных в файле JSON
Следующий put-secret-value пример создает новую версию секрета из учетных данных в файле. Дополнительную информацию см. в разделе «Загрузка параметров AWS CLI из файла» в руководстве пользователя AWS CLI.
aws secretsmanager put-secret-value \
--secret-id MyTestSecret \
--secret-string file://mycreds.json
Содержимое mycreds.json:
{
"engine": "mysql",
"username": "saanvis",
"password": "EXAMPLE-PASSWORD",
"host": "my-database-endpoint.us-west-2.rds.amazonaws.com",
"dbname": "myDatabase",
"port": "3306"
}
Вывод:
{
"ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3",
"Name": "MyTestSecret",
"VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
"VersionStages": [
"AWSCURRENT"
]
}
Дополнительную информацию см. в разделе «Изменение секрета» в руководстве пользователя Secrets Manager.
Вывод
ARN -> (строка)
Имя -> (строка)
VersionId -> (строка)
VersionStages -> (список)
Список меток стадии, которые в данный момент прикреплены к этой версии секрета. Secrets Manager использует метки стадии для отслеживания версии по мере ее прохождения процесса вращения секрета.
(строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.