1

我们计划将 AWS WebIdentityFederation 用于单页应用程序。

我创建了 OIDC 提供程序,它是一个外部 ADFS,并创建了一个 WebIdentityFederation 代入角色。我能够通过 ADFS 生成 id_token。在这个 id_token 中,我添加了角色声明,即 AD 组(如果需要,我可以更改为 AWS 角色 ARN),然后从 AWS STS API 生成临时 STS 令牌。

但是,看起来,AWS WebIdentityFederation 角色不会验证 id_token 中的任何角色声明,就像 AWS 对 SAML 联合所做的那样。这会创建一个授权问题,如果用户拥有有效的 id_token,他们可以承担任何 WebIdentityFederation 角色。

例如:如果我有两个 WebIdentityFederation 角色 READONLY 和 ADMIN,那么具有有效 id_token 的用户可以同时承担 READONLY 和 ADMIN,即使在 id_token 中用户具有 READONLY 角色。

有没有办法验证 id_token 中存在的角色或任何其他自定义声明?可以通过信任策略条件来完成吗?

4

0 回答 0