Spec-Zone.ru › AWS CLI v2

[ aws . iam ]

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.

Вывод

Политика -> (структура)

Структура, содержащая подробности о новой политике.

ИмяПолитики -> (строка)

Дружественное имя (не ARN) политики.

ИдентификаторПолитики -> (строка)

Устойчивая и уникальная строка, идентифицирующая политику.

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

Arn -> (строка)

Amazon Resource Name (ARN). ARN — это уникальные идентификаторы ресурсов Amazon Web Services.

Дополнительную информацию об ARN см. в разделе Amazon Resource Names (ARN) в Общие сведения о службах Amazon Web Services.

Путь -> (строка)

Путь к политике.

Дополнительную информацию о путях см. в разделе Идентификаторы IAM в Руководстве пользователя IAM.

ИдентификаторОсновнойВерсии -> (строка)

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

КоличествоПрикреплений -> (целое число)

Количество сущностей (пользователей, групп и ролей), к которым прикреплена политика.

КоличествоИспользованийГраницыРазрешений -> (целое число)

Количество сущностей (пользователей и ролей), для которых политика используется для задания границ разрешений.

Дополнительную информацию о границах разрешений см. в разделе Границы разрешений для идентификаторов IAM в Руководстве пользователя IAM.

МожноПрикрепить -> (булево)

Указывает, можно ли прикрепить политику к пользователю, группе или роли IAM.

Описание -> (строка)

Дружественное описание политики.

Этот элемент включается в ответ на операцию GetPolicy. Он не включается в ответ на операцию ListPolicies.

ДатаСоздание -> (временная метка)

Дата и время создания политики в формате ISO 8601.

ДатаОбновление -> (временная метка)

Дата и время последнего обновления политики в формате 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.

Spec-Zone.ru

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