700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 利用cookie的跨域单点登录的简单实现

利用cookie的跨域单点登录的简单实现

时间:2021-01-29 20:17:09

相关推荐

利用cookie的跨域单点登录的简单实现

Configuration:1. Web.Config在两个站点的配置配置文件machine节点上相同的validationKey, decryptionKey and validation的值,如 <machineKey validationKey="282487E295028E59B8F411ACB689CCD6F39DDD21E6055A3EE480424315994760A

DF21B580D8587DB675FA02F79167413044E25309CCCDB647174D5B3D0DD9141"

decryptionKey="8B6697227CBCA902B1A0925D40FAA00B353F2DF4359D2099"

validation="SHA1" />2. IIS在IIS->Directory security 上添加 "ASPNET Machine Account" 的所有权限Coding:代码示例 站点1的->Login.aspx.cs if (login_Successful) { //创建一个cookie HttpCookie cookie = new HttpCookie("strCookieName"); //设置cookie的值 可以保存登录名称信息 cookie.Value ="set_cookie_value"; //设置 cookie 的生存周期5 分钟 DateTime dtNow = DateTime.Now; TimeSpan tsMinute = new TimeSpan(0, 0, 5, 0); cookie.Expires = dtNow + tsMinute; //添加cookie Response.Cookies.Add(cookie); Response.Write("Cookie written. "); } 检查cookie是否存在 站点2->Default.aspx.cs protected void Page_Load(object sender, EventArgs e) { //获取cookie HttpCookie cookie = Request.Cookies["strCookieName"]; //检查cookie 是否存在 if (cookie != null) { ReadCookie(); } else { lblCookie.Text = "Cookie not found. "; } } protected void ReadCookie() { //Get the cookie name the user entered //Grab the cookie HttpCookie cookie = Request.Cookies["strCookieName"]; //Check to make sure the cookie exists if (cookie == null) { lblCookie.Text = "Cookie not found. "; } else { //Write the cookie value String strCookieValue = cookie.Value.ToString(); lblCookie.Text = "The cookie contains: " + strCookieValue + ""; } }

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。