AWS 用户列表 - 只看到你自己

AWS user listing - only see yourself

我正在使用 AWS IAM 并遇到以下情况:

我有不同的项目,我正在与其他人合作。我有一个分配给 user_x 的用户组 (IAM) project_x_admin。在 user_x 旁边,还有 user_y 和 user_z。

我现在向该组添加策略以允许这些用户配置他们的 SSH 密钥(例如,在 AWS CodeCommit 中使用),如下所述:https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_aws_my-sec-creds-self-manage-no-mfa.html.

现在,当我以 user_x 身份登录并转到用户页面(转到我的详细信息页面,配置 SSH 密钥)时,我收到消息说没有为此授予 ListUsers用户。

问题: 是否可以将 IAM 配置为允许 ListUsers 将结果集限制为仅登录用户?我已经尝试通过标签上的条件,但直到现在,我只得到或所有用户都可见,或者我收到未授予权限的消息。有人知道如何解决这个问题吗?

我尝试使用 Condition 关键字:

{
            "Sid": "AllowListItself",
            "Effect": "Allow",
            "Action": [
                "iam:ListUsers"
            ],
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "aws:username": "${aws:username}"
                }
            }
        }

{
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "iam:ListUsers",
            "Resource": "*",
            "Tags": [ 
                { 
                   "Key": "name",
                   "Value": "user_x"
                }
             ]
        }

{
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "iam:ListUsers",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/name": [
                        "user_x"
                    ]
                },
                "ForAllValues:StringEquals": {"aws:TagKeys": "name"}
            }
        }

所有这些语句导致或所有用户可见或无。 谁能帮我做这个配置?

您实际要解决的问题是您需要访问您的IAM账户设置,由于权限问题,您无法通过账户列表页面访问。

解决方法是在 AWS 控制台的右上角点击您的账户名,然后会出现一个下拉菜单。在该菜单中将有一个 link 到“安全凭证”。单击 link,它将直接带您到您的 IAM 帐户设置,您可以在其中执行上传 SSH 密钥和创建 API 访问密钥等操作。

我发现解决这个问题的方法是与 AWS Organizations 合作,其中每个部门或组织都有一个账户,并在其之上有一个主账户