我正在使用此API来获取联合令牌,这些令牌将允许用户访问某些AWS资源,例如S3存储桶以及该存储桶(AWSJavaSDK Get Federated Token)中的目录。
是否可以撤销其应用政策的某些方面?假设该用户在初始策略创建时就可以访问某个目录,然后我只想撤消部分访问。是否可以在不重新发行其他令牌的情况下实现此功能?以下是示例策略。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:ListBucket"],
"Resource": ["arn:aws:s3:::productionapp"]
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": ["arn:aws:s3:::productionapp/*"]
}
]
}
还有其他方法可以实现我的目标吗?
答案 0 :(得分:1)
只有通过更改创建它的IAM用户的权限,才能更改分配给从联合令牌API获得的临时凭证的权限。该用户不能是root用户,因为他们的权限无法更改。
我可能会使用Step Functions来实现它:
15.0
。该函数将生成
每个用户组使用其相应的IAM用户凭据的临时凭据GenerateTmpCredentials
。此功能将创建新的
需要撤销部分访问权限并将其分配给的用户组的策略
相应用户组的IAM用户有关上述工作流程,请参见步骤功能状态机模板
ChangePolicy
上述工作流程将首先调用GenerateTmpCredentials函数,然后等待1个小时,然后将调用ChangePolicy策略函数。
您可以根据需要使用API网关或任何其他Lambda执行状态机。