尝试创建 AWS Backup 保管库时,为什么会出现“访问被拒绝”错误?

1 分钟阅读
0

我想解决在尝试创建 AWS Backup 保管库时遇到的“访问被拒绝”错误。

简短描述

要用 AWS Backup 创建备份保管库,须具有以下权限:

  • backup:CreateBackupVault
  • backup-storage:MountCapsule
  • kms:CreateGrant
  • kms:DescribeKey
  • kms:RetireGrant
  • kms:Decrypt
  • kms:GenerateDataKey

要解决“访问被拒绝”错误,请验证这些权限配置是否正确。

解决方法

检查您是否具备所需 IAM 权限

检查您是否具有创建备份保管库所需的 AWS Identity and Access Management(IAM)策略。

如已登录 AWS Backup 控制台,请验证登录用户或角色的权限。或者您可能在使用 AWS 命令行界面(AWS CLI)或 SDK。检查附加到 IAM 实体(在 AWS CLI 或 SDK 上配置)的权限。

以下示例策略在 AWS Backup 和 AWS Key Management Service(AWS KMS)中授予创建保管库所需的权限。AWS KMS 密钥是用于加密保管库中的部分备份的加密密钥。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "ExampleStmt1",
      "Effect": "Allow",
      "Action": [
        "kms:CreateGrant",
        "kms:DescribeKey",
        "kms:RetireGrant",
        "kms:Decrypt",
        "kms:GenerateDataKey"
      ],
      "Resource": "arn:aws:kms:us-west-2:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    },
    {
      "Sid": "ExampleStmt2",
      "Effect": "Allow",
      "Action": [
        "backup:CreateBackupVault"
      ],
      "Resource": "arn:aws:backup:us-west-2:444455556666:backup-vault:*"
    },
    {
      "Sid": "ExampleStmt3",
      "Effect": "Allow",
      "Action": [
        "backup-storage:MountCapsule"
      ],
      "Resource": "*"
    }
  ]
}

检查您是否有 IAM 权限边界

查看在用于创建备份保管库的 IAM 实体上设置的 IAM 权限边界。如有权限边界,请确认它允许访问创建保管库所需的所有操作。

检查您的 AWS Organizations 服务控制策略

如果您使用的是 AWS Organizations,请查看您所在组织的服务控制策略(SCP)。

AWS Organizations 会在创建时将名为 FullAWSAccess 的 AWS 托管 SCP 附加到每个根和 OU。此策略允许所有服务和操作。查看与您的账户关联的组织的 SCP 策略。验证是否有任何拒绝创建备份保管库的策略。

查看 AWS KMS 密钥策略

当您使用 AWS KMS 控制台创建 AWS KMS 密钥时,密钥策略会以策略声明开头。此策略声明允许访问 AWS 账户并激活 IAM 策略默认密钥策略声明非常重要。如无此权限,允许访问密钥的 IAM 策略将无效,但拒绝访问密钥的 IAM 策略仍有效。

确保 AWS KMS 密钥策略声明不会拒绝您在创建保管库时使用的 IAM 实体。

相关信息

API 权限:操作、资源和条件参考

创建备份保管库

AWS 官方
AWS 官方已更新 9 个月前