轻量级单点登录系统最佳实践(九)——5.4. 人力资源管理系统演示SSOLab. APP1. WebApp
2009-05-04 20:09
351 查看
l Default.aspx人力资源管理系统首页。显示当前用户信息。
l Default.aspx.cs人力资源管理系统首页后台代码。
l SSOController.aspxs人力资源管理系统单点登录控制页。使用<script type="text/javascript" src="http://localhost:7771/SSOSite/SSOContext.aspx?app=app1"> </script>形式Get单点登录系统上下文信息,自动绑定到Form相应字段并自动提交到后台。
l SSOController.aspx.cs人力资源管理系统单点登录控制页后台代码。接受前台提交的信息,对用户信息进行解密,判定当前用户是否登录。如果已登录返回系统首页,如果没有登录,跳转到单点登录系统登录页。
Default.aspx
Code
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SSOLab.SSOServer.Components;
using System.Xml;
using System.Web.Security;
namespace SSOLab.App1.WebApp
{
public partial class SSOController : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(Request.Params["isSubmit"]) && Request.Params["isSubmit"] == "1")
{
try
{
string ssoKey = "XD0cEmXD0IcmYD0gBmYE0OdnYE1jHnZE1USnZF3y3GYpm93Gjp2s2GSog32FfoDm2FZoaG2FZnmhpkVBlJXkWB1eGkWCqA2lWC7k2lXCw1dlXDMqolZr805InrQk4Ixq";
string userInfo = SSOUtil.DESDecrypt(Request.Params["sso_userinfo"], ssoKey.Substring(ssoKey.Length / 2 - 1, 8));
Response.Write(userInfo);
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(userInfo);
if (xmlDoc.SelectSingleNode("/userinfo/islongin").InnerText == "true")
{
FormsAuthentication.RedirectFromLoginPage(xmlDoc.SelectSingleNode("/userinfo/username").InnerText, false);
}
else
{
string returnUrl = SSOUtil.GetHostUrl() + FormsAuthentication.LoginUrl;
Response.Redirect(Request.Params["sso_signinurl"] + "?ReturnUrl=" + HttpUtility.UrlEncode(returnUrl));
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}
}
}
}
l Default.aspx.cs人力资源管理系统首页后台代码。
l SSOController.aspxs人力资源管理系统单点登录控制页。使用<script type="text/javascript" src="http://localhost:7771/SSOSite/SSOContext.aspx?app=app1"> </script>形式Get单点登录系统上下文信息,自动绑定到Form相应字段并自动提交到后台。
l SSOController.aspx.cs人力资源管理系统单点登录控制页后台代码。接受前台提交的信息,对用户信息进行解密,判定当前用户是否登录。如果已登录返回系统首页,如果没有登录,跳转到单点登录系统登录页。
Default.aspx
Code
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SSOLab.SSOServer.Components;
using System.Xml;
using System.Web.Security;
namespace SSOLab.App1.WebApp
{
public partial class SSOController : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(Request.Params["isSubmit"]) && Request.Params["isSubmit"] == "1")
{
try
{
string ssoKey = "XD0cEmXD0IcmYD0gBmYE0OdnYE1jHnZE1USnZF3y3GYpm93Gjp2s2GSog32FfoDm2FZoaG2FZnmhpkVBlJXkWB1eGkWCqA2lWC7k2lXCw1dlXDMqolZr805InrQk4Ixq";
string userInfo = SSOUtil.DESDecrypt(Request.Params["sso_userinfo"], ssoKey.Substring(ssoKey.Length / 2 - 1, 8));
Response.Write(userInfo);
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(userInfo);
if (xmlDoc.SelectSingleNode("/userinfo/islongin").InnerText == "true")
{
FormsAuthentication.RedirectFromLoginPage(xmlDoc.SelectSingleNode("/userinfo/username").InnerText, false);
}
else
{
string returnUrl = SSOUtil.GetHostUrl() + FormsAuthentication.LoginUrl;
Response.Redirect(Request.Params["sso_signinurl"] + "?ReturnUrl=" + HttpUtility.UrlEncode(returnUrl));
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}
}
}
}
相关文章推荐
- 轻量级单点登录系统最佳实践(十)——5.5. 财务管理系统演示SSOLab. APP2. WebApp
- 轻量级单点登录系统最佳实践(十一)——5.6.网上办公系统演示App3 (Java)
- 轻量级单点登录系统最佳实践(八)——5.3. 企业门户系统系统演示SSOLab.Portal.WebApp
- 轻量级单点登录系统最佳实践(一)——目录
- 轻量级单点登录系统最佳实践(六)——5.1. 公共组件SSOLab.SSOServer.Components
- 轻量级单点登录系统最佳实践——代码下载
- 轻量级单点登录系统最佳实践(二)——第1章 前言
- 轻量级单点登录系统最佳实践(七)——5.2. 单点登录系统SSOLab.SSOServer.WebApp
- 轻量级单点登录系统最佳实践(三)——第2章 单点登录简介
- 轻量级单点登录系统最佳实践(四)——第3章 Web-SSO通常实现方式
- 轻量级单点登录系统最佳实践
- 轻量级单点登录系统最佳实践(五)——第4章 轻量级单点登陆系统简介
- 轻量级单点登录系统最佳实践
- SVN版本管理系统最佳应用实践
- 学习《JSP项目开发全程实录》中的企业人力资源管理系统(spring1.2+sturts1.2+hibernate3.0)的一些过程总结之管理员登录ACTION的实现
- Linux系统管理实践(6):系统登录配置
- 权限管理最佳实践:一,登录控制
- Linux系统管理实践(6):系统登录配置
- Linux系统管理实践(6):系统登录配置
- Linux系统管理实践(4):忘记登录密码或账号