[ aws . secretsmanager ]
create-secret
Описание
Создает новый секрет. Секрет может представлять собой пароль, набор учетных данных, таких как имя пользователя и пароль, токен OAuth или другую конфиденциальную информацию, которую вы храните в зашифрованном виде в Secrets Manager. Секрет также включает информацию о подключении для доступа к базе данных или другому сервису, которую Secrets Manager не шифрует. Секрет в Secrets Manager состоит из защищенных данных секрета и важной информации, необходимой для управления секретом.
Для секретов, использующих управляемую ротацию, необходимо создать секрет через управляющий сервис. Для получения дополнительной информации см. Секреты Secrets Manager, управляемые другими сервисами Amazon Web Services.
Сведения о создании секрета в консоли см. в разделе Создание секрета.
Чтобы создать секрет, вы можете предоставить значение секрета для шифрования в параметре SecretString или параметре SecretBinary, но не в обоих. Если вы включите SecretString или SecretBinary, Secrets Manager создает начальную версию секрета и автоматически присваивает ей метку этапа AWSCURRENT.
Для учетных данных базы данных, которые вы хотите вращать, чтобы Secrets Manager смог вращать секрет, вы должны убедиться, что JSON, хранящийся в SecretString, соответствует структуре JSON секрета базы данных.
Если вы не укажете ключ шифрования KMS, Secrets Manager использует управляемый ключ Amazon Web Services aws/secretsmanager. Если этот ключ еще не существует в вашей учетной записи, Secrets Manager создаст его автоматически. Все пользователи и роли в учетной записи Amazon Web Services автоматически имеют доступ к использованию aws/secretsmanager. Создание aws/secretsmanager может привести к кратковременному значительному замедлению возврата результата.
Если секрет находится в другой учетной записи Amazon Web Services, отличной от учетной записи, вызывающей API, то вы не можете использовать aws/secretsmanager для шифрования секрета и должны создать и использовать управляемый клиентом ключ KMS.
Secrets Manager генерирует запись журнала CloudTrail при вызове этого действия. Не включайте конфиденциальную информацию в параметры запроса, за исключением SecretBinary или SecretString, поскольку она может быть зарегистрирована. Дополнительная информация приведена в разделе Ведение журналов событий Secrets Manager с помощью CloudTrail.
secretsmanager:CreateSecret. Если вы включаете теги в секрет, вам также необходимо secretsmanager:TagResource. Для добавления реплицированных регионов вам также необходимо secretsmanager:ReplicateSecretToRegions. Дополнительная информация приведена в разделе Действия политики IAM для Secrets Manager и Авторизация и контроль доступа в Secrets Manager.Для шифрования секрета с помощью ключа KMS, отличного от aws/secretsmanager, вам необходимо разрешение kms:GenerateDataKey и kms:Decrypt на ключ.
Предупреждение
При вводе команд в командной оболочке существует риск доступа к истории команд или к параметрам ваших команд у утилит. Это является проблемой, если команда включает значение секрета. Узнайте, как смягчить риски использования инструментов командной строки для хранения секретов Secrets Manager.См. также: Документация API AWS
Синопсис
create-secret
--name <value>
[--client-request-token <value>]
[--description <value>]
[--kms-key-id <value>]
[--secret-binary <value>]
[--secret-string <value>]
[--tags <value>]
[--add-replica-regions <value>]
[--force-overwrite-replica-secret | --no-force-overwrite-replica-secret]
[--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]
Параметры
--name (строка)
Имя нового секрета.
Имя секрета может содержать буквы латинского алфавита, цифры и следующие символы: /_+=.@-
Не заканчивайте имя секрета дефисом, за которым следуют шесть символов. В противном случае возможны ошибки при поиске секрета по частичной ARN. Управляющий службой секретов автоматически добавляет дефис и шесть случайных символов в конец ARN после имени секрета.
--client-request-token (строка)
Если вы включите SecretString или SecretBinary, то Управляющий службой секретов создаст начальную версию секрета, и этот параметр указывает уникальный идентификатор новой версии.
Примечание
Если вы используете командную строку Amazon Web Services или один из SDK Amazon Web Services для вызова этой операции, то можете оставить этот параметр пустым. Командная строка или SDK сгенерируют для вас случайный UUID и включат его в качестве значения этого параметра в запросе.Если вы генерируете прямой HTTP-запрос к конечной точке сервиса Управляющий службой секретов, то должны сгенерировать ClientRequestToken и включить его в запрос.
Это значение помогает обеспечить идемпотентность. Управляющий службой секретов использует это значение для предотвращения случайного создания дублирующих версий в случае сбоев и повторных попыток при вращении. Рекомендуется генерировать значение типа UUID для обеспечения уникальности ваших версий в рамках заданного секрета.
- Если значение
ClientRequestTokenещё не связано с версией секрета, то создается новая версия секрета. - Если версия с этим значением уже существует, и значения версии
SecretStringиSecretBinaryсовпадают со значениями в запросе, то запрос игнорируется. - Если версия с этим значением уже существует, а значения версии
SecretStringиSecretBinaryотличаются от значений в запросе, то запрос завершается ошибкой, так как вы не можете изменить существующую версию. Используйте PutSecretValue для создания новой версии.
Это значение становится VersionId новой версии.
--description (строка)
--kms-key-id (строка)
ARN, идентификатор ключа или псевдоним ключа KMS, который Управляющий службой секретов использует для шифрования значения секрета в секрете. Псевдоним всегда предваряется alias/ , например alias/aws/secretsmanager . Дополнительную информацию см. в разделе О псевдонимах .
Для использования ключа KMS в другом аккаунте используйте ARN ключа или ARN псевдонима.
Если вы не укажете это значение, Управляющий службой секретов использует ключ aws/secretsmanager . Если этот ключ ещё не существует, Управляющий службой секретов создаст его автоматически при первом шифровании значения секрета.
Если секрет находится в другом аккаунте Amazon Web Services по сравнению с учётными данными, вызывающими API, то вы не можете использовать aws/secretsmanager для шифрования секрета и должны создать и использовать управляемый клиентом ключ KMS.
--secret-binary (двоичные данные)
Двоичные данные для шифрования и хранения в новой версии секрета. Рекомендуется хранить ваши двоичные данные в файле, а затем передавать содержимое файла как параметр.
Должно быть значение либо SecretString, либо SecretBinary, но не оба.
Этот параметр недоступен в консоли Управляющего службой секретов.
Конфиденциально: Это поле содержит конфиденциальную информацию, поэтому служба не включает его в записи журналов CloudTrail. Если вы создаёте собственные записи журналов, вы также должны избегать ведения информации в этом поле.
--secret-string (строка)
Текстовые данные для шифрования и хранения в этой новой версии секрета. Рекомендуется использовать JSON-структуру пар «ключ-значение» для вашего значения секрета.
Должно быть значение либо SecretString, либо SecretBinary, но не оба.
Если вы создаёте секрет с помощью консоли Управляющего службой секретов, Управляющий службой секретов помещает защищённый текстовый секрет только в параметр SecretString. Консоль Управляющего службой секретов хранит информацию как JSON-структуру пар «ключ-значение», которую функция вращения Lambda может анализировать.
Конфиденциально: Это поле содержит конфиденциальную информацию, поэтому служба не включает его в записи журналов CloudTrail. Если вы создаёте собственные записи журналов, вы также должны избегать ведения информации в этом поле.
--tags (список)
Список тегов для прикрепления к секрету. Каждый тег — это пара «ключ-значение» строк в строке JSON-текста, например:
[{"Key":"CostCenter","Value":"12345"},{"Key":"environment","Value":"production"}]Имена ключей тегов Управляющего службой секретов чувствительны к регистру. Тег с ключом «ABC» отличается от тега с ключом «abc».
Если вы проверяете теги в политиках разрешений в рамках своей стратегии безопасности, добавление или удаление тега может изменить разрешения. Если завершение этой операции приведёт к потере разрешений для этого секрета, Управляющий службой секретов заблокирует операцию и вернёт ошибку Access Denied. Дополнительную информацию см. в разделах Контроль доступа к секретам с помощью тегов и Ограничение доступа для идентификаторов с тегами, которые соответствуют тегам секретов .
Для получения информации о том, как отформатировать JSON-параметр для различных сред командной строки, см. Использование JSON для параметров . Если ваша командная строка или SDK требуют кавычек вокруг параметра, вы должны использовать одинарные кавычки, чтобы избежать путаницы с двойными кавычками, необходимыми в JSON-тексте.
Справочная информация о квотах тегов и ограничениях именования см. в разделе Квоты сервиса для тегирования в руководстве Amazon Web Services General Reference .
(структура)
Структура, содержащая информацию о теге.
Ключ -> (строка)
Значение -> (строка)
Краткая синтаксическая запись:
Key=string,Value=string ...
Синтаксис JSON:
[
{
"Key": "string",
"Value": "string"
}
...
]
--add-replica-regions (список)
Список регионов и ключей KMS для репликации секретов.
(структура)
Пользовательский тип, определяющий Region и KmsKeyId для секрета-реплики.
Регион -> (строка)
KmsKeyId -> (строка)
aws/secretsmanager.Краткая синтаксическая запись:
Region=string,KmsKeyId=string ...
Синтаксис JSON:
[
{
"Region": "string",
"KmsKeyId": "string"
}
...
]
--force-overwrite-replica-secret | --no-force-overwrite-replica-secret (логическое значение)
--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
- текст
- таблица
- 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.
Примеры
Примечание
Чтобы использовать следующие примеры, у вас должен быть установлен и настроен AWS CLI. Подробнее см. руководство по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. Подробнее см. использование кавычек со строками в руководстве пользователя AWS CLI.
Пример 1: Создание секрета из данных в файле JSON
Следующий create-secret пример создаёт секрет из данных в файле. Для получения дополнительной информации см. загрузку параметров AWS CLI из файла в руководстве пользователя AWS CLI.
aws secretsmanager create-secret \
--name 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"
}
Для получения дополнительной информации см. создание секрета в руководстве пользователя Secrets Manager.
Пример 2: Создание секрета
Следующий create-secret пример создаёт секрет с двумя парами ключ-значение. При вводе команд в командной оболочке существует риск доступа к истории команд или к вашим параметрам команд от сторонних утилиты. Это представляет опасность, если команда включает значение секрета. Для получения дополнительной информации см. минимизацию рисков использования командных инструментов для хранения секретов в руководстве пользователя Secrets Manager.
aws secretsmanager create-secret \
--name MyTestSecret \
--description "My test secret created with the CLI." \
--secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
Вывод:
{
"ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3",
"Name": "MyTestSecret",
"VersionId": "EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE"
}
Для получения дополнительной информации см. создание секрета в руководстве пользователя Secrets Manager.
Вывод
ARN -> (строка)
Имя -> (строка)
VersionId -> (строка)
ReplicationStatus -> (список)
Список реплик этого секрета и их статуса:
-
Failed, что указывает, что реплика не была создана. -
InProgress, что указывает, что Secrets Manager в процессе создания реплики. -
InSync, что указывает, что реплика была создана.
(структура)
Объект репликации, состоящий из объекта RegionReplicationStatus и содержащий область, KMSKeyId, статус и сообщение о статусе.
Регион -> (строка)
KmsKeyId -> (строка)
ARN, Key ID или Alias.Статус -> (строка)
InProgress, Failed или InSync.Сообщение о статусе -> (строка)
LastAccessedDate -> (временная метка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.