• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > .NET单点登陆的实现方法及思路

.NET单点登陆的实现方法及思路

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了.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是保存请求用户即
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • .NET单点登陆的实现方法及思路

相关文章

  • 2017-05-28使用C#开源文件实时监控工具Tail&TailUI介绍
  • 2017-05-28C#调用sql2000存储过程方法小结
  • 2017-05-28C#实现的文件压缩和解压缩类
  • 2017-05-28教你如何用C#制作文字转换成声音程序
  • 2017-05-28C#中WebBroeser控件用法实例教程
  • 2017-05-28DevExpress实现GridControl单元格编辑验证的方法
  • 2017-05-28C#策略模式(Strategy Pattern)实例教程
  • 2017-05-28C#实现调用迅雷下载的方法
  • 2017-05-28关于C# 5.0 CallerMemberName CallerFilePath CallerLineNumber 在.NET4中的使用介绍方法
  • 2017-05-28深入线程安全容器的实现方法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 详解C#的排列组合
    • C#学习基础概念二十五问续2第1/2页
    • C#异常处理的一些经验和技巧
    • .net从服务器下载文件中文名乱码解决方案
    • C#读取Excel的三种方式以及比较分析
    • C#裁剪,缩放,清晰度,水印处理操作示例
    • C# Guid.NewGuid获得随机数
    • C#中 paint()与Onpaint()的区别
    • 深入C# 4.0 新特性dynamic、可选参数、命名参数的详细介绍
    • C#中this用法系列(二) 通过this修饰符为原始类型扩展方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有