标签: amazon-iam

如何在json IAM策略中添加注释?

IAM政策是复杂的野兽.在制作它们时添加注释会很不错.例如,

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1422979261000",
      "Effect": "Allow",
      "Action": [
        "route53:ListHostedZones",
      ],
      "Comment": "Foo"
      # or Bar
      "Resource": [
        "*"
      ]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

这些都不奏效.是否存在为这些政策添加评论的方法?

json amazon-web-services amazon-iam

24
推荐指数
2
解决办法
7680
查看次数

如何允许组承担角色?

如何允许组中的所有成员在AWS IAM中承担角色?

我尝试使用以下语句,但在AWS IAM Principal Element中指定,组不能是Principal.

我希望实现如下所示:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::***:group/developer"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

这个想法是该小组的所有成员都group/developer应该能够担任这个角色.目标是我不必单独指定一个组中的每个成员.

有没有办法实现这个目标?

identity-management amazon-web-services amazon-iam

24
推荐指数
3
解决办法
7442
查看次数

该策略未通过旧版解析

我正在尝试在AWS中创建IAM角色,但在创建时我遇到了错误

"我们在处理您的请求时遇到以下错误:在添加角色权限时出现问题.将在未经许可的情况下创建角色.策略未能通过旧版解析"

{"Version": "2012-10-17",  "Statement": [
{
  "Effect": "Allow",
  "Action": [
    "logs:CreateLogGroup",
    "logs:CreateLogStream",
    "logs:PutLogEvents"
  ],
  "Resource": "arn:aws:logs:*:*:*"
},
{
  "Action": [
    "sqs:SendMessage",
    "sqs:GetQueueUrl"
  ],
  "Effect": "Allow",
  "Resource": "arn:aws:sqs:ap-northeast-1:SOME_ID_HERE:test-messages"
}]}
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-iam aws-lambda

24
推荐指数
5
解决办法
2万
查看次数

使用 CDK Deploy 需要哪些 IAM 权限?

我的团队有一个在执行 IAM 角色下运行的管道。我们希望通过 CloudFormation 或 CDK 将代码部署到 AWS。

过去,我们会在创建/更新 CloudFormation 堆栈之前使用执行 IAM 角色将一些工件上传到 S3 存储桶。

我们最近切换到 CDK,并试图通过使用 CDK Deploy 获得尽可能多的自动化,但遇到了许多我们需要添加的权限项,而我们之前没有这些项(例如,cloudformation:GetTemplate) .

我们不想只授予 * (我们想遵循最小权限),但我找不到任何明确的记录列表。

CDK Deploy 是否有标准的权限列表?除了标准列表之外,还有什么“值得拥有的”吗?

aws-cloudformation amazon-iam aws-cdk

24
推荐指数
3
解决办法
6365
查看次数

“eksctl create iamserviceaccount”在 EKS 集群上的作用是什么?

AWS 支持服务账户的 IAM 角色 (IRSA),允许集群操作员将 AWS IAM 角色映射到 Kubernetes 服务账户。

为此,必须在 EKS 集群中创建一个iamserviceaccount :

eksctl create iamserviceaccount \
    --name <AUTOSCALER_NAME> \
    --namespace kube-system \
    --cluster <CLUSTER_NAME> \
    --attach-policy-arn <POLICY_ARN> \
    --approve \
    --override-existing-serviceaccounts
Run Code Online (Sandbox Code Playgroud)

问题是我不想使用上面的eksctl命令,因为我想使用terraform.

eksctl 命令除了创建服务帐户之外还执行其他操作吗?如果它只创建一个服务帐户,那么YAML它的代表是什么?

amazon-web-services amazon-iam kubernetes terraform amazon-eks

24
推荐指数
3
解决办法
1万
查看次数

为AWS控制台登录强制执行MFA,但不为API调用强制执行

我希望强制所有IAM用户(本地和远程)启用和激活他们的MFA设备.我希望他们都能让MFA完成各自的任务.

我正在尝试以下政策

{
      "Effect": "Allow",
      "Action": "*",
      "Resource": "*",
      "Condition": {"Bool": {"aws:MultiFactorAuthPresent": "true"}}
}
Run Code Online (Sandbox Code Playgroud)

然而; 无论您如何通过控制台或API访问服务,此政策均适用

由于没有暗示MFA身份验证,所有用户都会自动执行大量自动化操作并实现自动化.

作为第一步,我们希望每个人至少能够通过MFA进行控制台登录; 但同样不应强制它们将MFA用于自动化中使用的API调用.

这可以通过IAM政策实现吗?

谢谢

amazon-web-services amazon-iam

23
推荐指数
5
解决办法
6793
查看次数

您当前的用户或角色无权访问此 EKS 集群上的 Kubernetes 对象

不知道这是 AWS 的错误还是其他错误。我创建了一个 IAM 用户并为其提供了完整的管理策略。然后,我使用该用户通过 CLI 创建 EKS 集群,但是当我使用root 用户eksctl登录 AWS 控制台时,在尝试访问集群节点时出现以下错误。

\n

您当前的用户或角色无权访问此 EKS 集群上的 Kubernetes 对象\n这可能是由于当前用户或角色没有描述集群资源的 Kubernetes RBAC 权限,或者在集群中没有条目\xe2\x80\x99s身份验证配置映射。

\n

我有这些问题

\n
    \n
  1. root 用户是否具有从控制台查看每个资源的完全访问权限?
  2. \n
  3. 如果上述情况成立,是否意味着当我从 CLI 创建资源时,我必须使用同一用户登录才能查看它?
  4. \n
  5. 或者有什么方法可以将策略附加到根用户?没有在控制台中看到类似的内容。
  6. \n
\n

AWS本身不建议为root用户创建访问密钥并将其用于可编程访问,所以我现在很困惑。有人帮忙

\n

到目前为止我看到的所有问题以及此处文档的链接都在讨论在 AWS IAM 中创建的用户或角色,而不是根用户。

\n

amazon-web-services amazon-iam kubernetes amazon-eks eksctl

23
推荐指数
3
解决办法
4万
查看次数

使用IAM限制对特定Cloudfront分发的访问

我正在尝试将特定IAM用户的访问权限授予特定的Cloudfront分发版.我试过这个政策:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1428659042000",
            "Effect": "Allow",
            "Action":["cloudfront:*"],
            "Resource": [ "arn:aws:cloudfront:E3J2B3GMZI73G0" ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

AWS-IAM策略检查程序表明arn无效.根据有关Cloudfront的IAM限制的文档,AWS未指出任何限制对特定分发的访问的示例.他们总是指:

"Resource":"*"
Run Code Online (Sandbox Code Playgroud)

关于如何让特定用户访问具体Cloudfront Distribution的想法?

amazon-web-services amazon-cloudfront amazon-iam

21
推荐指数
1
解决办法
5456
查看次数

AWS s3存储桶策略无效组主体

以下是如何使用AWS S3存储桶策略强制执行文件类型上载

应用存储桶策略时:

{
  "Version":"2008-10-17",
  "Statement": [
    {
      "Sid":"AddPerm",
      "Effect":"Allow",
      "Principal": { "AWS": "arn:aws:iam::111122223333:group/admins" },
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::bucket/*.txt"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

组"管理员"肯定存在,但我得到错误:"策略中的无效主体 - "AWS":"arn:aws:iam :: 111122223333:group/admins""

为什么不被认可?

amazon-s3 amazon-web-services amazon-iam

20
推荐指数
1
解决办法
7821
查看次数

AWS中IAM角色和IAM用户之间的差异

IAM角色和IAM用户之间有什么区别?该IAM常见问题有一个条目解释它,但它是模糊的,不是很清楚:

IAM用户具有永久的长期凭据,用于直接与AWS服务交互.IAM角色没有任何凭据,也无法向AWS服务发出直接请求.IAM角色应由授权实体承担,例如IAM用户,应用程序或AWS服务(如EC2).

我认为IAM角色用于联合登录(例如,使用带有SAML令牌的IdP),并且它们没有像常规IAM用户那样可以下载的永久访问密钥("IAM角色没有任何凭证"部分".

当他们说IAM角色无法直接向AWS服务发出请求时,他们的意思是什么?我可以登录AWS控制台(Web控制台)并创建堆栈等,因此不能这样.

federated-identity amazon-web-services amazon-iam

20
推荐指数
4
解决办法
1万
查看次数