java - 如何在运行时从数据库动态加载身份提供者 (IdP) Sprint Security SAML

标签 java spring saml saml-2.0 spring-security-saml2

有没有办法在使用 SAML 2.0 的 Spring Security Extension 时在运行时从数据库添加新的 IdP

如何在不重启服务器或应用程序的情况下,通过在运行时从用户那里获取所需的属性,将新的身份提供者添加到 Java Web 应用程序中。

以及需要将所有通用属性(如 entityId、SSO 身份验证 URL 和公共(public) X.509 证书)作为输入,以便在不重启服务器的情况下将新的 IdP 添加到现有 Web 应用程序。

最佳答案

您可以操纵 MetadataManager 以动态添加新的 IdP 或删除现有的 IdP。

yourMetadataManagerBean.removeMetadataProvider(MetadataProvider provider)
yourMetadataManagerBean.addMetadataPRovider(MetadataProvider newProvider)

然后不要忘记通过调用刷新上下文

yourMetadataManagerBean.setRefreshRequired(true);
yourMetadataManagerBean.refreshMetadata();

关于java - 如何在运行时从数据库动态加载身份提供者 (IdP) Sprint Security SAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51154079/

相关文章:

validation - 是否有必要验证 SAML 断言

single-sign-on - ADFS、WIF、WS Federation、SAML 和 STS 之间有什么区别?

java - 连接池监控

android-spring resttemplate 管理 cookie

java - 如何密切监视 java.util.map 的某些插入

java - Spring Batch - 根据记录计数写入多个文件

java - 如何检测过期 session 与无 session

security - Adfs: token 解密证书和依赖方签名验证证书之间的区别

java - 如何更新对象列表JDO

java - 如何在 JSP 中使用我自己的类,这是一个好方法吗?