9

有没有办法为使用 AWS SSO 登录的用户禁用编程访问?是否可以使用策略或组来控制编程和控制台访问?

4

3 回答 3

1

不,您不能阻止用户登录并拒绝以编程方式访问,因为一旦用户登录,他们就可以选择以编程方式获取所需的详细信息。

于 2021-09-28T13:01:37.050 回答
0

用户通过 SSO 拥有的权限仍然可以通过 AWS IAM(身份和访问管理)组和角色进行管理。用户在通过 CLI 或开发工具包以编程方式访问 AWS 时,可以使用用户在 AWS 控制台中通过 IAM 拥有的相同权限。

用户获取会话令牌不需要任何权限。GetSessionToken 操作的目的是使用 MFA 对用户进行身份验证。您不能使用策略来控制身份验证操作。 资源

因此,我认为您不能阻止用户使用访问密钥来获取临时会话令牌以进行编程访问。

您为什么要阻止用户进行编程访问,假设您的意思是通过编程访问 CLI 和 SDK 访问 AWS,我是对的吗?

于 2021-09-27T08:55:33.273 回答
0

是的,您可以,但究竟将如何隐藏在您组织的 SSO 实施的实施细节中。您的 SSO 的自定义身份代理负责将特定用户的 AD 凭证映射到 AWS IAM 角色,该角色可能有权也可能没有登录 CLI 的权限。用户获得的确切角色需要在代理中可控。另一种方法是控制对使用 CLI 或 SDK 所需的 AWS 访问密钥的访问。您的 SSO 用户不应有权生成自己的密钥。它们应该来自 IT 或者应该是您的 SSO 实施的可配置特性。例如,在我的组织中,AWS 门户中有 2 个链接;一个用于控制台访问,另一个用于显示可以复制到 bash 环境或与 SDK 一起使用的临时访问密钥。

于 2021-09-28T14:42:19.040 回答