generate-mac
Описание
Генерирует код аутентификации сообщения на основе хэша (HMAC) для сообщения с использованием ключа HMAC KMS и алгоритма MAC, который поддерживает этот ключ. Ключи HMAC KMS и алгоритмы HMAC, используемые KMS, соответствуют отраслевым стандартам, определённым в RFC 2104.
Вы можете использовать значение, которое возвращает GenerateMac в операции VerifyMac, чтобы продемонстрировать, что исходное сообщение не изменилось. Кроме того, поскольку для создания хэша используется секретный ключ, вы можете убедиться, что сторона, которая сгенерировала хэш, обладает необходимым секретным ключом. Вы также можете использовать результат в сыром виде для реализации алгоритмов на основе HMAC, таких как функции вывода ключа. Эта операция является частью поддержки KMS для ключей HMAC KMS. Подробности см. в разделе Ключи HMAC в KMS в *руководстве разработчика службы управления ключами*.
Примечание
Рекомендации по наилучшим практикам рекомендуют ограничивать время действия любого механизма подписи, включая HMAC. Это препятствует атакам, где участник использует подписанное сообщение для многократного или длительного подтверждения подлинности после того, как сообщение устарело. Теги HMAC не включают отметку времени, но вы можете включить отметку времени в токен или сообщение, чтобы определить, когда пора обновить HMAC.Ключ KMS, который вы используете для этой операции, должен быть в совместимом состоянии. Подробности см. в разделе Состояния ключей ключей KMS в *руководстве разработчика службы управления ключами*.
Использование между аккаунтами : Да. Чтобы выполнить эту операцию с ключом KMS в другом аккаунте Amazon Web Services, укажите ARN ключа или ARN псевдонима в значении параметра KeyId.
Требуемые разрешения : kms:GenerateMac (политика ключа)
Связанные операции : VerifyMac
Эвентуальная согласованность : API KMS использует модель эвентуальной согласованности. Дополнительные сведения см. в разделе Эвентуальная согласованность KMS.
См. также: Документация API AWS
Синтаксис
generate-mac
--message <value>
--key-id <value>
--mac-algorithm <value>
[--grant-tokens <value>]
[--dry-run | --no-dry-run]
[--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]
Параметры
--message (blob)
Сообщение, которое требуется захешировать. Укажите сообщение длиной до 4096 байтов.
GenerateMac и VerifyMac не предоставляют специальной обработки для дайджестов сообщений. Если вы генерируете HMAC для дайджеста хэша сообщения, вы должны проверить HMAC того же дайджеста хэша.--key-id (строка)
Ключ HMAC KMS, который нужно использовать в операции. Алгоритм MAC вычисляет HMAC для сообщения и ключа, как описано в RFC 2104.
Для идентификации ключа HMAC KMS используйте операцию DescribeKey и смотрите поле KeySpec в ответе.
--mac-algorithm (строка)
Алгоритм MAC, используемый в операции.
Алгоритм должен быть совместим с ключом HMAC KMS, который вы указали. Чтобы найти алгоритмы MAC, которые поддерживает ваш ключ HMAC KMS, используйте операцию DescribeKey и посмотрите поле MacAlgorithms в ответе DescribeKey.
Возможные значения:
HMAC_SHA_224HMAC_SHA_256HMAC_SHA_384HMAC_SHA_512
--grant-tokens (список)
Список маркеров разрешений.
Используйте маркер разрешения, когда ваше разрешение на вызов этой операции получено из нового разрешения, которое еще не достигло *эвентуальной согласованности*. Дополнительные сведения см. в разделе Маркер разрешения и Использование маркера разрешения в *руководстве разработчика службы управления ключами*.
(строка)
Синтаксис:
"string" "string" ...
--dry-run | --no-dry-run (логическое значение)
Проверяет, будет ли ваш запрос успешным. DryRun — необязательный параметр.
Чтобы узнать больше о том, как использовать этот параметр, см. Тестирование вызовов API 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
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определённый профиль из файла учетных данных.
--region (строка)
Использовать определенный регион. Переопределяет настройки конфигурации/окружения.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/отключить цветной вывод.
- on
- off
- auto
--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.
Вывод
Mac -> (blob)
Код аутентификации сообщения на основе хэша (HMAC), сгенерированный для указанного сообщения, ключа HMAC KMS и алгоритма MAC.
Это стандартный, сырой HMAC, определённый в RFC 2104.
MacAlgorithm -> (строка)
KeyId -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.