问题标签 [spring-security-saml2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
18 浏览

java - SAML 与 Grails 2.5.0 多会话创建

我在我的 grails 2.5.0 项目中配置了 SAML。一切正常。但最近我注意到一个奇怪的行为。对于 okta 服务器,当我单击应用程序两次时,它会创建 2 个不同的会话。理想情况下,如果我已经登录,它应该使用我登录的会话,但这不会发生。这不是快速双击,即使我延迟执行此操作,旧选项卡也会注销并且新选项卡的会话处于活动状态。这是预期的行为还是这里遗漏了什么?

0 投票
0 回答
88 浏览

grails - Saml2Login 与 Grails Spring 安全核心

能够使用编译组重定向到 IDP 登录页面:'org.springframework.security',名称:'spring-security-saml2-service-provider',版本:'5.4.6' 在 grails 应用程序中。

无法通过在 spring-security-saml2-service-provider 中添加 compile "org.grails.plugins:spring-security-core:4.0.3" 依赖项(支持 db 用户身份验证所必需的)来重定向到 IDP 登录页面grails 应用程序。

你能就此提出建议吗

0 投票
0 回答
30 浏览

spring-security - 用于 SSO 实施的 OpenAm 与 Spring Security

我们计划在使用 Angular 和 Rest 的地方重新构建我们的应用程序。作为安全性的一部分,我们坚持选择带有 ADFS(使用 SAML2.0)的 OpenAm 与 Spring Security SAML 库。请为这两种 SSO 实现提出一些有效的建议

0 投票
0 回答
290 浏览

spring - 从 spring-security-saml2-core 升级到 Spring Security SAML2 服务提供者

我们将 spring-security-saml2-core 用于 Web 应用程序的 SSO Okta 集成。

GitHub: https ://github.com/spring-projects/spring-security-saml

该项目处于维护模式,将于 2021 年 10 月 6 日终止。请改用 Spring Security 的 SAML 支持。

我需要将 SAML 库升级到 Spring Security SAML2 服务提供商 https://docs.spring.io/spring-security/site/docs/current/reference/html5/#servlet-saml2login

有几个问题:

新库(SAML2 服务提供者)中的 SAMLEntryPoint 等效类或选项是什么?从 SP 启动 SSO 流程的流程是什么?

0 投票
0 回答
52 浏览

spring - spring saml security 中使用的 Stactic SP 元数据文件未下载

我正在使用 Spring Saml Security 并使用注释来提供 SP 元数据文件。我能够执行 SSO,并且当我尝试使用 http://localhost//saml/metadata 下载 SP 元数据文件时,会下载默认 SP 元数据文件而不是本地文件。 我没有使用任何 MetadataGeneratorFilter 来提供 SP 元数据 XML

也可以使用我们自己的登录、元数据和注销 URL,而不是默认 URL。

0 投票
1 回答
55 浏览

spring-boot - @Bean 方法需要有条件地返回 null

我在我的系统中启用了基本身份验证,现在我正在尝试使用 Spring-security-SAML 集成 SAML 身份验证。我创建了一个返回RelyingPartRegistrationRepositorybean 的方法。在一个条件下,虽然用户配置的值不足以创建RelyingPartRegistration,但我必须创建一个带有空数组的 RelyingPartRegistrationRepository ,这是不可能的,因为有检查不为空。另一种选择是从 Bean 方法返回 null。这也是一个失败案例,因为在这种情况下上下文初始化将失败。我想要的只是要么不初始化这个bean,要么至少不阻止上下文初始化。这样我至少可以切换回基本身份验证。

0 投票
1 回答
148 浏览

angular - 在 Jersey 和 Spring SAML 安全 SSO 验证之后路由到 Angular 组件

我正在开发一个应用程序,它使用 Angular 作为前端和 Jersey 与 Spring SAML Security 集成以进行 SSO 身份验证。

我尝试从 Angular ( http://localhost:4200) 调用该应用程序,该应用程序将调用 Jersey Project 的 API 调用,这将返回一个 URL(与 Jersey Server 相关的 URL)来访问服务器以显示 IDP 登录页面。登录到 IDP 后,它会将我路由回服务器,从这里我想将响应重定向到 Angular 以显示主屏幕。

下面在 Angular 组件中使用,它将使用 ( https://localhost/saml/login) 来击中 Jersey

登录完成后,我登陆https://localhost/loginComplete必须路由到http://localhost:4200/home

请提出任何可能的解决方案。

0 投票
0 回答
307 浏览

java - Spring Security (5.5.2) SAML 2.0 服务提供者 SAMLRequest/AuthnRequest 编组和签名错误

按照参考文档:

https://docs.spring.io/spring-security/site/docs/5.5.2/reference/html5/#servlet-saml2login-opensaml-customization

和示例项目:

https://github.com/spring-projects/spring-security-samples/tree/5.5.x/servlet/spring-boot/java/saml2-login

我已经实现了与 Okta 身份提供者集成的一个小原型,这让我可以选择签署 AuthnRequest。生成 SAMLRequest 时一切正常:

Spring Security SAML 模块使用最新的 OpenSAML 库实现,这将使我能够在 AuthnRequest 实例被序列化之前对其进行后处理。然后我定义了一个自定义的 AuthnRequestMarshaller,如文档中所指定,用于配置一些参数:

即使在这种情况下,一切正常。当我在 AuthnRequest 中定义一个新元素(NameIDPolicy)时出现一个奇怪的错误:

generetad AuthnRequest 具有新的 xml 元素 (NameIDPolicy),但签名和摘要值已消失:

可能发生这种情况是因为我修改了已签名的原始元素,但我想知道在定义(编组)对象的所有操作之后是否不应该使用自定义编组器 AuthnRequest 签名过程?

可能,一旦定义了 AuthnRequest 对象的所有元素,是否有办法生成新的 (XML) 签名?

提前致谢。

更新:

我尝试使用以下代码手动添加签名:

签名出现在我的 XML 日志中:

但现在我从 Spring/OpenSAML 签名计算中收到了这个异常:

:-(

0 投票
0 回答
35 浏览

grails - 创建名为 samlAuthenticationProvider 的 bean 时出错?

我正在运行 grails 2.2,并且正在努力让 SAML 集成正常工作。

我正在使用的 grails saml 插件是

编译“:spring-security-saml:1.0.0.M20”

我一直在关注这个教程

https://www.wave-access.com/public_en/blog/2014/june/23/how-we-configured-saml-20-on-grails.aspx

在修复了许多小问题后,我让应用程序几乎可以运行

这是我在运行应用程序时遇到的完整错误

我感谢对错误的任何见解。谢谢!

0 投票
0 回答
104 浏览

java - Spring Security Saml 错误从 SOAP 响应解密密钥 - 没有安装的提供程序支持此密钥:sun.security.ec.ECPrivateKeyImpl

我正在尝试使用 Spring Security SAML 实现 SSO,但是在从 SOAP 断言响应中解密密钥时发生错误。
SOAP 响应:

日志:

环境:
Java 1.8 (291),在 Java 11 和 17 上尝试过,结果相同
Spring Boot 1.4.1
spring-security-saml2-core 1.0.10.RELEASE
opensaml-core 4.1.0

提供者:

  1. sun.security.provider.Sun sun.security.rsa.SunRsaSign
  2. sun.security.ec.SunEC com.sun.net.ssl.internal.ssl.Provider
  3. com.sun.crypto.provider.SunJCE sun.security.jgss.SunProvider
  4. com.sun.security.sasl.Provider
  5. org.jcp.xml.dsig.internal.dom.XMLDSigRI
  6. sun.security.smartcardio.SunPCSC
  7. org.bouncycastle.jce.provider.BouncyCastleProvider
  8. sun.security.mscapi.SunMSCAPI