AWS IAM:为基于身份的策略添加 "exeption"
AWS IAM: Adding "exeption" for identity-based policy
以下 AWS documentation 我将策略附加到我的组 admin 以强制该组的权限仅适用于启用了 MFA 的用户
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "BlockMostAccessUnlessSignedInWithMFA",
"Effect": "Deny",
"NotAction": [
"iam:CreateVirtualMFADevice",
"iam:DeleteVirtualMFADevice",
"iam:ListVirtualMFADevices",
"iam:DeactivateMFADevice",
"iam:EnableMFADevice",
"iam:ListMFADevices",
"iam:ResyncMFADevice",
"iam:GetAccountSummary",
"sts:GetSessionToken"
],
"Resource": "*",
"Condition": {
"Bool": {
"aws:MultiFactorAuthPresent": "false"
}
}
}
]
}
我的问题是我有一个机器人(我们称它为 arn:aws:iam::12345678:user/my-bot)是 admin 组并且它没有启用 MFA。目前我想到了这两个方案
- 将我的机器人放入不存在 EnforceMFA 策略的不同组(重复代码)
- 以某种方式为机器人启用 MFA(虽然我不喜欢那个选项)
有没有一种方法可以在我的 EnforceMFA 政策中添加一个 exception/condition 来表示“对于这个特定的用户不要应用这个拒绝”)
提前致谢
您可以为您的 bot 用户创建一个标签并添加另一个条件,标记您的服务帐户以识别它。
{
"Condition": {
"Bool": {
"aws:MultiFactorAuthPresent": "false"
},
"StringNotEqual": {
"iam:ResourceTag/type": "bot"
}
}
}
另外创建一个拒绝更改用户标签的策略。
如果您只想排除特定用户,您可以使用 aws:PrincipalArn
全局条件您的策略对除指定用户之外的所有用户应用拒绝:https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html
与 StringNotEqual 结合使用即可!
以下 AWS documentation 我将策略附加到我的组 admin 以强制该组的权限仅适用于启用了 MFA 的用户
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "BlockMostAccessUnlessSignedInWithMFA",
"Effect": "Deny",
"NotAction": [
"iam:CreateVirtualMFADevice",
"iam:DeleteVirtualMFADevice",
"iam:ListVirtualMFADevices",
"iam:DeactivateMFADevice",
"iam:EnableMFADevice",
"iam:ListMFADevices",
"iam:ResyncMFADevice",
"iam:GetAccountSummary",
"sts:GetSessionToken"
],
"Resource": "*",
"Condition": {
"Bool": {
"aws:MultiFactorAuthPresent": "false"
}
}
}
]
}
我的问题是我有一个机器人(我们称它为 arn:aws:iam::12345678:user/my-bot)是 admin 组并且它没有启用 MFA。目前我想到了这两个方案
- 将我的机器人放入不存在 EnforceMFA 策略的不同组(重复代码)
- 以某种方式为机器人启用 MFA(虽然我不喜欢那个选项)
有没有一种方法可以在我的 EnforceMFA 政策中添加一个 exception/condition 来表示“对于这个特定的用户不要应用这个拒绝”)
提前致谢
您可以为您的 bot 用户创建一个标签并添加另一个条件,标记您的服务帐户以识别它。
{
"Condition": {
"Bool": {
"aws:MultiFactorAuthPresent": "false"
},
"StringNotEqual": {
"iam:ResourceTag/type": "bot"
}
}
}
另外创建一个拒绝更改用户标签的策略。
如果您只想排除特定用户,您可以使用 aws:PrincipalArn
全局条件您的策略对除指定用户之外的所有用户应用拒绝:https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html
与 StringNotEqual 结合使用即可!