Mvc4单点登录之三Cas 客户端配置

上一篇博客讲解了cas服务端的配置,这篇博客为大家讲一下cas 客户端的配置!

第一步建项目

自己新建一个mvc的项目。如图所示!

第二步添引用

将上一篇博客开头中让下载的文件,下载下来后,将dotnet-client-1.0.2-bin 文件中的 DotNetCasClient.dll文件复制到bin文件夹下,并添加DotNetCasClient.dll的引用。

第三步添视图

在Controller中 新建一个controller命名为HomeController,然后为里边的index添加一个对应的视图!可以参见博客MVC系列之
----登录实例
。里边有很详细的讲解!

第四步修改配置文件

下边的是我建立项目的配置文件,照着这个配置文件进行修改就可以,总共有6个地方需要进行修改!各个节点的说明已经写好!

<span style="font-size:18px;"><configuration>
  <!--CAS开始-->
  <configSections>
    <!--定义casClientConfig-->
    <sectionname="casClientConfig"type="DotNetCasClient.Configuration.CasClientConfiguration,DotNetCasClient"/>
  </configSections>
  <!--cas结束-->
  <!—cas开始-->

  <!--cas   配置casClientConfig-->
  <!--
  casserverloginurl
    要求URL CAS登录表单。
    ServerName 要求
    承载此应用服务器的主机名。这是用来生成的URL将被发送到CAS服务器重定向。CAS服务器必须能够解析这个主机名。就是你的应用程序的发布地址 特别需要注意 一定要写当前应用程序的地址!
    casserverurlprefix  要求
    URL的CAS服务器应用程序根。
    ticketvalidatorname     要求
    票验证器验证CAS票使用特定的协议名称。有效值是cas10 cas20 saml11,,。
  singlesignout
    使该应用程序接收CAS单点出发送的信息,当用户的登录会话结束。这将导致该应用程序被破坏用户的会话。默认的是真的。
    其他的为可选的
-->
  <casClientConfig
    casServerLoginUrl="http://192.168.24.247:8089/cas/login"
    casServerUrlPrefix="http://192.168.24.247:8089/cas/"
    serverName="http://localhost:1255"
    redirectAfterValidation="true"
    renew="false"
    singleSignOut="true"
    ticketValidatorName="Cas20"
    serviceTicketManager="CacheServiceTicketManager"/>
  <!—cas结束-->
  <appSettings>
    <addkey="webpages:Version"value="2.0.0.0"/>
    <addkey="webpages:Enabled"value="false"/>
    <addkey="PreserveLoginUrl"value="true"/>
    <addkey="ClientValidationEnabled"value="true"/>
    <addkey="UnobtrusiveJavaScriptEnabled"value="true"/>
  </appSettings>
  <system.web>
    <!—cas 开始
        配置ASP.NETForms身份验证部分,以便它指向的属性定义casclientconfig casserverloginurlCAS服务器的登录URL。
      CAS登录URL是在这两个位置同样是非常重要的。
      defaultUrl 默认登录跳转的相对地址
-->

    <authenticationmode="Forms">
      <formsloginUrl="http://192.168.24.247:8089/cas/login"
              timeout="30"
              defaultUrl="~/Home/Index"
              cookieless="UseCookies"
              slidingExpiration="true"/>
      <!--path="/NetCasClient"-->
    </authentication>

    <authorization>
      <denyusers="?"/>
</authorization>
<!—cas 结束-->
    <httpRuntime/>
    <compilationdebug="true"targetFramework="4.0"/>
    <pagescontrolRenderingCompatibilityVersion="4.0">
      <namespaces>
        <addnamespace="System.Web.Helpers"/>
        <addnamespace="System.Web.Mvc"/>
        <addnamespace="System.Web.Mvc.Ajax"/>
        <addnamespace="System.Web.Mvc.Html"/>
        <addnamespace="System.Web.Routing"/>
        <addnamespace="System.Web.WebPages"/>
      </namespaces>
    </pages>
    <!--cas 开始-->
    <httpModules>
      <addname="DotNetCasClient"type="DotNetCasClient.CasAuthenticationModule,DotNetCasClient"/>
    </httpModules>
    <!--cas结束-->
  </system.web>
  <system.webServer>
    <validationvalidateIntegratedModeConfiguration="false"/>
    <handlers>
      <removename="ExtensionlessUrlHandler-ISAPI-4.0_32bit"/>
      <removename="ExtensionlessUrlHandler-ISAPI-4.0_64bit"/>
      <removename="ExtensionlessUrlHandler-Integrated-4.0"/>
      <addname="ExtensionlessUrlHandler-ISAPI-4.0_32bit"path="*."verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS"modules="IsapiModule"scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll"preCondition="classicMode,runtimeVersionv4.0,bitness32"responseBufferLimit="0"/>
      <addname="ExtensionlessUrlHandler-ISAPI-4.0_64bit"path="*."verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS"modules="IsapiModule"scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll"preCondition="classicMode,runtimeVersionv4.0,bitness64"responseBufferLimit="0"/>
      <addname="ExtensionlessUrlHandler-Integrated-4.0"path="*."verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS"type="System.Web.Handlers.TransferRequestHandler"preCondition="integratedMode,runtimeVersionv4.0"/>
    </handlers>

    <!—cas开始
        加入到<系统注册与ASP.NET管道casauthenticationmodule网络部分表现在以下配置块。-->
    <modules>
      <removename="DotNetCasClient"/>
      <addname="DotNetCasClient"type="DotNetCasClient.CasAuthenticationModule,DotNetCasClient"/>
    </modules>
    <!—cas结束-->
  </system.webServer>
  <!--cas开始-->
  <system.diagnostics>
    <traceautoflush="true"useGlobalLock="false"/>
    <sharedListeners>
      <addname="TraceFile"type="System.Diagnostics.TextWriterTraceListener"initializeData="F:\RunLog\DotNetCasClient.Log"traceOutputOptions="DateTime"/>
    </sharedListeners>
    <sources>
      <sourcename="DotNetCasClient.Config"switchName="Config"switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <addname="TraceFile"/>
        </listeners>
      </source>
      <sourcename="DotNetCasClient.HttpModule"switchName="HttpModule"switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <addname="TraceFile"/>
        </listeners>
      </source>
      <sourcename="DotNetCasClient.Protocol"switchName="Protocol"switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <addname="TraceFile"/>
        </listeners>
      </source>
      <sourcename="DotNetCasClient.Security"switchName="Security"switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <addname="TraceFile"/>
        </listeners>
      </source>
    </sources>
    <switches>
      <addname="Config"value="Verbose"/>
      <addname="HttpModule"value="Verbose"/>
      <addname="Protocol"value="Verbose"/>
      <addname="Security"value="Verbose"/>
    </switches>
  </system.diagnostics>
  <!--cas 结束-->
</configuration></span>

第五步看效果

修改完配置文件以后, 就可以测试一下了!直接按ctrl + F5启动! 如果他直接进入到cas的登录界面,并且地址栏中http://192.168.24.247:8089/cas/login?service=http%3a%2f%2flocalhost%3a1255%2f 
包含了一个service=…的东西。那么就表示成功了!输入用户名密码就如果进入到index页表示你的客户端配置成功了!

这样单点登录的客户端的配置到这里就算完成了!

时间: 2024-10-03 19:54:05

Mvc4单点登录之三Cas 客户端配置的相关文章

Mvc4单点登录之一Cas简单介绍

背景 前几天写过一篇博客Net单点登录详解 (SSO),但是在这篇博客中是在asp.net 下做的实验,没有什么问题,但是转换到mvc中之后,问题就接二连三的出,后来没有办法,想想还是用人家已经写好的吧,别用那些自己写的东西了,一是不稳定,二是有很多的缺陷!然后就开始寻找!最后决定用cas来做! SSO介绍 SSO英文全称SingleSign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. CAS = CentralAuthentication S

Mvc4单点登录之四 配置Cas服务端,返回更多的用户信息!

        .Net单点登录详解 (SSO)        Mvc4单点登录之一Cas简单介绍        Mvc4单点登录之二 Cas server端配置            Mvc4单点登录之三Cas 客户端配置            前几篇博客大致的介绍了,cas的使用,在这篇博客当中,将为大家介绍一下如何配置服务端,让用户登录之后,返回更多的用户信息! 一.首先需要配置属性attributeRepository 首先,你需要到WEB-INF目录找到 deployerConfigC

Mvc4单点登录之二 Cas server端配置

上一篇博客Mvc4单点登录之一Cas简单介绍简单的介绍了cas的工作原理!这篇文章介绍一下Cas Server端的配置. 首先要说明Cas server 是一个java程序,所以首先要确定你的电脑上安装了JDK, 并且安装了Tomcat 服务器,如果不会装的话,那么可以从网上查一下资料,一把一把的!例如,我将tomcat安装在了E:\apache-tomcat-7.0.52. cas的下载地址 cas 客户端:  http://download.csdn.net/detail/zhanghong

JAVA CAS单点登录之三:CAS代理模式演练

前言 JAVA CAS单点登录之一:搭建CAS服务器 JAVA CAS单点登录之二:CAS普通模式1演练 代理模式相相对上一节的普通模式,更加复杂了.但配置起来也会稍微有些差别.所谓难者不会,会者不难.如果遇到一个从来没有遇到的问题,解决起来也是非常棘手的,当然解决之后就不是事了.我就遇到了一个CAS 坑爹的错误.一步步按照别人的博客坐下来,普通模式部署没有多大问题,就是不知道为什么代理模式总是出错,搜遍了整个网络,也没找到问题所在,我就纳闷了,为什么就没有人 遇到过呢.还好,最后我使用了杀手锏

Jeesite单点登录集成cas另加自定义登录验证

Jeesite单点登录集成Cas另加自定义登录验证 JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的 开源 Java EE快速开发平台. Cas主要是用来解决多应用之间统一登陆认证,无需用户在同一公司多应用之间重复登陆.例如阿里巴巴中淘宝.天猫,在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. Cas基础 服务端 服务端cas-server-webapp-4.0.0.war,服务器端程序一般不用我们完成,但需要做一点小小的修改,cas的服务

java单点登录系统CAS的简单使用

转:http://blog.csdn.net/yunye114105/article/details/7997041 背景 有几个相对独立的java的web应用系统, 各自有自己的登陆验证功能,用户在使用不同的系统的时候,需要登陆不同的系统.现在需要提供一个统一的登陆/登出界面, 而不修改各个系统原来的登陆验证机制.于是采用单点登录系统CAS. 使用步骤 要使用单点登录,需要部署CAS系统, CAS服务端可以直接部署在tomcat下运行, 对于CAS服务端来说,所有要集成单点登录的web应用都是

CAS客户端配置

1. 导出证书 以上操作会在当前目录产生文件:ssodemo.crt(需要用到的文件请看CAS服务端配置那篇文章) 2. 客户端导入证书 以上操作会在jdk安装目录jre\lib\security下产生文件:cacerts 注意:多台电脑要重复以上操作,每个jdk都要导入这个文件 另一种导入证书的方法详见:http://www.cnblogs.com/cxyj/p/3884507.html 3. 添加cas客户端jar包到自己需要单点登录的web应用web-inf/lib目录下 下载地址:htt

单点登录系统CAS入门

一.单点登录的概念 单点登录(Single Sign On),简称为SSO.SSO是定义在多个应用系统中,用户只需要登录一次就可以访问所有的相互信任的应用系统. 当我们创建工程的子系统部署在不同的服务中的时候,使用传统的session是无法解决问题的,这时候我们就需要使用相关的单点登录技术来解决. 1.CAS概述 CAS是Yale大学的一个开源项目,旨在为web应用系统提供一种可靠的单点登录方法.CAS具有以下特点: 开源的企业级单点登录解决方案 CAS Server为需要独立部署的Web应用

开源单点登录系统CAS入门

1.开源单点登录系统CAS入门 1.1 什么是单点登录 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. 我们目前的系统存在诸多子系统,而这些子系统是分别部署在不同的服务器中,那么使用传统方式的session是无法解决的,我们需要使用相关的单点登录技术来解决. 1.2 什么是CAS CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种