使用Spring Security将SAMl2.0令牌转换为JWT/OIDC



我所在的团队需要使用SAML2.0向现有的JavaSpring应用程序添加OIDC(JWT/id令牌(支持。你们都有什么建议或资源来帮助解决这个问题吗?

从我所做的少量研究来看,我们可能有一种方法可以将SAML2.0令牌转换为JSON Web令牌/OIDC/ID令牌。这是一件事吗?

很抱歉措辞不好,我天生就是一名数据科学家,所以我的软件开发技能不强。

感谢大家所能提供的帮助。

听起来我们可能有一种方法可以将SAML2.0令牌转换为JSON Web令牌/OIDC/ID令牌

这听起来像是在试图用SAML断言交换访问令牌。在这种情况下,您可以查看SAML断言令牌授予。另一种选择是将SAML断言本身视为承载令牌,而不是转换它。我认为Spring Security还不支持这两种方法,但添加一个票证来开始对话也无妨。

使用SAML2.0 向现有Java Spring应用程序添加OIDC(JWT/id令牌(支持

如果我的理解是错误的,而你所说的是你希望你的应用程序能够进行SAML-SP握手和OIDC握手,那么Spring Security确实支持这一点。您可以简单地指定两种机制,如下所示:

http
.authorizeHttpRequests((authorize) -> authorize.anyRequest().authenticated())
.oauth2Login(Customizer.withDefaults())
.saml2Login(Customizer.withDefaults());

为了与您的身份提供商正确协调,每个最终都将有自己的个人配置。请参阅上面的链接了解如何执行此操作。

此外,您可能需要在Id Token代表的用户和Assertion代表的用户之间进行一些协调。和解最终将取决于你自己。

最新更新