AWS IAM-如何禁止用户通过控制台进行更改,但允许通过CLI更改API
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS IAM-如何禁止用户通过控制台进行更改,但允许通过CLI更改API相关的知识,希望对你有一定的参考价值。
对于Amazon Webservices IAM,我可以通过一些策略创建角色,该策略仅允许在控制台中读取,但允许使用API / CLI / Terraform进行读取/写入。
目的是强制使用基础结构代码以避免配置漂移。
非常欢迎您提供任何对最佳做法的见解或参考。
答案
重要的是,没有万无一失的方法来做到这一点。没有系统可以确定如何在客户端发出请求。
话虽这么说,应该有一种方法来实现您想要的。您将要使用IAM条件aws:UserAgent
(docs here)来阻止用户使用浏览器。这是一个例子:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": "*"
},
{
"Effect": "Deny",
"Action": "*",
"Resource": "*"
"Condition": {
"StringLike": {
"aws:UserAgent": "console.amazonaws.com"
}
}
}
]
}
CloudTrail记录UserAgent的请求,因此您可以使用它来确定要阻止的UserAgent。 (docs here)
以上是关于AWS IAM-如何禁止用户通过控制台进行更改,但允许通过CLI更改API的主要内容,如果未能解决你的问题,请参考以下文章
更改 IAM 用户密钥时如何更新 Elastic Beanstalk 环境变量中的 AWS 凭证?
如何使用STS GetCallerIdentity Caller JSTS以stringjson的形式返回AWS IAM用户。