多项目背景下的用户中心的架构设计
背景:
1 有项目A, 项目B,项目C(有客户端,有Web)
2 需要架构一个跨跃3个项目的用户中心
3 用户中心需要包含帐户系统,用户增值系统
4 各项目之间要能共享登陆状态
困惑:
1 用户中心的接口设计
2 服务于三个项目的增值系统怎么设计,比如VIP,虚拟货币消费
3 会话ID的过期机制
------解决方案--------------------google单点登录。另外,事实上Microsoft Account就是最好的“用户中心”,你只要使用Live SDK就可以使用它了。
------解决方案--------------------
http://www.cnblogs.com/wenanry/archive/2009/08/06/1540777.html
其实关于SSO有很多方案,涉及到的性能和实现差异也比较大。
具体还是得自己拿捏
------解决方案--------------------用 biztalk做门户
------解决方案--------------------“要求用户中心把所有项目的业务逻辑全放在用户中心处理”这往往来自于“人品问题”而非“技术问题”,所以你辩论不过他。当他感觉技术上把握不了、而时间很紧,那么你设计的任何方案都可以很容易被采纳。反之,当他觉得只要招聘两个稍微懂一点编程的人已经可以“支撑”下去了,他可能很以为已经不需要设计技术、只要功能分解分解给新人这样就能把设计责任推卸给新人了,他此时不需要在关键时刻能够力挽狂澜的人了。
我给你的建议,做个超级简单的“用户中心”作为备用,同时让他随便去设计(你不要参与设计)。专心做好你自己的专业业务系统,突出业务重点和技术创造力,而跟那种抄袭OA权限管理系统的所谓“设计”形成鲜明对比。
剩下的,就不是你所能把握的了。也许有一天,你通过几个赚钱的系统的开发经验,最了解是那么样的“用户中心”才是开发周期最短、(一年内)价值最高的方案。这时候你可以考虑跳出之前的圈子,找到自己的开发人员。
------解决方案--------------------支持sp1234, 用户中心必须与增值系统隔离,让增值系统作为上层的一个系统进行构建。
用户中心的职责必须脱离业务,只负责用户、部门、用户属性及关系、单点登录。
其他任何与业务有关的职责必须从用户中心剥离,与用户中心的接口只有单点登录和数据接口。