gpt4 book ai didi

java - 如何在 RestEasy 服务中使用 OpenSAML 处理 SAML v2 响应

转载 作者:行者123 更新时间:2023-12-02 10:34:48 24 4
gpt4 key购买 nike

我已经阅读了有关 SAML v2 如何工作的信息 link 。我发现我需要一个将接收 SAML v2 响应的断言消费者服务 URL。

目前,我提供的 URL 是使用 Java 开发并部署在 Tomcat 上的 RESTEasy 端点。假设将在此端点接收 SAML v2 响应,我应该提供端点什么方法类型(GET 或 POST)以及它应该使用什么(XML 或 JSON)

解析 SAML v2 响应的端点内部的逻辑应该是什么。我知道在 Java 中使用 OpenSAML,但这也可以用于我的情况吗?

我的 Java 代码如下所示

@POST
@Path("/getDetails")
@Consumes("application/xml")
public Response getDetails(String xml,@HeaderParam("Authorization") String authorization){
//how to consume and decrypt SAML response over here?
return Response.status(Constants.RESPONSE_CODE_OK).entity(Constants.DATA_OK).build();
}

最佳答案

您实际上可以指定您的断言消费者服务 URL 是在元数据中发布还是重定向 (GET)。

在元数据中,您提供以下标签:

 <AssertionConsumerService
index="1"
Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Location="https://LoadBalancer-9.siroe.com:3443/
federation/Consumer/metaAlias/sp"/>

它应该接受 XML,因为 SAML v2 响应将采用特定格式的 XML。

您还可以使用 onelogin saml API,

https://github.com/onelogin/java-saml

要了解示例请求和响应,您可以使用以下链接: https://www.samltool.com/online_tools.php

对于 opensaml,您可以从下面的链接获取示例代码,在它的帮助下,您可以拥有自己的实现 http://www.capcourse.com/Library/OpenSAML/index.html

关于java - 如何在 RestEasy 服务中使用 OpenSAML 处理 SAML v2 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53369215/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com