当前位置:文档之家› 基于Web单点登录的研究与实现

基于Web单点登录的研究与实现

万方数据

ComputerKnowledgeandTechnology电脑知识与技术第5卷第13期(2009年5月)

在数字化校园建设的基础上实现了本科学分制系统、研究生信息管理系统、选课系统、工会会员管理系统、研究生信息管理系统、二级学院信息管理系统、学分制信息交流平台等一系列基于Web的信息系统,登录用户名都是采用校园一卡通的方式,用户登录不同系统每次都要输入用户名和密码信息进行验证,给用户造成不便。由于LDAP查询效率高,可以进行访问控制以及含有丰富的API与各种应用系统对接。安装管理维护也很简单,所以校园网的单点登录基于LDAP来实现。

实现方法为:将各个子系统的登录页面放置于框架页面中,在框架的页面隐藏其他子系统的登录页面,当点击“登录”时触发JS事件把当前的用户名/密码提交到其他子系统的登陆页面中。这样一次登录,其他所有系统也就登录了。框架页面如图2所示:首先在系统入口输入用户名、密码进行登录,从客户端发送的认证请求通过统一身份认证接口到达LDAP服务器,LDAP服务器在目录信息树中查询是否为合法身份,进行身份认证和根据身份授予相应的权限,通过统一身份认证接口返回给客户端。成功登录后,可以直接单击相应子系统链接直接进入子系统,不需要再次输入登录信息,带来了更好的用户体验。

主要代码如下:

11系统入口端

if(!username.equals(…’)&&!pwd.equals(…’)){,/表单输入不为空

Certcert=newCert0;

UserLoginuserLogin=newUserLogin0;

userLogin.setUid(usemame);

userLogin.s.etPassword(pwd);

userlnfo=cert.checkUserlnfo(”CertServer.jxufe.cn”,6002,5000,”

210.35.207.i60”,”portal”,”210.35.207.160”,userLogin,0)∥以上对客户端输入

进行统一身份认证

if(userlnfo!=null){//用户存在的话

getUid=userlnfo.getUid0;//得到一卡通号

session.setAttribute(”usemame",getUid);//将用户名放入Session

s、、ession.setAttribute(”pwdfI,pwd);//将密码放入Session图2单点登录系统入1:2

JJ

<INPUTTYPE=”hidden”NAME=”usemame”value=”<%=getUid%>”>

<INPUTTYPE=”hidden”name=”pwd”value=”<%=pwd%>”>

<spanonelick=’'javascript:javascript:submit_tof"http://210.35。207.200/JxufeYjsSprin9251Hibemate3/login.jsp','__blank3”>研究生管理<,span>,/单击触发JS事件将用户名密码提交到其他子系统中

<script>

functionsubmit_to(ud,target)f

pageForm.action=url;

pageForm.target=target;

pageForm.submit0;}

</script>//提交表单的JS事件

21其他子系统端

Stringusemame=request.getParameter(”usemame”);

Stringpwd=request.getParameter(”pwd”);

<script>

loginform.usemame。value=”<%=usemame%>’’:

loginform.password.value=”<%=pwd%>”;

loginform.submit0;

</script>

5结束语

本文在研究了单点登录技术及其实现模式的基础上,实现了一套简单高效的单点登录系统。使用户只进行一次登录认证,便能在所有应用系统之间自由穿行,而不需要进行多次身份认证,建立了一种更安全的登录方式,将多个系统独立的用户管理融合为统一用户管理。此方法几乎可以不要修改过多的代码,而且可以用于所有的多系统情况,可以跨平台,跨服务器。简单高效。缺点是登录完后。如果没有在各个子系统切换,那使用SESSION的子系统可能会发生超时现象。可以在其他子系统包含文件中用IFRAME的方式包含其他子系统的更新在线状态的页面来解决。也可考虑基于Cookie的方式,这个有待于进一步研究。

参考文献:

[1】曾琴涛.基于Java平台的Web应用系统单点登陆方案研究与实现[D].中国地质大学硕士学位论文,2008

[2]皮晓东.单点登录的研究与实现[J].计算机应用与软件,2007(6).

【3】程曾平.共享Session实现信息门户单点登陆[J】.软件-导:01,2008(11).

【4】IBM公司.IBMWebSphereV5.0Security.WebSphereHandbookSenes[EB/OL].http://[Iublibbboulder.ibm.com/Redbooks.nsf/RedbookAbstracts/.

胡丽平(1982一),女,江西南昌人,助理工程师,研究方向:计算机应用技术。

3576本栏目责任编辑:贾薇薇万方数据

相关主题
文本预览
相关文档 最新文档