WildFly AS 10中基于PicketLink的SAML SSO实现

本文详细介绍了如何在WildFly AS 10上使用PicketLink框架实现基于SAML的单点登录(SSO)。内容涵盖了SP和IdP的配置,包括设置安全约束、登录配置、安全域、PicketLinkAuthenticator的启动以及相关XML配置文件的调整。通过这一流程,读者可以理解PicketLink如何在Java EE应用中支持SAML SSO。
摘要由CSDN通过智能技术生成

PicketLink是一个开源的安全框架(不便于集成,需要二次开发),为Java EE应用提供安全(认证、授权、权限访问API)和IDM方案。在WildFly AS 10中,默认已经提供了对PicketLink 2.5.5.SP1的集成。

基于PicketLink,可以在WildFly AS 10中实现兼容SAML标准的SSO。

1.基于SAML的SSO概述

1)SSO中的几个概念

Service Provider (SP)就是部署在应用服务器上的各个应用。

IdentityProvider (IdP),负责对SP的访问请求进行身份验证。

2)SP发起的SSO处理过程

a.用户请求访问SP(就是一个普通的Web应用)
b.SP代理检查用户请求的授权,如果用户还没有被认证则将请求重定向到IdP
c.IdP给出登录页面,用户输入认证信息
d.IdP查询数据库,检查用户输入的有效性
e.如果用户有效,IdP为该用户创建一个会话,并签发一个SAML Assertion 
f.IdP将带有SAML Assertion 和用户信息的用户请求返回给SP
g.SP检查SAML Assertion 确认用户有效
h.SP检查用户的权限,授权用户访问应用


2.基于PicketLink的IdP(Identity Provider)应用的配置

IdP也是一个Web应用,集中负责对用户信息的认证并签发SAMLAssertion 。

SAML Assertion 就是IdP认证后为用户签发的一个信息集合,这些信息是从用户识别数据库(如LDAP或数据库等)中获取的。SAMLAssertion 用于SP对用户的鉴权。

IdP的配置如下:

1)     在WEB-INF/web.xml中,设置安全约束和登录配置

<security-constraint>
  <web-resource-collection>
    <web-resource-name>Manager command</web-resource-name>
    <url-pattern>/*</url-pattern>
  </web-resource-collection>
  <auth-constraint>
    <role-name>manager</role-name>
    <role-name>Sales</role-name>
    <role-name>Employee</role-name>
  </auth-constraint>
</security-constraint>
<login-config>
  <auth-method>FORM</auth-method>
  <realm-name>PicketLink IDP Application</realm-name>
  <form-login-config>
    <form-login-page>/jsp/login.jsp</form-login-page>
  
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值