php 实现简单 sso 初步方案
首先,声明一点,sso和任何语言没有关系,因为我只懂php,为了非php程序员误入,所以就起了这样的标题。我也是这几天才接触这个sso的,sso就是要解决同步登陆、退出的问题。如果有什么错误的地方,请指出,谢谢。
假设当前情况有passport系统、应用blog和应用album,实现应用之间同步登陆退出之类的操作。
我的方案是这样的,passport系统有三个模块,一个是OBServer模块,一个是Action模块,还有Api模块。
OBServer模块有Register和Notice两个功能,Register是激活用户应用,Notice是同步登陆应用。
Action主要负责用户的登录和登出
Api模块主要负责分配和验证应用的Ticket
应用系统有Gateway模块,主要响应来自Passport的同步信息。
用户访问应用有两种情况:
[*]用户首次访问某个应用的时候会向Passport系统激活本应用,如果用户已经登录,则同步过来。
[*]用户执行登录操作,验证成功后Passport系统向所有已激活的应用Gateway模块请求同步
之所以有OBServer模块主要是考虑,当应用太多的话,同步付出的代价太大,而用户却未必要使用该应用,造成了浪费。
有几个问题需要继续思考的:
[*]如何交互?
[*]用什么方式确保信息安全?
[*]用什么方式跳转?
[*]性能怎样?
[*]这个方案是否可行?
吃饭去了。。。
页:
[1]