更改需要将spring saml部署为独立服务

时间:2016-11-29 02:59:28

标签: spring saml

目前我正在使用j2ee(非弹簧)应用程序。我想将SAML支持集成到我的应用程序中。为此我将spring saml示例部署为单独的服务并尝试进行rest api调用,但它将调用重定向到idp发现页面,因为没有活动会话。那么我需要做些什么来将Spring SAML作为独立服务运行?

1 个答案:

答案 0 :(得分:0)

您是否在弹簧应用程序与功能性IdP之间建立了连接?另外,您的j2ee应用程序是否基于Web?

我假设您的应用是基于网络的。如果您的spring应用程序按预期工作,您可以在应用中添加一个表单,如下所示:

<form action="[url to your spring app]/saml/login?disco=true" method="GET">
    <input type="radio" name="idp" id="idp1" value="[path to your idp]">
    <label for="idp1">My IdP</label>
    <input class="button" type="submit" value="Start single sign-on">
</form>

html是运行此页面的:https://github.com/spring-projects/spring-security-saml/blob/master/sample/src/main/webapp/WEB-INF/security/idpSelection.jsp

并将操作链接和IdP地址修改为您的配置。

然后,通过提交表单,您已向spring应用程序发送请求以登录您指定的IdP。登录后,您应该被重定向到您的spring应用程序。在那里,您可以使用必要的身份验证信息重定向到您自己的应用程序。

我不确定这种实施有多安全。生产的最佳解决方案仍然是在您的应用程序中内置SAML身份验证方法。