create-policy
Описание
Создаёт новую управляемую политику для вашей учетной записи Amazon Web Services.
Данная операция создаёт версию политики с идентификатором версии v1 и устанавливает v1 в качестве основной версии политики. Дополнительную информацию о версиях политики см. в разделе «Управление версиями управляемых политик» в руководстве по IAM.
В качестве рекомендации, вы можете валидировать свои политики IAM. Дополнительную информацию см. в разделе «Валидация политик IAM» в руководстве по IAM.
Дополнительную информацию об управляемых политиках см. в разделе «Управляемые политики и встроенные политики» в руководстве по IAM.
См. также: Документация API AWS
Синтаксис
create-policy
--policy-name <value>
[--path <value>]
--policy-document <value>
[--description <value>]
[--tags <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]
Параметры
--policy-name (строка)
Дружественное имя политики.
Имена пользователей, групп, ролей и политик IAM должны быть уникальными в рамках учетной записи. Имена не различаются регистром. Например, вы не можете создать ресурсы с именами «MyResource» и «myresource».
--path (строка)
Путь к политике.
Дополнительную информацию о путях см. в разделе «Идентификаторы IAM» в руководстве по IAM.
Этот параметр необязателен. По умолчанию он равен слешу (/).
Этот параметр допускает (через шаблон регулярных выражений) строку символов, состоящую либо из одного слеша (/), либо из строки, которая должна начинаться и заканчиваться слешами. Кроме того, она может содержать любой символ ASCII от ! (\u0021 ) до символа DEL (\u007F ), включая большинство знаков препинания, цифр и прописных и строчных букв.
Примечание
Вы не можете использовать звездочку (*) в имени пути.--policy-document (строка)
JSON-документ политики, который вы хотите использовать в качестве содержимого новой политики.
Политики должны предоставляться в формате JSON в IAM. Однако для шаблонов CloudFormation, отформатированных в формате YAML, вы можете указать политику в формате JSON или YAML. CloudFormation всегда преобразует политику YAML в формат JSON перед отправкой в IAM.
Максимальная длина документа политики, которую вы можете передать в этой операции, включая пробелы, указана ниже. Чтобы узнать максимальное количество символов управляемой политики без пробелов, см. квоты символов IAM и STS.
Дополнительную информацию о грамматике JSON-политик см. в разделе «Грамматика языка JSON-политик IAM» в руководстве по IAM.
Шаблон регулярных выражений, используемый для проверки этого параметра, представляет собой строку символов, состоящую из следующего:
- Любой печатаемый символ ASCII, начиная с пробела (
\u0020) и до конца диапазона ASCII-символов - Печатаемые символы в наборах символов Basic Latin и Latin-1 Supplement (до
\u00FF) - Специальные символы табуляции (
\u0009), перевода строки (\u000A) и возврата каретки (\u000D)
--description (строка)
Дружественное описание политики.
Обычно используется для хранения информации о разрешениях, определённых в политике. Например, «Предоставляет доступ к производственным таблицам DynamoDB».
Описание политики неизменяемо. После присвоения значения его нельзя изменить.
--tags (список)
Список тегов, которые вы хотите прикрепить к новой управляемой политике IAM клиента. Каждый тег состоит из имени ключа и связанного значения. Дополнительную информацию о тегах см. в разделе «Тегирование ресурсов IAM» в руководстве по IAM.
Примечание
Если какой-либо из тегов некорректен или вы превысили разрешенное максимальное количество тегов, то весь запрос завершится ошибкой, и ресурс не будет создан.(структура)
Структура, которая представляет пользовательские метаданные, которые можно связать с ресурсом IAM. Дополнительную информацию о тегах см. в разделе «Тегирование ресурсов IAM» в руководстве по IAM.
Ключ -> (строка)
Department или Cost Center являются распространёнными вариантами.Значение -> (строка)
Значение, связанное с этим тегом. Например, теги с именем ключа Department могут иметь значения, такие как Human Resources, Accounting и Support. Теги с именем ключа Cost Center могут иметь значения, состоящие из номера, связанного с различными центрами затрат в вашей компании. Обычно многие ресурсы имеют теги с одинаковым именем ключа, но с различными значениями.
Примечание
Amazon Web Services всегда интерпретирует тегValue как одну строку. Если вам нужно сохранить массив, вы можете сохранить значения, разделённые запятыми, в строке. Однако вам необходимо интерпретировать значение в вашем коде.Сокращённый синтаксис:
Key=string,Value=string ...
JSON-синтаксис:
[
{
"Key": "string",
"Value": "string"
}
...
]
--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-auto-prompt (логическое значение)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматическое запросы параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в Руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, аналогичные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей терминальной оболочки. См. раздел Использование кавычек со строками в Руководстве пользователя AWS CLI.
Пример 1: Создание управляемой клиентом политики
Следующая команда создает управляемую клиентом политику с именем my-policy. Файл policy.json — это JSON-документ в текущей папке, который предоставляет только права на чтение папке shared в ведре Amazon S3 с именем amzn-s3-demo-bucket.
aws iam create-policy \
--policy-name my-policy \
--policy-document file://policy.json
Содержимое policy.json:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:Get*",
"s3:List*"
],
"Resource": [
"arn:aws:s3:::amzn-s3-demo-bucket/shared/*"
]
}
]
}
Вывод:
{
"Policy": {
"PolicyName": "my-policy",
"CreateDate": "2015-06-01T19:31:18.620Z",
"AttachmentCount": 0,
"IsAttachable": true,
"PolicyId": "ZXR6A36LTYANPAI7NJ5UV",
"DefaultVersionId": "v1",
"Path": "/",
"Arn": "arn:aws:iam::0123456789012:policy/my-policy",
"UpdateDate": "2015-06-01T19:31:18.620Z"
}
}
Дополнительную информацию об использовании файлов в качестве входных данных для строковых параметров см. в разделе Указание значений параметров для AWS CLI в Руководстве пользователя AWS CLI.
Пример 2: Создание управляемой клиентом политики с описанием
Следующая команда создаёт управляемую клиентом политику с именем my-policy со статичным описанием.
Файл policy.json — это JSON-документ в текущей папке, который предоставляет доступ ко всем действиям Put, List и Get для ведра Amazon S3 с именем amzn-s3-demo-bucket.
aws iam create-policy \
--policy-name my-policy \
--policy-document file://policy.json \
--description "This policy grants access to all Put, Get, and List actions for amzn-s3-demo-bucket"
Содержимое policy.json:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket*",
"s3:PutBucket*",
"s3:GetBucket*"
],
"Resource": [
"arn:aws:s3:::amzn-s3-demo-bucket"
]
}
]
}
Вывод:
{
"Policy": {
"PolicyName": "my-policy",
"PolicyId": "ANPAWGSUGIDPEXAMPLE",
"Arn": "arn:aws:iam::123456789012:policy/my-policy",
"Path": "/",
"DefaultVersionId": "v1",
"AttachmentCount": 0,
"PermissionsBoundaryUsageCount": 0,
"IsAttachable": true,
"CreateDate": "2023-05-24T22:38:47+00:00",
"UpdateDate": "2023-05-24T22:38:47+00:00"
}
}
Дополнительную информацию об основанных на идентификаторе политиках см. в разделе Политики на основе идентификатора и политики на основе ресурсов в Руководстве пользователя AWS IAM.
Пример 3: Создание управляемой клиентом политики с тегами
Следующая команда создаёт управляемую клиентом политику с именем my-policy с тегами. В этом примере используется параметр --tags с тегами в формате JSON: '{"Key": "Department", "Value": "Accounting"}' '{"Key": "Location", "Value": "Seattle"}'. В качестве альтернативы, для тегов можно использовать параметр --tags в сокращённом формате: 'Key=Department,Value=Accounting Key=Location,Value=Seattle'.
Файл policy.json — это JSON-документ в текущей папке, предоставляющий доступ ко всем действиям Put, List и Get для ведра Amazon S3 с именем amzn-s3-demo-bucket.
aws iam create-policy \
--policy-name my-policy \
--policy-document file://policy.json \
--tags '{"Key": "Department", "Value": "Accounting"}' '{"Key": "Location", "Value": "Seattle"}'
Содержимое policy.json:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket*",
"s3:PutBucket*",
"s3:GetBucket*"
],
"Resource": [
"arn:aws:s3:::amzn-s3-demo-bucket"
]
}
]
}
Вывод:
{
"Policy": {
"PolicyName": "my-policy",
"PolicyId": "ANPAWGSUGIDPEXAMPLE",
"Arn": "arn:aws:iam::12345678012:policy/my-policy",
"Path": "/",
"DefaultVersionId": "v1",
"AttachmentCount": 0,
"PermissionsBoundaryUsageCount": 0,
"IsAttachable": true,
"CreateDate": "2023-05-24T23:16:39+00:00",
"UpdateDate": "2023-05-24T23:16:39+00:00",
"Tags": [
{
"Key": "Department",
"Value": "Accounting"
},
"Key": "Location",
"Value": "Seattle"
{
]
}
}
Дополнительную информацию о тегировании политик см. в разделе Тегирование управляемых клиентом политик в Руководстве пользователя AWS IAM.
Вывод
Политика -> (структура)
Структура, содержащая подробности о новой политике.
ИмяПолитики -> (строка)
ИдентификаторПолитики -> (строка)
Устойчивая и уникальная строка, идентифицирующая политику.
Дополнительную информацию об идентификаторах см. в разделе Идентификаторы IAM в Руководстве пользователя IAM.
Arn -> (строка)
Amazon Resource Name (ARN). ARN — это уникальные идентификаторы ресурсов Amazon Web Services.
Дополнительную информацию об ARN см. в разделе Amazon Resource Names (ARN) в Общие сведения о службах Amazon Web Services.
Путь -> (строка)
Путь к политике.
Дополнительную информацию о путях см. в разделе Идентификаторы IAM в Руководстве пользователя IAM.
ИдентификаторОсновнойВерсии -> (строка)
КоличествоПрикреплений -> (целое число)
КоличествоИспользованийГраницыРазрешений -> (целое число)
Количество сущностей (пользователей и ролей), для которых политика используется для задания границ разрешений.
Дополнительную информацию о границах разрешений см. в разделе Границы разрешений для идентификаторов IAM в Руководстве пользователя IAM.
МожноПрикрепить -> (булево)
Описание -> (строка)
Дружественное описание политики.
Этот элемент включается в ответ на операцию GetPolicy. Он не включается в ответ на операцию ListPolicies.
ДатаСоздание -> (временная метка)
ДатаОбновление -> (временная метка)
Дата и время последнего обновления политики в формате ISO 8601.
Если у политики только одна версия, это поле содержит дату и время создания политики. Если у политики более одной версии, это поле содержит дату и время создания последней версии политики.
Теги -> (список)
Список тегов, прикрепленных к экземпляру профиля. Дополнительную информацию о тегах см. в разделе Тегирование ресурсов IAM в Руководстве пользователя IAM.
(структура)
Структура, представляющая пользовательские метаданные, которые могут быть связаны с ресурсом IAM. Дополнительную информацию о тегах см. в разделе Тегирование ресурсов IAM в Руководстве пользователя IAM.
Ключ -> (строка)
Department или Cost Center — распространённые варианты.Значение -> (строка)
Значение, связанное с этим тегом. Например, теги с именем ключа Department могут иметь значения, такие как Human Resources, Accounting и Support. Теги с именем ключа Cost Center могут иметь значения, состоящие из номера, связанного с различными центрами затрат в вашей компании. Обычно многие ресурсы имеют теги с одинаковым именем ключа, но с различными значениями.
Примечание
Amazon Web Services всегда интерпретирует тегValue как одну строку. Если вам нужно хранить массив, вы можете хранить значения, разделённые запятыми, в строке. Однако вы должны интерпретировать значение в своём коде.
© Copyright 2025, Amazon Web Services. Created using Sphinx.