跳至内容

如何对 AWS Backup 中跨账户复制操作的 "Access denied" 错误进行故障排除?

3 分钟阅读
0

当我尝试在 AWS Backup 中跨 AWS 账户创建备份副本时,我收到 "Access denied" 错误。

解决方法

"Call to AWS Backup service" 错误

如果目标保管库访问策略没有 backup:CopyIntoBackupVault 权限,您会收到以下错误消息:

"Access denied when trying to call AWS Backup service"

如果备份保管库名称不正确或不存在于目标账户,也会出现此错误。

要解决此错误,请完成以下步骤:

  1. 要允许 AWS Identity and Access Management (IAM) 角色复制备份,请在您的 IAM 角色策略中添加以下语句:

    {    "Version": "2012-10-17",  
      "Statement": [  
        {  
          "Action": "backup:CopyIntoBackupVault",  
          "Resource": "*",  
          "Effect": "Allow"  
        }  
      ]  
    }
  2. 要允许 AWS Backup 访问源账户,请在您的目标保管库访问策略中添加以下语句:

    {      "Version": "2012-10-17",  
        "Statement": [  
            {  
                "Effect": "Allow",  
                "Principal": {  
                    "AWS": "arn:aws:iam::SourceAccountID:root"  
                },  
                "Action": "backup:CopyIntoBackupVault",  
                "Resource": "*"  
            }  
        ]  
    }

    **注意:**请将 SourceAccountID 替换为您的源账户 ID。

  3. 验证复制任务的 IAM 角色是否包含允许 backup.amazonaws.com 服务访问的信任关系。策略示例:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "Service": "backup.amazonaws.com"
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }
  4. 验证您的目标备份保管库名称是否正确。备份保管库名称区分大小写。例如,ProdVault 和 prodvault 是两个不同的保管库。

  5. 在尝试将备份复制到保管库之前,请确保该保管库存在于目标账户中。

有关详细信息,请参阅设置跨账户备份。

"Insufficient privileges" 错误

如果 IAM 实体没有执行复制操作所需的 backup:StartCopyJob 权限,您会收到以下错误消息:

"Access denied Insufficient privileges to perform this action.Please consult with the account administrator for necessary permissions."

要解决此错误,请为创建备份副本的 IAM 实体附加 ** backup: startCopyJob ** 权限。请为 IAM 角色附加以下语句:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": "backup:StartCopyJob",
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

然后,确认保管库访问策略未显式拒绝 backup:StartCopyJob 操作。

"Source and destination account" 错误

如果您的源账户和目标账户不属于同一个 AWS Organizations,则会收到以下错误消息:

"Copy job failed.Both source and destination account must be a member of the same organization."

要解决此问题,请将源账户或目标账户移至与另一账户相同的组织中。

"Region to Region initiation error" 错误

如果提供的资源类型不支持某项功能,您会收到以下错误消息:

"Copy job from us-west-2 to us-east-1 cannot be initiated for RDS resources.Feature is not supported for provided resource type."

如果您的资源不支持同时执行跨账户和跨区域的复制操作,也会收到此错误。例如,如果 Amazon Relational Database Service (Amazon RDS) 不支持在单次操作中进行跨区域和跨账户的备份复制,则会出现此错误。这意味着您无法使用此功能。

要解决此问题,请验证您的 AWS 服务资源是否同时支持跨账户和跨区域备份。要查看 AWS Backup 中各项 AWS 服务支持哪些功能,请查看不同资源的功能可用性。要查看不同区域的功能可用性,请查看不同 AWS 区域的功能可用性。

"Given key ID" 或 "source snapshot KMS key does not exist" 错误

如果目标账户无权使用加密密钥,您会收到以下错误消息之一:

  • "Given key ID is not accessible"
  • "The source snapshot KMS key does not exist, is not enabled or you do not have permissions to access it"

要解决这些错误,请完成以下步骤:

  • 确保源账户的 AWS Key Management Service (AWS KMS) 密钥策略包含目标账户的根用户。然后,目标账户的根用户可将所需的 IAM 权限委托给用户和角色。
  • 根据资源是否支持全面 AWS Backup 管理来更新您的密钥策略。

例如,Amazon Simple Storage Service (Amazon S3) 和 Amazon Elastic File System (Amazon EFS) 资源提供全面支持。对于此类资源,请记住以下几点:

  • 保管库的加密密钥将作为源 AWS KMS 密钥。
  • 您可以拥有客户管理型密钥或 AWS 托管式密钥。
  • 如果您使用客户管理型密钥,则必须更新密钥策略以包含目标账户。

有关更多信息,请参阅 AWS Backup 如何与受支持的 AWS 服务配合使用。

对于未提供全面支持的资源,例如 Amazon Elastic Compute Cloud (Amazon EC2) 和 Amazon RDS,其密钥策略的生效方式有所不同。对于此类资源,请记住以下几点:

  • 原始资源的加密密钥将作为源 AWS KMS 密钥。
  • 密钥必须是客户管理型密钥。
  • 您必须修改密钥策略以包含目标账户。

**重要事项:**由于以下原因,您无法使用 AWS 托管式密钥作为源 AWS KMS 密钥:

  • 您无法修改 AWS 托管式密钥的密钥策略。
  • 您无法与目标账户共享 AWS 托管式密钥。

有关更多信息,请参阅如何解决在 AWS Backup 中执行跨账户复制时收到的 "Given key ID not accessible" 错误?

相关信息

跨 AWS 账户创建备份副本

AWS Backup 中的备份加密

如何在 AWS Backup 中加密我的备份和副本?

AWS 官方已更新 1 年前