OpenID Connect依赖方中的用户映射



在这种情况下,我的Relying Party(RP)不仅想获得有关用户的信息,还需要将用户映射到RP的内部用户。因此,我想将Identity Provider(IdP)的现有用户映射到RP中的用户/组。如何使用OpenID Connect实现这一点(IdP和RP有信任关系;两者都由我控制)?

解决这个问题的其他选择是什么?

这里有两种方法;一个来自OpenIDConnect的观点,另一个来自用户目录处理。

Id令牌声明

OpenIDConnect规范在id令牌中定义了标准声明,并提供了定义自己声明的自由。例如,如果RP不能依赖于sub声明来识别和映射最终用户,则可以引入可用的标准声明之外的自定义声明。

ID令牌可能包含其他声明。任何未被理解的索赔必须被忽略

例如,您可以在id令牌中定义一个声明rp_identifier,该令牌将为您提供RP用户id。

这将需要对您的IDP进行一些配置,并将所需的标识符存储在IDP存储中。

目录同步

不确定用户目录是如何设置的。但是,如果您使用的是外部IDP,您可能需要同步您的内部和外部用户目录。我不是这个领域的专家,但为了供您参考,本文解释了有关Azure active directory同步的内容。

尽管用户同步不在OpenIDConnect的范围内,但在某个时候,许多迁移到OpenIDConnect上的用户必须将内部用户映射到IDP提供的用户。

最新更新