Spec-Zone.ru › AWS CLI v2

[ aws . sts ]

get-session-token

Описание

Возвращает набор временных учетных данных для учетной записи Amazon Web Services или пользователя IAM. Учетные данные состоят из идентификатора ключа доступа, секретного ключа доступа и маркера безопасности. Как правило, вы используете GetSessionToken, если хотите использовать MFA для защиты программных вызовов к определённым операциям API Amazon Web Services, таким как Amazon EC2 StopInstances.

Пользователи IAM с включённой MFA должны вызывать GetSessionToken и предоставить код MFA, связанный с их устройством MFA. Используя временные учетные данные безопасности, возвращаемые вызовом, пользователи IAM могут выполнять программные вызовы к операциям API, требующим аутентификацию MFA. Неверный код MFA приводит к возврату API ошибки отказа в доступе. Для сравнения GetSessionToken с другими операциями API, создающими временные учетные данные, см. Запрос временных учетных данных безопасности и Сравнение учетных данных STS в руководстве по IAM.

Примечание

Для выполнения этой операции не требуются какие-либо разрешения. Цель операции sts:GetSessionToken — аутентификация пользователя с помощью MFA. Вы не можете использовать политики для управления операциями аутентификации. Дополнительную информацию см. в разделе Разрешения для GetSessionToken в руководстве по IAM.

Продолжительность сессии

Для выполнения операции GetSessionToken необходимо использовать долгосрочные учетные данные безопасности Amazon Web Services пользователя IAM. Учетные данные, созданные пользователями IAM, действительны в течение указанного вами периода. Этот период может составлять от 900 секунд (15 минут) до максимальных 129 600 секунд (36 часов), по умолчанию — 43 200 секунд (12 часов). Учетные данные, основанные на учетных данных учётной записи, могут составлять от 900 секунд (15 минут) до 3600 секунд (1 час), по умолчанию — 1 час.

Разрешения

Временные учетные данные безопасности, созданные GetSessionToken, могут быть использованы для выполнения вызовов API к любому сервису Amazon Web Services, за исключением следующих случаев:

  • Вы не можете вызывать какие-либо операции API IAM, если информация об аутентификации MFA не включена в запрос.
  • Вы не можете вызывать какие-либо операции API STS, кроме AssumeRole или GetCallerIdentity.

Учетные данные, которые возвращает GetSessionToken, основаны на разрешениях, связанных с пользователем IAM, чьи учетные данные были использованы для вызова операции. Временные учетные данные имеют те же разрешения, что и пользователь IAM.

Примечание

Хотя возможно вызывать GetSessionToken, используя учетные данные учетной записи Amazon Web Services root-пользователя вместо пользователя IAM, мы не рекомендуем этого. Если GetSessionToken вызывается с учетными данными root-пользователя, временные учетные данные имеют права root-пользователя. Дополнительную информацию см. в разделе Обеспечьте безопасность учетных данных root-пользователя и не используйте их для повседневных задач в руководстве по IAM.

Дополнительную информацию об использовании GetSessionToken для создания временных учетных данных см. в разделе Временные учетные данные для пользователей в ненадежных средах в руководстве по IAM.

См. также: Документация по API AWS

Синтаксис

  get-session-token
[--duration-seconds <value>]
[--serial-number <value>]
[--token-code <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]

Параметры

--duration-seconds (целое число)

Продолжительность в секундах, в течение которой учетные данные должны оставаться действительными. Допустимые периоды для сессий пользователей IAM составляют от 900 секунд (15 минут) до 129 600 секунд (36 часов), по умолчанию — 43 200 секунд (12 часов). Сессии владельцев учетных записей Amazon Web Services ограничены максимальным значением 3600 секунд (один час). Если продолжительность превышает один час, сессия для владельцев учетных записей Amazon Web Services по умолчанию составляет один час.

--serial-number (строка)

Идентификационный номер устройства MFA, связанного с пользователем IAM, выполняющим вызов GetSessionToken. Укажите это значение, если для пользователя IAM установлена политика, требующая аутентификацию MFA. Значение представляет собой либо серийный номер аппаратного устройства (например, GAHT12345678), либо Amazon Resource Name (ARN) для виртуального устройства (например, arn:aws:iam::123456789012:mfa/user). Устройство пользователя IAM можно найти в консоли управления Amazon Web Services, просмотрев учетные данные безопасности пользователя.

Регулярное выражение, используемое для проверки этого параметра, представляет собой строку символов, состоящую из буквенно-цифровых символов верхнего и нижнего регистра без пробелов. Вы также можете включить символы подчеркивания или любые из следующих символов: =,.@:/-

--token-code (строка)

Значение, предоставленное устройством MFA, если требуется MFA. Если какая-либо политика требует, чтобы пользователь IAM предоставил код MFA, укажите это значение. Если требуется аутентификация MFA, пользователь должен предоставить код при запросе набора временных учетных данных безопасности. Пользователь, который не предоставит код, получит ответ «доступ запрещен» при запросе ресурсов, требующих аутентификацию MFA.

Формат этого параметра, как описано его регулярным выражением, представляет собой последовательность из шести цифровых знаков.

--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 версии 1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, сопоставленного с двоичным блоком 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.

Получение набора краткосрочных учетных данных для идентификатора IAM

Следующая команда get-session-token извлекает набор краткосрочных учетных данных для идентификатора IAM, выполняющего вызов. Результирующие учетные данные могут быть использованы для запросов, где политика требует многофакторной аутентификации (MFA). Учетные данные истекают через 15 минут после их создания.

aws sts get-session-token \
    --duration-seconds 900 \
    --serial-number "YourMFADeviceSerialNumber" \
    --token-code 123456

Вывод:

{
    "Credentials": {
        "AccessKeyId": "ASIAIOSFODNN7EXAMPLE",
        "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY",
        "SessionToken": "AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtpZ3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE",
        "Expiration": "2020-05-19T18:06:10+00:00"
    }
}

Дополнительную информацию см. в разделе Запрос временных учетных данных безопасности в руководстве по IAM AWS.

Вывод

Учетные данные -> (структура)

Временные учетные данные безопасности, включающие идентификатор ключа доступа, секретный ключ доступа и маркер безопасности (или сессии).

Примечание

Размер маркера безопасности, возвращаемого операциями API STS, не фиксирован. Мы настоятельно рекомендуем не делать предположений о максимальном размере.

AccessKeyId -> (строка)

Идентификатор ключа доступа, идентифицирующий временные учетные данные безопасности.

SecretAccessKey -> (строка)

Секретный ключ доступа, который можно использовать для подписи запросов.

SessionToken -> (строка)

Маркер, который пользователи должны передать API-сервису, чтобы использовать временные учетные данные.

Expiration -> (метка времени)

Дата истечения срока действия текущих учетных данных.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API