[ aws . apigatewayv2 ]
create-authorizer
Описание
Создаёт авторизатор для API.
См. также: Документацию AWS API
Синтаксис
create-authorizer
--api-id <value>
[--authorizer-credentials-arn <value>]
[--authorizer-payload-format-version <value>]
[--authorizer-result-ttl-in-seconds <value>]
--authorizer-type <value>
[--authorizer-uri <value>]
[--enable-simple-responses | --no-enable-simple-responses]
--identity-source <value>
[--identity-validation-expression <value>]
[--jwt-configuration <value>]
--name <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]
Параметры
--api-id (строка)
--authorizer-credentials-arn (строка)
--authorizer-payload-format-version (строка)
--authorizer-result-ttl-in-seconds (целое число)
--authorizer-type (строка)
Тип авторизатора. Укажите REQUEST для функции Lambda, использующей параметры входящего запроса. Укажите JWT для использования JSON Web Tokens (поддерживается только для HTTP API).
Возможные значения:
REQUESTJWT
--authorizer-uri (строка)
--enable-simple-responses | --no-enable-simple-responses (булево)
--identity-source (список)
Источник идентификатора, для которого запрашивается авторизация.
Для авторизатора REQUEST это необязательно. Значение представляет собой набор одного или нескольких выражений сопоставления указанных параметров запроса. Источник идентификатора может быть заголовками, параметрами строки запроса, переменными этапа и параметрами контекста. Например, если заголовок Auth и параметр строки запроса Name определены как источники идентификатора, это значение route.request.header.Auth, route.request.querystring.Name для WebSocket API. Для HTTP API используйте выражения выбора, начинающиеся с $, например, $request.header.Auth, $request.querystring.Name. Эти параметры используются для выполнения проверки во время выполнения для авторизаторов на основе Lambda, проверяя, присутствуют ли все параметры запроса, относящиеся к идентификатору, в запросе, не равны null и не пустые. Только когда это истинно, авторизатор вызывает функцию авторизатора Lambda. В противном случае он возвращает ответ 401 Unauthorized, не вызывая функцию Lambda. Для HTTP API источники идентификаторов также используются в качестве ключа кеша при включенном кешировании. Узнайте больше в разделе Работа с авторизаторами AWS Lambda для HTTP API .
Для JWT — единственный элемент, указывающий, где извлечь JSON Web Token (JWT) из входящих запросов. В настоящее время поддерживаются только выбор по заголовкам и параметрам строки запроса, например $request.header.Authorization.
(строка)
Синтаксис:
"string" "string" ...
--identity-validation-expression (строка)
--jwt-configuration (структура)
Представляет конфигурацию авторизатора JWT. Требуется для типа авторизатора JWT. Поддерживается только для HTTP API.
Audience -> (список)
Список предполагаемых получателей JWT. Действительный JWT должен предоставить aud, соответствующий хотя бы одному элементу этого списка. См. RFC 7519 . Поддерживается только для HTTP API.
(строка)
Issuer -> (строка)
Сокращённый синтаксис:
Audience=string,string,Issuer=string
JSON синтаксис:
{
"Audience": ["string", ...],
"Issuer": "string"
}
--name (строка)
--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 для вывода.
--cli-auto-prompt (булево)
Автоматически запрашивать параметры ввода командной строки.
--no-cli-auto-prompt (булево)
Отключить автоматическую запрос параметров ввода командной строки.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Подробнее см. руководство по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования Unix. Эти примеры нужно адаптировать к правилам цитирования вашей терминальной программы. Подробнее см. Использование кавычек со строками в руководстве пользователя AWS CLI.
Для создания авторизатора JWT для HTTP API
Следующий create-authorizer пример создаёт авторизатор JWT, использующий Amazon Cognito в качестве поставщика идентификаторов.
aws apigatewayv2 create-authorizer \
--name my-jwt-authorizer \
--api-id a1b2c3d4 \
--authorizer-type JWT \
--identity-source '$request.header.Authorization' \
--jwt-configuration Audience=123456abc,Issuer=https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123
Вывод:
{
"AuthorizerId": "a1b2c3",
"AuthorizerType": "JWT",
"IdentitySource": [
"$request.header.Authorization"
],
"JwtConfiguration": {
"Audience": [
"123456abc"
],
"Issuer": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_abc123"
},
"Name": "my-jwt-authorizer"
}
Для получения дополнительной информации, см. Управление доступом к HTTP API с помощью авторизаторов JWT в руководстве разработчика Amazon API Gateway.
Выходные данные
AuthorizerCredentialsArn -> (строка)
AuthorizerId -> (строка)
AuthorizerPayloadFormatVersion -> (строка)
AuthorizerResultTtlInSeconds -> (целое число)
AuthorizerType -> (строка)
AuthorizerUri -> (строка)
EnableSimpleResponses -> (булево)
IdentitySource -> (список)
Источник идентификатора, для которого требуется авторизация.
Для авторизатора REQUEST это необязательно. Значение представляет собой набор одного или нескольких выражений сопоставления указанных параметров запроса. Источником идентификатора могут быть заголовки, параметры строки запроса, переменные этапа и параметры контекста. Например, если в качестве источников идентификатора определены заголовок Auth и параметр строки запроса Name, это значение route.request.header.Auth, route.request.querystring.Name для WebSocket API. Для HTTP API используйте выражения выбора, начинающиеся с $, например, $request.header.Auth, $request.querystring.Name. Эти параметры используются для проверки во время выполнения для авторизаторов на основе Lambda, проверяя, что все параметры запроса, относящиеся к идентификатору, присутствуют в запросе, не равны null и не пустые. Только если это верно, авторизатор вызывает функцию Lambda авторизатора. В противном случае он возвращает ответ 401 Unauthorized без вызова функции Lambda. Для HTTP API источники идентификаторов также используются в качестве ключа кеша при включенном кэшировании. Дополнительную информацию см. в разделе Работа с авторизаторами AWS Lambda для HTTP API.
Для JWT — единственный элемент, указывающий, где извлечь JSON Web Token (JWT) из входящих запросов. В настоящее время поддерживаются только выборки на основе заголовков и параметров строки запроса, например, $request.header.Authorization.
(строка)
IdentityValidationExpression -> (строка)
JwtConfiguration -> (структура)
Представляет конфигурацию авторизатора JWT. Требуется для типа авторизатора JWT. Поддерживается только для HTTP API.
Audience -> (список)
Список предполагаемых получателей JWT. Действительный JWT должен предоставить значение aud, которое совпадает хотя бы с одним элементом в этом списке. См. RFC 7519. Поддерживается только для HTTP API.
(строка)
Issuer -> (строка)
Name -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.