AWS RDS CLI: AccessDenied на CreateDBSnapshot

Я хочу использовать инструмент командной строки AWS RDS для создания снимка моей базы данных my-database использование create-db-snapshot.

Я создал специальную резервную роль в, я с политикой, которая позволяет мне описывать, копировать и создавать снимки. Это похоже на это (я заменил чувствительный идентификатор x):

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmtxxxxxxxxxxxxxx",
      "Effect": "Allow",
      "Action": [
        "rds:CopyDBSnapshot",
        "rds:CreateDBSnapshot",
        "rds:DescribeDBSnapshots",
        "rds:DescribeEventCategories",
        "rds:DescribeEvents"
      ],
      "Resource": [
        "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:db:my-database"
      ]
    }
  ]
}

После конфигурирования инструментов CLI с aws configure и вводя ключи для этого пользователя я пытался сделать снимок путем выполнения этой команды:

aws rds create-db-snapshot \
    --db-snapshot-identifier "my-database-backup-$(date +%d-%m-%Y-%Hh%Mm)" \
    --db-instance-identifier "my-database"

Это приводит к высказыванию сообщения об ошибке:

Клиентская ошибка (AccessDenied) произошла при вызове деятельности CreateDBSnapshot: Пользователь: arn:aws:i:: xxxxxxxxxxxxxx:user/automated-tasks не разрешен работать: rds:CreateDBSnapshot на ресурсе: arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:snapshot:my-database-backup-24-11-2014-11h07m

Я думал, что это было странно, поскольку это говорит, что доступ запрещен к ресурсу с именем, которое я указал для --db-snapshot-identifier аргумент, как соединено к --db-instance-identifier аргумент.

Если у меня есть достаточные полномочия создать снимок, относился к экземпляру во-первых, не был должен я по сути иметь создавать-полномочия для того снимка?

Так или иначе я пытался изменить ресурс в политике ко всему в RDS:

"Resource": [
    "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:*"
]

Я надеялся, что это будет работать, потому что теперь моя роль имеет полномочия создавать-снимка для всего в RDS ARN моей учетной записи, но это не сделало.

У кого-либо есть подсказка относительно того, почему моя команда возвращает ошибку?

0
задан 24 November 2014 в 13:27
1 ответ

Это действительно странно, но похоже, что разрешение CreateDBSnapshot также должно быть назначено целевому снимку.

Эта политика работает:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmtxxxxxxxxxxxxxx",
            "Effect": "Allow",
            "Action": [
                "rds:CreateDBSnapshot"
            ],
            "Resource": [
                "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:db:my-database",
                "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:snapshot:*"
            ]
        }
    ]
}
1
ответ дан 4 December 2019 в 17:07

Теги

Похожие вопросы