问题标签 [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 回答
74 浏览

spring - 在 Spring 安全扩展中限制 Angular URL

我已将 spring security saml 扩展与我的 angular 4 项目集成。我正在尝试在春季使用 antmatchers 限制对 URL 的访问。

如果 url 像http://server:port/context/#/welcome,我想让用户登录

但是当用户单击注销按钮时,他将被重定向到同一页面内的#logout(因为这是一个 SPA)。但是由于即使是注销 url 的 spring 安全规则,用户也会被重定向到登录。

如何不限制 /#/logout url 要求身份验证。到目前为止,这是我在春季安全方面的规则

如果有人能告诉我如何实现这一目标,那将是一个很大的帮助。

0 投票
1 回答
1275 浏览

java - Spring Security SAML:仅接受来自 IDP 的签名 SAML 响应消息

我们在我们的 Java 应用程序中使用Spring Security SAML(v1.0.3) 用于带有 IDP 的 SAML SSO。

要求:仅接受来自 IDP 的签名 SAML 响应消息,如果 SAML 响应未签名,则抛出异常。

实际结果:即使 SAML 登录响应消息中完全缺少签名信息,它也会被接受,并且 Spring Security SAML 库不会抛出异常。

观察

  1. 如果 SAML 登录响应消息中存在错误的签名信息,则会引发正确的异常。
  2. 对于注销消息,我们在扩展元数据生成器中有属性requireLogoutRequestSignedrequireLogoutResponseSigned用于控制是否应签署注销请求和响应。
  3. 对于登录响应消息,我们有一个属性wantAssertionSigned来指示 SP 是否需要签名断言。

问题

  1. 框架中是否有任何属性或方法Spring Security SAML使 SP 只能接受来自 IDP 的签名登录响应(在消息级别)?
  2. 据我了解,SAML 响应消息和断言的签名是两件不同的事情。这是对的吗?该属性wantAssertionSigned仅启用签名断言而不启用消息。
0 投票
2 回答
1548 浏览

java - 在反向代理后面使用 SP 时出现 Spring saml 问题

我们使用 Spring SAML 扩展实现了带有 ADFS 身份验证的 SAML。SP 在 Nginx 后面的服务器 A 上,URL 的格式为https://serviceprovider/saml/login(只是编造的),ADFS 位于单独网络中的客户端。客户可以访问https://serviceprovider/saml/login URL,他们从 ADFS 获得输入凭据的提示,他们这样做了,并且由于某种原因,他们被重定向到具有 SP 所在的内部 IP 地址的 URL托管(服务器 A),当然不能通过 Internet 访问,例如https://xxxx:8443。我们的代码没有硬编码,Spring/SAML 设置都使用 SP 和 IdP 的站点 URL。也验证了https://serviceprovider/saml/login/metadata返回正确的值。

有没有人处理过这样的情况?如果是这样,您是如何解决的?谢谢

0 投票
1 回答
165 浏览

spring-boot - 单个 .jks 文件包含多个 SAML 应用程序的密钥库

我的应用程序需要使用 SAML 连接到多个 Idp 提供者,为此我生成了多个带有自己的密钥别名和密码的 .jks 文件,但我需要一个包含所有它们的单个 .jks 文件。有什么方法可以合并这些,我已经尝试过 KeyStore -import 但它不起作用我在应用程序中使用 Spring Security SAML 扩展,它需要一个指向单个 .jks 文件的单个密钥管理器对象

0 投票
1 回答
1513 浏览

java - 如何使用带有 jks 或签名元数据的 Spring SAML 代码

IDP只提供了.crt文件和元数据xml文件,IDP告诉我们.crt文件没有密码,我用命令创建了jks文件:keytool -import -alias zoom -trustcacerts -file qa.crt -keystore keystory.jks . 现在,我下载了 spring SAML 演示代码,并将 securyContext.xml 更改为如下:

-----matadata.xml----------


--------------securiyContext.xml-------- 但是SP初始化的地方总是失败,错误信息:

我的问题是如何将 spring saml 与签名的元数据 xml 文件集成。我应该创建另一个 jks 文件吗?我克隆了许多 java 演示,他们在springWebSecurityContext.xml中配置了元数据 xml 文件和 jks 文件。

但我认为元数据 xml 已经包含证书和密钥。我认为我不再需要配置 jks 文件了,对吧?

你能帮我找出如何将 saml 集成到我的项目中吗?谢谢大家!

0 投票
1 回答
6204 浏览

spring-boot - java.lang.ClassCastException: org.opensaml.core.xml.schema.impl.XSAnyBuilder 不能转换为 org.opensaml.xml.XMLObjectBuilder

在我们的应用程序中,我们正在尝试升级到 Spring boot 2,我们正在使用 spring-security-saml2-core:1.0.4.RELEASE,在运行应用程序时我们遇到了以下异常。看来,classpaath 上有两个 jars xmltooling-1.4.6opensaml-core-3.3.0,它们有相同的文件default-config.xml。在这种情况下,类加载器碰巧将opensaml-core-3.3.0放在xmltooling-1.4.6.jar 之前,并且default-config.xml加载错误

有人可以在这里帮忙。请..

0 投票
0 回答
363 浏览

spring - 反向代理背后的 Spring Security SAML

我已在本地开发平台上成功地将 SSO/SAML2 与 Spring Security SAML 集成。

现在,我想将它安装在反向代理后面的生产环境中。反向代理配置如下: https://mycustomer.company.com/api/auth/xxx被重定向到http://local_ip:local_port/auth/xxx

我遵循了 SAMLContextProviderLB bean 配置(第 10.1 章 - https://docs.spring.io/spring-security-saml/docs/current-SNAPSHOT/reference/pdf/spring-security-saml-reference.pdf)。

但登录成功后,我被重定向到这个无效的网址:http ://mycustomer.company.com**/auth/**

我认为它来自#successRedirectHandler bean。但是,如果我输入正确的 URL ( https://mycustomer.company.com/api/auth/index.jsp ),我会在 SAML 识别过程中无限循环(返回 IDP,然后返回 SDP ...)。

我当然误解了配置中的某些内容,但我看不出在哪里。谢谢你的帮助。

0 投票
1 回答
602 浏览

spring-boot - 使用 sprig boot 2 升级 spring-security-saml2-core

我们正在尝试将我们的应用程序升级到 spring boot 2.0 并且在这样做时我们得到了错误java.lang.ClassCastException: org.opensaml.core.xml.schema.impl.XSAnyBuilder cannot be cast to org.opensaml.xml.XMLObjectBuilder。经过大量研究,我们发现,我们遇到了麻烦,因为我们在类路径中有两个opensaml jar(2和3)并决定升级以将spring-security-saml2-core jar升级到2.0.0。

我们下载了 2.0.0.SNAPHSHOT jar,但似乎有很多类已更改/重命名。是否有任何文档/示例可以让我轻松比较和迁移我的旧代码。例如,旧的 jar SamlBootStrap 类和新的没有。

请帮忙

0 投票
1 回答
530 浏览

spring-saml - 为什么 Spring SAML SP 需要 keystore 和相关的 key 配置?

我有一个spring boot应用程序,打算使用Okta,参考下面2个示例,为服务提供者配置keystore的目的是什么?

https://github.com/spring-projects/spring-security-saml-dsl/blob/master/samples/spring-security-saml-dsl-sample/src/main/java/com/example/SecurityConfiguration.java

https://github.com/oktadeveloper/okta-spring-boot-saml-example/blob/master/src/main/java/com/example/demo/SecurityConfiguration.java

0 投票
1 回答
93 浏览

spring-security-saml2 - 当 application.yml 只有一个 IdP 时,如何避免“选择身份提供者”页面?

当application.yml只有一个 IdP 条目时,有没有办法避免“选择身份提供者”页面?...

谢谢

纳迦维杰亚普拉姆