通过本文主要向大家介绍了.net 单点登录,单点登录 asp.net,单点弯沉值计算方法,.net 扩展方法,vb.net string 方法等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
系统的基本架构
我们假设一个系统System包含Service客户服务中心、Shop网上购物中心和Office网上办公中心三个独立的网站。 Service管理客户的资料,登录和注销过程。不论客户访问System的任何一个页面,系统都会转到登录界面,在用户登录后,系统会自动转会到客户上 次请求的页面。并且用户此后可以在System中无缝切换。不需要再次进行登录。即在System中实现单点登录SSO(Single Sign-On)。
我们知道,用户的即时状态通常是使用Application、Session、Cookie和存储的。而这些都是不能在程序中跨站点访问的。我们必需通过站点间相互通讯来确认用户的即时状态。
简单的实现
第一步,假设用户访问了Shop或Office的任何一个页面Any。该页面所在的网站将会检查用户的即时状态。如果用户已经登录了,则将 Any页面的信息返回给用户。如果用户还没有登录,则自动转到Service的Validate页面,验证用户在Service状态。即Shop或 Office向Service发出请求,要求Service返回用户的即时状态。
第二步,Validate验证用户的即时状态,如果 用户已经登录了,则Service将用户的即时状态返回给Shop或Office的同步页面 Synchronous,通知Shop或Office同步用户状态。如果用户没有登录,则自动转向Customer页面,提示用户登录。
第三步,用户完成登录过程,当用户成功登录后,自动转回Validate页面,通知Shop或Office的Synchronous进行用户状态的同步。
第四步,在用户状态同步完成后,在本地站点,用户状态成为在线状态,即可访问Any页面。
在上面的流程中。我们知道,不管用户访问哪个站点,用户只需要一次登录,就保证用户在Service的即时状态都是在线的,不会再需要进行第二次登录的过程。
现在我们的思路已经清楚,具体的实现我们将在代码分析中完成。
代码分析
从上面的流程中我们可以看出,系统中Shop和Office的代码是完全类似的。只要Shop可以实现,Office也可以同样的克隆。所以我们的重点分析的对象是Shop和Service的代码。
1、Shop的Web.config和Project.cs
在Shop的Web.config里,我们配置了Service站点和Shop站点,以方便我们在部署时方便修改。
现在我们页面转到了Service的Validate页面,我们转过来看 Service的代码。在Global中我们同样定义了四个Session变量,都和Shop的Session用处类似。WebSite是保存请求用户即
我们假设一个系统System包含Service客户服务中心、Shop网上购物中心和Office网上办公中心三个独立的网站。 Service管理客户的资料,登录和注销过程。不论客户访问System的任何一个页面,系统都会转到登录界面,在用户登录后,系统会自动转会到客户上 次请求的页面。并且用户此后可以在System中无缝切换。不需要再次进行登录。即在System中实现单点登录SSO(Single Sign-On)。
我们知道,用户的即时状态通常是使用Application、Session、Cookie和存储的。而这些都是不能在程序中跨站点访问的。我们必需通过站点间相互通讯来确认用户的即时状态。
简单的实现
第一步,假设用户访问了Shop或Office的任何一个页面Any。该页面所在的网站将会检查用户的即时状态。如果用户已经登录了,则将 Any页面的信息返回给用户。如果用户还没有登录,则自动转到Service的Validate页面,验证用户在Service状态。即Shop或 Office向Service发出请求,要求Service返回用户的即时状态。
第二步,Validate验证用户的即时状态,如果 用户已经登录了,则Service将用户的即时状态返回给Shop或Office的同步页面 Synchronous,通知Shop或Office同步用户状态。如果用户没有登录,则自动转向Customer页面,提示用户登录。
第三步,用户完成登录过程,当用户成功登录后,自动转回Validate页面,通知Shop或Office的Synchronous进行用户状态的同步。
第四步,在用户状态同步完成后,在本地站点,用户状态成为在线状态,即可访问Any页面。
在上面的流程中。我们知道,不管用户访问哪个站点,用户只需要一次登录,就保证用户在Service的即时状态都是在线的,不会再需要进行第二次登录的过程。
现在我们的思路已经清楚,具体的实现我们将在代码分析中完成。
代码分析
从上面的流程中我们可以看出,系统中Shop和Office的代码是完全类似的。只要Shop可以实现,Office也可以同样的克隆。所以我们的重点分析的对象是Shop和Service的代码。
1、Shop的Web.config和Project.cs
在Shop的Web.config里,我们配置了Service站点和Shop站点,以方便我们在部署时方便修改。
现在我们页面转到了Service的Validate页面,我们转过来看 Service的代码。在Global中我们同样定义了四个Session变量,都和Shop的Session用处类似。WebSite是保存请求用户即