- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
是否有使用 Open SAML 库 v3 的端到端示例?我找不到任何文档,根据 https://wiki.shibboleth.net/confluence/display/OpenSAML/Home v2 已停产。
我正在使用以下代码来获取 SAML 断言-
private UnmarshallerFactory unmarshallerFactory;
private DocumentBuilder docBuilder;
@PostConstruct
public void init() {
try {
InitializationService.initialize();
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
documentBuilderFactory.setNamespaceAware(true);
docBuilder = documentBuilderFactory.newDocumentBuilder();
unmarshallerFactory = XMLObjectProviderRegistrySupport.getUnmarshallerFactory();
} catch (Exception e){
logger.error("Error: ",e);
}
}
public Assertion getSamlAssertion(String samlResponse)
throws IOException, XMLParserException, UnmarshallingException, SAXException {
Document document = docBuilder.parse(new StringInputStream(samlResponse));
Element element = document.getDocumentElement();
Unmarshaller unmarshaller = unmarshallerFactory.getUnmarshaller(element);
XMLObject responseXmlObj = unmarshaller.unmarshall(element);
Response response = (Response) responseXmlObj;
return response.getAssertions().get(0);
}
我的 POM-
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml-core</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml-saml-api</artifactId>
<version>3.2.0</version>
</dependency>
问题是我为 unmarshaller
获取了 null
。我已验证 samlResponse
有效
最佳答案
您必须在 POM 中包含实现。
<dependency>
<groupId>org.opensaml</groupId>
<artifactId>opensaml-saml-impl</artifactId>
<version>3.2.0</version>
</dependency>
版本 3 中完成的其中一件事是将库拆分为许多不同的模块。
是的,文档有问题。但据我了解,开发团队知道这一点。同时,我写了一本关于这个主题的书,A Guide to OpenSAML V3 .它介绍了 OpenSAML 的使用和 V3 中的更改。
关于java - 如何使用 opensaml v3?几乎没有文档,v2 已停产,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40558996/
我们可以设置签名算法如下: signature.setSignatureAlgorithm("http://www.w3.org/2001/04/xmldsig-more#rsa-sha256");
我正在使用 Spring SAML ,来自 国内流离失所者 响应 我接收颁发者作为属性 ID,所以我想在 spring saml 中接收后更改响应,所以我重写了方法 unmarshall,它将解析消息
在我们的应用程序中,我们正在尝试升级到 Spring boot 2,我们正在使用 spring-security-saml2-core:1.0.4.RELEASE,在运行应用程序时我们遇到以下异常。看
我被分配了在我的公司和客户之间实现 SAML 的任务。我正在考虑使用 OpenSAML,但我正在努力设置 Maven 项目。 我添加依赖项: org.opensaml opensaml 2.5.1
我尝试使用 Open Saml 2 从 Idp 读取元数据。当我尝试解码元数据时,openSaml 仅显示属性 getUnknownAtrributes() 的 getter。看起来我遗漏了一些要点,
我正在尝试对使用 OpenSAML 从身份提供商获取的 SAML2 响应进行签名验证。我正在尝试读取本地文件系统的响应。 这是我的代码: DefaultBootstrap.bootstrap();
我正在尝试创建 SAML 响应。构成断言的属性之一称为地址,属性值需要是在 XSD 中定义的自定义类型。如何将自定义属性值类型添加到响应中? 最佳答案 如果你的属性值 XML 是 String 形式:
我在 opensaml2.6 上运行这段代码 Element metadataRoot = document.getDocumentElement(); // Unmarshall Unmarshal
本文整理了Java中org.opensaml.xml.XMLConfigurator类的一些代码示例,展示了XMLConfigurator类的具体用法。这些代码示例主要来源于Github/Stacko
我正在构建一个 SAML 2.0 AuthNRequest。 我设法使用 OpenSaml 添加了签名信息,但我找不到添加 的方法和 使用图书馆的值(value)。 这是代码: public
我和我的团队正在使用 opensaml 生成 SAML token 。我们已经设法完成此设置,但另一个团队的成员告诉我们,如果我们能够对生成的 token 进行一些配置,他们将不胜感激。 他们希望我们
我已经使用 Opensaml 解密了一个 SAML 断言。尽管解密没有错误,但当我尝试验证该断言的签名时,它失败并出现错误 "org.apache.xml.security.signature.Mis
您好,我目前正在将应用程序移植到 opensaml3 并遇到以下问题: InitializationService.initialize(); ... Unmarshaller unmarshalle
我在 Tomcat 8 中运行一个使用 OpenSAML 的网络应用程序。我已经在 Tomcat 中认可了 Xerces,我检查了认可的目录路径是否设置正确,看起来一切正常: [ajp-apr-800
我正在尝试通过签署响应而不是声明来实现 SAML 2.0。我有 3 个现有供应商在断言级别接受我的签名,但是一个新供应商在协议(protocol)/响应级别请求它。我已经用谷歌搜索和调试了大约 8 个
我目前正在设置 SAML IDP。起初,我认为 spring-security-saml 会帮助我,但我发现它只有助于设置 SAML 协议(protocol)的 SP 端。 所以我想:走吧,让我们使用
我正在为充当服务提供商的应用程序使用 opensaml。到目前为止,我一直在手动创建 SP 元数据。 Java 中是否有示例显示如何以编程方式生成服务提供者元数据 ? 最佳答案 EntityDescr
好吧,这是另一个“我不知道从哪里开始”的问题,所以希望答案很简单。但是,我真的不知道要搜索什么,到目前为止我的尝试没有多大用处。 我想从一个(当前在磁盘上的)文件中读取私钥。最终 key 将驻留在数据
本文整理了Java中org.opensaml.xml.schema.XSBooleanValue类的一些代码示例,展示了XSBooleanValue类的具体用法。这些代码示例主要来源于Github/S
本文整理了Java中org.opensaml.xml.schema.XSBase64Binary类的一些代码示例,展示了XSBase64Binary类的具体用法。这些代码示例主要来源于Github/S
我是一名优秀的程序员,十分优秀!