我如何排查与 AWS Artifact 组织协议访问或下载相关的错误?

上次更新日期:2021 年 4 月 27 日

当尝试使用 AWS Artifact 访问或下载 AWS Organizations 协议时,我遇到账户或权限错误。

解决方法

请遵照以下问题排查步骤:

“您的账户不属于组织。要创建或加入组织,请按照‘创建和管理 AWS 组织’中的说明执行操作”

此错误表示您使用不属于 AWS Organizations 的 AWS 账户登录到了 AWS 管理控制台。您的 AWS 账户必须属于 AWS Organizations 才能接受组织协议。您可以按照创建和管理组织中的说明创建或加入组织。

“您已登录 AWS Organizations 中某个组织的管理账户。您可以为管理账户和组织中的所有成员账户管理协议。通过继续操作,您可以授予 AWS 创建 IAM 角色的权限,以识别您在 AWS Organizations 中的组织的成员账户。”

此错误意味着未从管理账户中的 AWS Organizations 控制台启用 Artifact 服务的可信访问权限。必须从组织的管理账户启用 Artifact 服务的可信访问权限。然后,可从管理账户的 Artifact 控制台中的Organization Agreements(组织协议)部分下载对于组织中所有账户都有效的组织协议。

注意:您不能通过成员账户接受组织协议。组织的成员账户只能查看或下载组织协议。

“您没有权限检索有关 AWS 账户组织的信息。您需要具有权限才能描述您的组织”

-或者-

“您没有权限下载协议。您需要具有权限才能从 AWS Artifact 中下载此协议”

此错误表示 AWS Identity and Access Management (IAM) 用户账户无权访问组织协议。

如果要从管理账户访问 IAM 用户的组织协议,请确保权限类似于以下内容:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "artifact:AcceptAgreement",
                "artifact:DownloadAgreement",
                "artifact:TerminateAgreement"
            ],
            "Resource": [
                "arn:aws:artifact::*:customer-agreement/*",
                "arn:aws:artifact:::agreement/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:ListRoles",
            "Resource": "arn:aws:iam::*:role/*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:CreateRole",
            "Resource": "arn:aws:iam::*:role/service-role/AWSArtifactAccountSync"
        },
        {
            "Effect": "Allow",
            "Action": "iam:AttachRolePolicy",
            "Resource": "arn:aws:iam::*:role/service-role/AWSArtifactAccountSync",
            "Condition": {
                "ArnEquals": {
                    "iam:PolicyARN": "arn:aws:iam::aws:policy/service-role/AWSArtifactAccountSync"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "organizations:DescribeOrganization",
                "organizations:EnableAWSServiceAccess",
                "organizations:ListAccounts",
                "organizations:ListAWSServiceAccessForOrganization"
            ],
            "Resource": "*"
        }
    ]
}

如果要从成员账户访问 IAM 用户的组织协议,请确保权限类似于以下内容:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "artifact:AcceptAgreement",
                "artifact:DownloadAgreement"
            ],
            "Resource": [
                "arn:aws:artifact:::agreement/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "iam:CreateRole",
            "Resource": "arn:aws:iam::*:role/service-role/AWSArtifactAccountSync"
        },
        {
            "Effect": "Allow",
            "Action": "iam:AttachRolePolicy",
            "Resource": "arn:aws:iam::*:role/service-role/AWSArtifactAccountSync",
            "Condition": {
                "ArnEquals": {
                    "iam:PolicyARN": "arn:aws:iam::aws:policy/service-role/AWSArtifactAccountSync"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "iam:ListRoles",
            "Resource": "arn:aws:iam::*:role/*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "organizations:DescribeOrganization",
                "organizations:ListAWSServiceAccessForOrganization"
            ],
            "Resource": "*"
        }
    ]
}

有关更多信息,请参阅控制访问权限

“您的组织必须启用所有功能。”

您的组织仅配置了整合账单。要使用 AWS Artifact 中的组织协议,您的组织必须启用 AWS Organizations 的所有功能。有关更多信息,请参阅启用组织中的所有功能


这篇文章对您有帮助吗?


您是否需要账单或技术支持?