.NetWeb集成cas

简介: 仅供参考

通过CAS与第三方应用系统(以下统一简称为【集成系统】)集成时,应用系统开发商需要完成以下四步工作:

一、.NetWeb客户端配置

配置方式有两种:

第一种:安装DotNetCasClient,安装步骤可度,点此下载

第二种:将我提供的DotNetCasClient.dllDotNetCasClient.pdb文件拷贝到项目的bin目录下。(附件,提取码:qwer)

二、修改项目的web.config文件

1、<configuration >标签

此标签中需要新增以下代码:

<configuration><--新增--><configSections><sectionname="casClientConfig"type="DotNetCasClient.Configuration.CasClientConfiguration, DotNetCasClient"/></configSections><casClientConfigcasServerLoginUrl=http://cas.jnsjsxy.com:3193/cas/logincasServerUrlPrefix="http://cas.jnsjsxy.com:3193/cas/"serverName="http://localhost:3502"notAuthorizedUrl="~/NotAuthorized.aspx"cookiesRequiredUrl="~/CookiesRequired.aspx"redirectAfterValidation="true"gateway="false"renew="false"singleSignOut="true"ticketTimeTolerance="5000"ticketValidatorName="Cas20"proxyTicketManager="CacheProxyTicketManager"serviceTicketManager="CacheServiceTicketManager"gatewayStatusCookieName="casGatewayStatus"/><!--结束--><system.web>此处省略</system.web><!--新增--><system.webServer><validationvalidateIntegratedModeConfiguration="false"/><modules><removename="DotNetCasClient"/><addname="DotNetCasClient"type="DotNetCasClient.CasAuthenticationModule,DotNetCasClient"/></modules></system.webServer><system.diagnostics/><!--结束--></configuration>

各个节点代表的含义说明:

<casServerLoginUrl>指的是CAS Server的登录URL

<casServerUrlPrefix>指的是CAS Server的验证URL

<serverName>指的是当前集成系统所在的服务器和端口号,服务器可以是机器名、域名或ip,建议使用域名。端口不指定的话默认是80(此处不能附加应用名称)

2、<system.web>标签

此标签中需要新增以下代码:

    <!--新增-->

    <authenticationmode="Forms">

      <forms

loginUrl=http://cas.jnsjsxy.com:3193/cas/login

timeout="30"

defaultUrl="~/Default.aspx"

cookieless="UseCookies"

slidingExpiration="true"

         path="/"/>

    </authentication>

    <authorization>

      <denyusers="?"/>

      <allowusers="*"/>

    </authorization>

    <httpModules>

      <addname="DotNetCasClient" type="DotNetCasClient.CasAuthenticationModule,DotNetCasClient"/>

    </httpModules>

    <sessionStatemode="StateServer" cookieless="UseCookies" timeout="36000"></sessionState>

    <!--结束-->

 </system.web>

注意:

此处需要注意丢失authenticationauthorization两部分配置将无法正常工作。

配置httpMoudules配置是为了解决重定向过多”的问题

三、其他事项

1、获取唯一标识

如果要实现与cas的统一集成,需要各个业务系统与cas的身份做唯一标识,用此唯一标识进行约束,cas登录验证返回的也是该标识字段(当然可以包含多个消息报文)。

需要对原有业务系统的验证部分进行微调。

只需要判断是否能取到用户名即可。获取用户名的方式

stringusername = System.Web.HttpContext.Current.User.Identity.Name;

此处得到的为cas与各系统之间约定的唯一标识。

2、单点登出

Cas提供单点登出(注销退出)的功能,可以使用此功能退出业务系统时,自动退出所有统一认证的系统,避免可以直接登录其他业务系统。

   使用URL链接地址:

注销之前,首先要清除浏览器cookie

HttpCookieaCookie;
stringcookieName;
intlimit=Request.Cookies.Count;
for (inti=0; i<limit; i++)
                {
cookieName=Request.Cookies[i].Name;
aCookie=newHttpCookie(cookieName);
aCookie.Expires=DateTime.Now.AddDays(-1);
Response.Cookies.Add(aCookie);
                }



目录
相关文章
|
3月前
|
存储 开发框架 NoSQL
ASP.NET WEB——项目中Cookie与Session的用法
ASP.NET WEB——项目中Cookie与Session的用法
39 0
|
3月前
|
开发框架 前端开发 .NET
ASP.NET WEB——项目创建与文件上传操作
ASP.NET WEB——项目创建与文件上传操作
48 0
|
12天前
|
开发框架 缓存 前端开发
利用Visual Basic构建高效的ASP.NET Web应用
【4月更文挑战第27天】本文探讨使用Visual Basic与ASP.NET创建高效Web应用的策略,包括了解两者基础、项目规划、MVC架构、数据访问与缓存、代码优化、异步编程、安全性、测试及部署维护。通过这些步骤,开发者能构建出快速、可靠且安全的Web应用,适应不断进步的技术环境。
|
3天前
|
开发框架 JSON .NET
.Net4.0 Web.config 配置实践
.Net4.0 Web.config 配置实践
|
11天前
|
中间件 Go API
Golang深入浅出之-Go语言标准库net/http:构建Web服务器
【4月更文挑战第25天】Go语言的`net/http`包是构建高性能Web服务器的核心,提供创建服务器和发起请求的功能。本文讨论了使用中的常见问题和解决方案,包括:使用第三方路由库改进路由设计、引入中间件处理通用逻辑、设置合适的超时和连接管理以防止资源泄露。通过基础服务器和中间件的代码示例,展示了如何有效运用`net/http`包。掌握这些最佳实践,有助于开发出高效、易维护的Web服务。
27 1
|
2月前
|
存储 PHP 数据库
使用Net2FTP轻松打造免费的Web文件管理器并公网远程访问
使用Net2FTP轻松打造免费的Web文件管理器并公网远程访问
|
3月前
|
SQL 开发框架 .NET
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
72 0
|
3月前
|
SQL 开发框架 前端开发
ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法
ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法
34 0
|
3月前
|
SQL 开发框架 .NET
ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能
ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能
37 0
|
3月前
|
安全 Java 网络安全
【Shiro】第四章 Web项目集成Shiro
【Shiro】第四章 Web项目集成Shiro
66 1

热门文章

最新文章