Подтвердить что ты не робот

Ошибка ошибки в AWS

Я пытаюсь установить групповую политику AWS через CLI AWS следующим образом:

aws iam put-group-policy --group-name my-group --policy-name \
    s3-full-access --policy-document /tmp/policy.json

Это содержимое /tmp/policy.json:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:ListAllMyBuckets"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::*"
    },
    {
      "Action": "s3:*",
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::my-bucket*"
    }
  ]
}

Я продолжаю получать следующую ошибку:

A client error (MalformedPolicyDocument) occurred when calling the PutGroupPolicy operation: The policy is not in the valid JSON format.

Я не знаю, как действовать, ошибка слишком неспецифична. Кто может помочь?

4b9b3361

Ответ 1

Решил эту загадку!

Там имеет префикс file:// перед именем файла политики:

aws iam put-group-policy --group-name my-group --policy-name s3-full-access --policy-document file:///tmp/policy.json

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

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

Ответ 2

+++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++ Команда PS: Пример 1.

aws iam create-role --role-name vmimport - файл файл-политика-материал-политика файл:///policy/trust-policy.json

**** Фактический путь ******: C:\policy\trust-policy.json ++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++

Команда PS: пример 2.

aws iam put-role-policy --role-имя vmimport --policy-name vmimport - файл документа-документа:///policy/role-policy.json

**** Фактический путь ******: C:\policy\role-policy.json ++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++