易截截图软件、单文件、免安装、纯绿色、仅160KB

Java EE和Domino系统间跨域SSO的实现

1. SSO需求
单点登录(Single Sign On, SSO)是企业应用集成中最常见的需求。异构系统间往往都有各自的用户管理和身份验证机制,为
避免用户在进行系统切换时频繁输入用户名和密码,因此必须要实现单点登录。
2. SSO原理
说到SSO的原理,先得说一般Web应用的身份验证原理。Web身份验证之所以能成为问题主要在于HTTP协议的无状态性,这导
致了每次HTTP的请求和响应的无关性。而应用的状态保持是大部分应用系统的一般性需求,因此必须借助其他机制,这就是Cookie。
2.1. Cookie的原理
一个Cookie由name、value、domain、path、expires组成。可以给HTTP响应添加Cookie,然后Cookie就作为HTTP响应的
Headers返回给浏览器,例如Domino的登录成功后的Cookie响应头为:
Set-Cookie: DomAuthSessId=1AD479C4D11CD10278A4C523320A6918; path=/
没有设置expires就表示仅在当前浏览器进程生命期内有效,不保存到客户机上;若expires时间大于当前时间,则浏览器在收到
这个 Cookie以后将其写入到客户机文件中,一般是保存在C:\Documents and Settings\Administrator\Cookies\下。
没有设置domain就表示只在当前域内有效。
当客户机再次请求该域内的其他资源时,浏览器会自动将该域内的Cookie附在请求的Headers一起发送给Web服务器,形如:
Cookie: DomAuthSessId=1AD479C4D11CD10278A4C523320A6918
如此Web应用就能够通过读取HTTP请求Headers里面的Cookie值来判断用户身份,这样也就间接实现了HTTP的状态保持需
求。
2.2. SSO原理
了解的Cookie的原理以后就不难理解SSO的原理了。SSO的目的是为了实现两个或多个应用系统间的单点登录,其实现手段无
非是在登录A系统的 同时自动登录到B系统、C系统……,结合Cookie也就是说在SSO登录时同时去A系统、B系统、C系统进行验证,并将来自各系统的Cookie返回给 浏览器,就是这么简单。
一般情况下,做SSO要统一登录界面,这可以通过将各应用系统的登录界面重定向到指定的登录页来实现。
2.3. Cookie的局限
如果仅仅如上所说这么简单,那也就不会创造什么SSO的概念了。问题出在Cookie的domain上。出于浏览器安全的考虑,HTTP响应 Headers中的Cookie的domain只有与HTTP请求域(a.abc.com)一致或为上级域(abc.com)时,Cookie才能生效。
也就是说:
若A、B系统域名分别为a.abc.com和b.abc.com,登录系统A,同时写来自两个系统的Cookie到浏览器,且Cookie的domain设为.abc.com,那么浏览


相关文档:

java中如何使用amcharts


最近公司碰到需要用图表的形式显示一些数据,我就开始到网上查询,查到了jfreechart和amcharts,这两者我都实现过了,jfreechart最后生成图片,但是图片效果不是我想要的,然后又研究amcharts 它的效果确实很好,而且官方网站上还有好些例子可供下载,网址是:www.amcharts.com
(想要完成一个amcharts图形需要swfobjects. ......

java json之间的一些事情,还有例子

1。要用到的包有:
2.json , java之间基本类型的转换,
  StringBuffer sb = new StringBuffer("{'name':'oop'}");
  
  JSONObject jo = JSONObject.fromObject(sb.toString());
  
  Map<String,Object> map = new HashMap<String,Object>();
&nbs ......

Java 读取属性文件问题

InputStream stream;
Properties prop = new Properties();// 属性集合对象
stream = getClass().getResourceAsStream("NcJdbc.properties");
prop.load(stream);
stream.close();// 关闭流
String databaseName=prop.getProperty("jdbc.databaseName");
InputStream stream;
Properties prop = new Properties(); ......

二叉树的java构造算法

参考网上的一些资料,自己研读了一番,用java构造了一个二叉树类,并带有测试的main方法,如有不足请大家多多指教。
/**
* 二叉树构造算法
* 二叉树定义:是度为2的有序树,它的特点是每个节点至多有两棵子树
* 我们的算法就是根据二叉树的递归定义而来,下面是二叉树的递归定义:
* n(n>=0)个节点的有限集。它 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号