add-permission
Описание
Предоставляет принципалу разрешение на использование функции. Вы можете применить политику на уровне функции или указать квалификатор, чтобы ограничить доступ до одной версии или псевдонима. Если вы используете квалификатор, вызывающий должен использовать полное имя ресурса Amazon (ARN) этой версии или псевдонима для вызова функции. Примечание: Lambda не поддерживает добавление политик к версии $LATEST.
Чтобы предоставить разрешение другому аккаунту, укажите идентификатор аккаунта как Principal. Чтобы предоставить разрешение организации, определенной в Organizations, укажите идентификатор организации как PrincipalOrgID. Для сервисов Amazon Web Services принципал — это идентификатор в стиле домена, определенный сервисом, такой как s3.amazonaws.com или sns.amazonaws.com. Для сервисов Amazon Web Services вы также можете указать ARN связанного ресурса как SourceArn. Если вы предоставляете разрешение сервисному принципалу без указания источника, другие аккаунты могут потенциально настроить ресурсы в своём аккаунте для вызова вашей функции Lambda.
Данная операция добавляет утверждение в политику разрешений на основе ресурсов для функции. Более подробную информацию о политиках функций см. в разделе Использование политик на основе ресурсов для Lambda.
См. также: Документация API AWS
Синтаксис
add-permission
--function-name <value>
--statement-id <value>
--action <value>
--principal <value>
[--source-arn <value>]
[--source-account <value>]
[--event-source-token <value>]
[--qualifier <value>]
[--revision-id <value>]
[--principal-org-id <value>]
[--function-url-auth-type <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]
Параметры
--function-name (строка)
Имя или ARN функции Lambda, версии или псевдонима.
-
Имя функции –
my-function(только имя),my-function:v1(с псевдонимом). -
ARN функции –
arn:aws:lambda:us-west-2:123456789012:function:my-function. -
Частичный ARN –
123456789012:function:my-function.
Вы можете добавить номер версии или псевдоним к любому из форматов. Ограничение по длине относится только к полному ARN. Если вы указываете только имя функции, оно ограничено 64 символами.
--statement-id (строка)
--action (строка)
lambda:InvokeFunction или lambda:GetFunction.--principal (строка)
SourceArn или SourceAccount, чтобы ограничить тех, кто может вызывать функцию через этот сервис.--source-arn (строка)
Для сервисов Amazon Web Services ARN ресурса Amazon Web Services, который вызывает функцию. Например, ведро Amazon S3 или тема Amazon SNS.
Обратите внимание, что Lambda настраивает сравнение с использованием оператора StringLike.
--source-account (строка)
SourceArn, чтобы убедиться, что указанный аккаунт владеет ресурсом. Ведро Amazon S3 может быть удалено его владельцем и воссоздано другим аккаунтом.--event-source-token (строка)
--qualifier (строка)
--revision-id (строка)
--principal-org-id (строка)
--function-url-auth-type (строка)
Тип аутентификации, который использует URL вашей функции. Установите значение в AWS_IAM, если вы хотите ограничить доступ только для авторизованных пользователей. Установите значение в NONE, если вы хотите обойти аутентификацию IAM для создания публичного конечного пункта. Для получения дополнительной информации см. раздел Безопасность и модель аутентификации для URL-адресов функций Lambda.
Возможные значения:
NONEAWS_IAM
--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
- таблица
- 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 (логическое значение)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматическое запроса параметров ввода CLI.
Примеры
Примечание
Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Более подробная информация содержится в руководстве по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования для Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей консоли. См. раздел Использование кавычек со строками в руководстве пользователя AWS CLI.
Для добавления разрешений к существующей функции Lambda
Следующий add-permission пример предоставляет сервису Amazon SNS разрешение вызывать функцию с именем my-function.
aws lambda add-permission \
--function-name my-function \
--action lambda:InvokeFunction \
--statement-id sns \
--principal sns.amazonaws.com
Вывод:
{
"Statement":
{
"Sid":"sns",
"Effect":"Allow",
"Principal":{
"Service":"sns.amazonaws.com"
},
"Action":"lambda:InvokeFunction",
"Resource":"arn:aws:lambda:us-east-2:123456789012:function:my-function"
}
}
Дополнительную информацию см. в разделе Использование политик на основе ресурсов для AWS Lambda в руководстве разработчика AWS Lambda.
Вывод
Утверждение -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.