asp.net简单实现单点登录(SSO)的方法_实用技巧

本文实例讲述了asp.net简单实现单点登录(SSO)的方法。分享给大家供大家参考,具体如下:

单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统

CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架(耶鲁大学开发)主要用于Java Php 有兴趣大家可以研究下..

下面是一个简单实现单点登录的方法:

public void SingleUserLogin(string userName){
  //定义键值
  string key=userName;
  string value=Convert.ToString(Cache[key]);
  if(value==null||value==string.Empty){
   //定义Cache过期时间
   TimeSpan span=new TimeSpan(0,0,HttpContext.Current.Session.Timeout,0,0);
    //第一次登陆的时候插入一个用户相关的cache值,
    HttpContext.Current.Cache.Insert(key,key,null,DateTime.MaxValue,span,System.Web.Caching.CacheItemPriority.NotRemovable,null);
    Session["userName"]=userName;
    Response.Redirect("Main.aspx");
  }
  else if(Cache[key].ToString()==key){
    //重复登陆
    Response.Write("<mce:script type="text/javascript"><!--
    alert('您的账号已经登陆!');window.location='login.aspx';
    // --></mce:script>");
  }
  else{
  //取消当前的session会话
    Session.Abandon();
  }
}

在Web Config 配置 窗体模式

<authentication mode="Forms">//mode值是Forms为定义成窗体验证
  <forms loginUrl="Mananger/Login.aspx" name=".ASPXAUTH">//用户未登陆就先访问Mananger/Login.aspx页面
 </forms>
</authentication>
<authorization>
 <deny users="?"/>
</authorization>

希望本文所述对大家asp.net程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索asp.net
, sso
, 单点登录
asp.net单点登录
,以便于您获取更多的相关知识。

时间: 2024-10-02 03:50:14

asp.net简单实现单点登录(SSO)的方法_实用技巧的相关文章

asp.net简单页面控件赋值实现方法_实用技巧

本文实例讲述了asp.net简单页面控件赋值的方法.分享给大家供大家参考,具体如下: /// <summary> /// 赋值 表名,控件名,要查询的唯一数据 /// </summary> protected void SetEvaluate(string TableName, string UpName, string Id) { ContentPlaceHolder cph = (ContentPlaceHolder)Page.Master.FindControl("

asp.net简单实现页面换肤的方法_实用技巧

本文实例讲述了asp.net简单实现页面换肤的方法.分享给大家供大家参考,具体如下: 这里实现页面换肤效果,可以 给html form 添加相应的样式 代码如下: private string _StyleClass; public string StyleClass { get { return _StyleClass; } set { _StyleClass = value; } } private void StyleForm() { HtmlForm Form1 = this.FindC

基于.Net的单点登录(SSO)实现解决方案_实用技巧

前些天一位朋友要我帮忙做一单点登录,其实这个概念早已耳熟能详,但实际应用很少,难得最近轻闲,于是决定通过本文来详细描述一个SSO解决方案,希望对大家有所帮助.SSO的解决方案很多,但搜索结果令人大失所望,大部分是相互转载,并且描述的也是走马观花. 闲话少叙,进入正题,我的想法是使用集中验证方式,多个站点集中Passport验证. 如下图所示:  为方便清晰描述,先定义几个名词,本文中出现之处均为如下含义. 主站:Passport集中验证服务器 http://www.passport.com/ .

.net core 1.0 实现单点登录负载多服务器_实用技巧

前言 .net core 出来有一时间了,这段时间也一直在做技术准备,目前想做一个单点登录(SSO)系统,在这之前用.net时我用习惯了machineKey ,也顺手在.net core 中尝试了一上,结果发现不好使了,也不起作用,于是开始了网上学习. 实现方法 功夫不负有心人,网上高人还是多,在github.com上面ISSUES中也有人在讨论此问题,于是找到代码尝试,结果实现了. 直接上代码,我们需要先封装一个XmlRepository,Key的格式如下: <?xml version="

asp.net调用系统设置字体文本框的方法_实用技巧

本文实例展示了asp.net调用系统设置字体文本框的方法,是进行web开发中很实用的技巧.具体实现步骤如下: 一.调用系统字体文本框 首先在bin文件夹右击-->添加引用-->.net标签里选择:System.Windows.Forms-->确定 然后在cs文件里引入: using System.Windows.Forms; 添加如下代码: FontDialog fd = new FontDialog(); fd.ShowDialog().ToString(); 就可以调出系统设置字体的

asp.net GridView中使用RadioButton单选按钮的方法_实用技巧

本文实例讲述了asp.net GridView中使用RadioButton单选按钮的方法.分享给大家供大家参考,具体如下: 在GridView里做单选按钮,我用了三种方法 第一种方法:在GridView的模版列里加服务器端控件RadioButton,使用js控制单选 使用模版列里加RadioButton <script type="text/javascript"> function setRadio(nowRadio) { var myForm,objRadio; myF

asp.net实现中英文多域名检测的方法_实用技巧

本文实例讲述了asp.net实现中英文多域名检测的方法.分享给大家供大家参考,具体如下: 第一步:在前台页面中写入js代码和相关控件 /****写入js代码****/ <%-- 域名检测 --%> <script type="text/javascript"> //判断输入的是否为中文域名 function IsChDomain(domainStr) { var flag = false; var compStr = "ABCDEFGHIGKLMNOP

asp.net提取多层嵌套json数据的方法_实用技巧

本文实例讲述了asp.net提取多层嵌套json数据的方法.分享给大家供大家参考,具体如下: 在.net 2.0中提取这样的json: 复制代码 代码如下: {"name":"lily","age":23,"addr":{"city":guangzhou,"province":guangdong}} 引用命名空间: using Newtonsoft.Json; using Newtons

asp.net中Table生成Excel表格的方法_实用技巧

本文实例讲述了asp.net中Table生成Excel表格的方法.分享给大家供大家参考. 具体实现方法如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/19