问题标签 [opensaml]

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 投票
1 回答
9564 浏览

java - 在 Java 中从给定的 XML 创建 OpenSAML 断言

一段时间以来,我一直在反对这一点,并且开始取得进展。但是,我在将 SAML 2 断言(在 XML 中)的字符串表示形式转换为断言对象时遇到了一些麻烦。

看起来我得到了一个org.w3c.dom.Document带有适当数据的有效数据,而且我似乎SAMLObjectBuilder<Assertion>从 builder factory 得到了一个有效数据,但是当我尝试将它们放在一起时,我得到的只是一个空白断言;主题、发行者、发行时间等都是null,尽管它们在 XML 中明确设置。

有谁看到我做错了什么,并可以提出解决方案?

在 nameID 赋值时,assertion.getSubject()返回null,表达式的其余部分失败。

我使用的示例是来自第 10 页 sstc-saml-tech-overview-2.0-draft-03 的完整 XML。

上面的函数loadXMLFromString()主要是从 In Java 中借来的,如何将 XML 解析为字符串而不是文件?

0 投票
1 回答
6742 浏览

java - OpenSAML bootstrap() 让我知道“InputStream 不能为空”

部署环境:Windows Server 2008、Tomcat 7.0.5、Oracle JRE 1.6。开发环境相同加上 Eclipse Helios。

当我尝试部署使用 OpenSAML 2.3.1 的 Java 应用程序并对其进行实时测试时,它不想运行。查看源代码和堆栈跟踪,似乎DefaultBootstrap.bootstrap()最终导致java.lang.IllegalArgumentException: InputStream cannot be null. 我在下面包含了完整的堆栈跟踪。

目标部署系统上的软件版本与我的开发箱上的软件版本完全相同,或者至少应该与我的开发箱上的完全相同,在那里一切都运行得很好,但当然我不使用 .war 进行部署。我有一种明显的感觉,即我在部署存档中丢失了一些 XML 或 DTD 文件,但这种感觉本身并不能帮助我修复它。谷歌搜索堆栈跟踪的部分内容也对我没有太大帮助。

我从哪里开始追踪此错误的实际根本原因,以便我可以修复它?

ParsedResponse.java 第 56 行是其构造函数中的 bootstrap() 调用:

而同一文件中的第 104 行是从外部调用此私有默认构造函数的构造函数:

0 投票
2 回答
911 浏览

saml - 需要 SAML 指导

我刚刚使用 SAML 2 规划了我的项目。我需要一些与 SAML 和 OpenSAML 库 v.2.0 相关的帮助。有人可以告诉我有用且全面的教程吗?我只想做一个小的POC。

我需要 SAML 的分步帮助。以下是我的一些要求。请帮忙。

所有 SAML 特定功能都将使用开源 OpenSAML 库来实现。

我们将支持服务提供商 (SP) 发起的身份验证以及身份提供商 (IdP) 发起的身份验证。

0 投票
2 回答
21430 浏览

java - 如何读取用于 OpenSAML 的私钥?

好的,这是另一个“我不知道从哪里开始”的问题,所以希望答案很简单。但是,我真的不知道要搜索什么,而且到目前为止我的尝试并没有多大用处。

我想从(当前在磁盘上的)文件中读取私钥。最终,密钥将驻留在数据库中,但目前这已经足够了,而且这种差异对解析密钥材料没有真正的影响。我已经能够创建一个Credential包含密钥公共部分的实例(由调试器确认),但我似乎无法弄清楚如何读取私有部分。密钥对生成为:

的,我知道 512 位 RSA 密钥很久以前就被破坏了。但是,为了让 API 工作,我认为没有理由不必要地耗尽系统熵供应。)

到目前为止的代码是:

但是如何将文件读host.key入 的私钥部分credential,以便使用生成的Credential实例对数据进行签名?

0 投票
1 回答
3768 浏览

java - 使用 salesforce.com 进行 SAML 身份验证

在我们的 Web 应用程序中,我想要使用salesforce.com对用户进行身份验证的身份提供者 ( IdP ) 。

我已经完成了salesforce.com 上的单点登录设置

在这些设置之后,salesforce 提供了一个元数据文件。

请告诉我:

  • 我需要在 salesforce.com 上进行任何其他设置吗?
  • 接下来在我的 java 代码中做什么来验证用户?
0 投票
1 回答
806 浏览

java - SAML 断言响应

我正在研究由 idp 发起的身份验证。我创建了一个要发送给 SalesForce 的响应,但在某一点上卡住了。请参阅下面的 XML 代码。告诉我从哪里可以获得要填写这些标签的值。

<SignatureValue>, <X509Certificate><DigestMethod>

XML 代码:这是 IDP 发布到 SP 以进行身份​​验证的 SAMLAssertion 的一部分。

0 投票
1 回答
1305 浏览

java - 验证来自 SalesForce 验证器的 SAML 断言

我正在验证来自 SalesForce 验证器的 SAML 断言。我所有的结果都可以。如图所示,我在第 12 点收到警告。

在此处输入图像描述

我该如何验证它?

0 投票
1 回答
614 浏览

java - 我在哪里可以获得 PEM(私钥)?

我正在为销售人员处理 idp 发起的 SAML 响应,需要您的帮助。

我正在使用代码,发现我需要 .pem(私钥)密钥。

pem 密钥将用于签署我的响应签名。我在哪里可以获得 .pem 密钥?

0 投票
1 回答
5170 浏览

java - SSLException:收到致命警报:unexpected_message

我正在使用:

我的日志中出现以下错误:

打开 SSLDebug 会给出以下结果:

行为是 SSL 连接工作了五分钟 - 然后它们失败并显示上述消息。我的猜测是这是一个 SSL 会话缓存问题。

有没有人解决这个问题?

0 投票
1 回答
782 浏览

java - Idp 发起的 SSO | 经销售人员验证

我正在对 salesforce.com 进行 idp 发起的身份验证。生成的 SAML 令牌已从 salesforce SAML 验证页面成功验证,但是当我从我的 idp 重定向到 salesforce 时,它​​会将我重定向到 salesforce 的登录页面,而不是让我登录到 salesforce 应用程序页面。

我的销售人员有当前设置,如图所示。

在此处输入图像描述

我发布以下参数

name="SAMLRequest" 值 = 生成的 saml 令牌。和 name="RelayState" 值 = relaystate

https://login.salesforce.com/

问题是什么。为什么我被重定向到 salesforce 的登录页面。我与表单一起发布的参数是否有任何问题,例如(参数名称或值不正确)?