如何实现 Java WEB 的SSO(单点登录),要有源码!(高分)

zhengyu119079436 2009-03-17 12:01:27
我刚接到一个任务是用 Java 做一个 WEB 的 SSO(单点登录)系统,目前还不了解这系统,希望各位高手能指点一下,最好给我一些例子和设计文档,谢谢了!
我的Email:zhengyu.willian@gmail.com
QQ: 119079436
十分感谢!
...全文
2032 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
weimingwang123 2012-09-03
  • 打赏
  • 举报
回复
1342628902要是有人能直接给demo的话直接发到邮箱 谢谢
weimingwang123 2012-09-03
  • 打赏
  • 举报
回复
能不能直接发源码看看啊,这样的效率太慢了
~诸行无常~ 2011-10-03
  • 打赏
  • 举报
回复
mark
ccdd25198 2011-09-15
  • 打赏
  • 举报
回复
我给你说说实现思路,你可以试着自己写下代码,有问题再问,单点登录就是多个应用要使用单点登录的功能,首先应用本身要配合得当,将自己的身份认证交给一个统一的身份认证服务—SSOAuth,SSOAuth类似于一个Servlet,里面含有init方法,当用户访问一个受保护的URL时,都需要进行安全检查,查看是否登录,未登录就将该访问者踢到登录页面,当该用户登录后,系统会给该用户的浏览器设置一个随身携带的cookie,当下次访问受保护的URL时,仍然会检查是否登录,其实也就是检查cookie是否存在,如果cookie存在,仍然要检查该cookie是否有效,因为cookie会过期或者服务器重启过,这些情况下cookie都会无效,当这里通过后,也就是cookie有效,系统会再检查一遍当前访问用户是谁,通过spring安全处理,判断该用户是否有访问该URL的权限等有权限则通过,反之给予用户一个提示,例如:没有访问权限。
willing_fei 2010-12-29
  • 打赏
  • 举报
回复
http://www.zhiweinet.com/jiaocheng/2008-07/981p6.htm
Dave_Bear 2010-12-28
  • 打赏
  • 举报
回复
看样子你也还没解决啊
我这倒是有段单点登录的代码,你要不看下:
public static boolean getFlag(String userid, String sunfrs_ticket,String check_ur) {

boolean flag = false;
try {
userid = URLEncoder.encode(userid, "GBK");
String sUrl = check_ur + "?userid=" + userid + "&sunfront_ticket=" + sunfrs_ticket;
URL l_url = new URL(sUrl);
HttpURLConnection l_connection = (java.net.HttpURLConnection) l_url.openConnection();
l_connection.connect();
InputStream l_urlStream = l_connection.getInputStream();
BufferedReader l_reader = new BufferedReader(new InputStreamReader(l_urlStream));
String sCurrentLine = "";
String sTotalString = "";
while ((sCurrentLine = l_reader.readLine()) != null){
sTotalString += sCurrentLine;
}
String[] s1 = sTotalString.split("&");
String ss = s1[0].replace("result=","");
s1[1].replace("userid=", "");
if(ss.equals("success")){
flag = true;
}

} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return flag;
}
javaoaout 2009-03-18
  • 打赏
  • 举报
回复
http://www.javaeye.com/news/5056-josso-1-8-released-single-sign-
这个可以满足你的要求。
qingting2016 2009-03-18
  • 打赏
  • 举报
回复
是不是同一个帐号只能在一个地方登录,我的系统小,用了一个静态map,然后在页面用ajax每2秒请求一下,
在服务器端一个线程始终在检测哪些用户发了请求,2秒没收到请求,这个用户就可以登录系统,否则用户在线
我的系统是内网的
zhengyu119079436 2009-03-18
  • 打赏
  • 举报
回复
我要的是用自己的代码实现,而不是通过在服务器上部署!因为这个SSO它设计到多个服务器,而所用的服务器肯定不会是同样的
zhj92lxs 2009-03-17
  • 打赏
  • 举报
回复
http://www.zhiweinet.com/jiaocheng/2008-07/981p6.htm
zhengyu119079436 2009-03-17
  • 打赏
  • 举报
回复
来点实际的内容吧!
期待高手出现!
Sou2012 2009-03-17
  • 打赏
  • 举报
回复
spring security 2
ZiSheng 2009-03-17
  • 打赏
  • 举报
回复
原来是为了方便用户,让其只使用一个账户和密码就能在几个网站登录。
lzt2008 2009-03-17
  • 打赏
  • 举报
回复
单点登录是不是要目录的吗?
你是怎么实现单点啊?
ZiSheng 2009-03-17
  • 打赏
  • 举报
回复
单点登录?什么意思?一个用户只能登一次?
luojihaidao 2009-03-17
  • 打赏
  • 举报
回复
What?
zhengyu119079436 2009-03-17
  • 打赏
  • 举报
回复
不能沉啊!

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧