上次更新日期:2020 年 3 月 27 日
我使用 AWS Backup 从快照还原 Amazon Elastic Compute Cloud (Amazon EC2) 实例。但我收到了一条已编码的错误消息,其内容是:“您无权执行此操作。请检查与您的 AWS Backup 角色关联的权限,并参阅 AWS 文档以了解更多详细信息。” 我应该如何排查此问题?
分辨率使用 AWS Security Token Service (AWS STS) 来解码失败消息。然后确认运行还原作业的 AWS Identity and Access Management (IAM) 角色拥有充分的权限。
注意:当您在 AWS Backup 上使用默认 IAM 角色来运行还原作业,但原始 EC2 实例附加了实例配置文件时,通常会发生这种错误。
1.使用 AWS 命令行界面 (AWS CLI) 运行 decode-authorization-message 命令:如果您使用基于 Linux 的操作系统,则可以组合使用此命令和 jq 工具来获得方便查看的输出:
# aws sts decode-authorization-message --encoded-message (encoded error message) --query DecodedMessage --output text | jq '.'
注意:如果在运行 AWS CLI 命令时遇到错误,请确保您使用的是最新版本的 AWS CLI。
2.此命令会返回与以下类似的输出:
{
"allowed": false,
…..
"context": {
"principal": {
"id": "AROAAAAAAAAAA:AWSBackup-AWSBackupDefaultServiceRole",
"arn": "arn:aws:sts::111122223333:assumed-role/AWSBackupDefaultServiceRole/AWSBackup-AWSBackupDefaultServiceRole"
},
"action": "iam:PassRole",
"resource": "arn:aws:iam::111122223333:role/AmazonSSMRoleForInstancesQuickSetup",
"conditions": {
"items":
}
更新 IAM 角色后,重新运行还原作业。