`
zeng_84_long
  • 浏览: 58123 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
阅读更多
 

一.环境

a)         Windows 2003 sp1

b)        JDK<!----><st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">1.5.0</st1:chsdate>_11

c)        Tomcat <st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">5.5.23</st1:chsdate>

d)        MySql5.0

二.准备

a)         cas-server-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">3.0.6</st1:chsdate>.zip 下载地址:http://www.ja-sig.org/products/cas/index.html

b)        cas-client-java-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">2.1.1</st1:chsdate>.zip 下载地址:同上

c)        安装完jdkjre后,需要配置JAVA_HOMEPATH=%JAVA_HOME%\bin

三.步骤

a)        配置Tomcat使用SSL安全认证

                         i.              使用命令提示符进入到Tomcat安装目录

                       ii.              生成服务端密匙执行以下命令

                     keytool -genkey -alias 别名keyalg RSA -keypass changeit -storepass changeit                           -keystore server.keystore

例:keytool -genkey -alias casserver -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore

运行后出现提示信息:

输入keystore密码:changeit      这里也填入主机名

您的名字与姓氏是什么?

 [Unknown] localhost           这里一定要填写正确的主机名

您的组织单位名称是什么?

 [Unknown] oksonic

您的组织名称是什么?

 [Unknown] oksonic

您所在的城市或区域名称是什么?

 [Unknown] <st1:place w:st="on"><st1:city w:st="on">kunming</st1:city></st1:place>

您所在的州或省份名称是什么?

 [Unknown] <st1:place w:st="on"><st1:state w:st="on">yunnan</st1:state></st1:place>

该单位的两字母国家代码是什么

 [Unknown] cn

CN=localhost, OU=oksonic, O=oksonic, L=kunming, ST=yunnan, C=cn 正确吗?

 [] y

完成后会在Tomcat目录生成一个名为casserver的文件

                      iii.              生成服务端证书执行以下命令

                            keytool -export -alias casserver -storepass changeit -file server.cer                                     -keystore server.keystore

                            命令执行后生成一个server.cer的证书文件

 

                     iv.              生成客户端密匙执行以下命令

                            keytool -genkey -alias casclient -keyalg RSA -keypass changeit -storepass                                  changeit -keystore client.keystore

                       v.              生成客户端证书执行以下命令

                            keytool -export -alias casclient -storepass changeit -file client.cer                                        -keystore client.keystore

                            命令执行后生成一个server.cer的证书文件

                     vi.              导入证书文件到cacerts 文件中,执行以下命令

                            keytool -import -trustcacerts -alias server -file server.cer -keystore                                      cacerts -storepass changeit

 

                            keytool -import -trustcacerts -alias client -file client.cer -keystore                                        cacerts -storepass changeit

                            cacerts文件,拷贝到<JAVA_HOME>\jre\lib\security目录下

 

                    vii.              拷贝cas-server-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">3.0.6</st1:chsdate>.zip包内的target目录下的cas.war文件到Tomcat目录下的webapps目录下

                  viii.              修改Tomcat的配置文件server.xml把以下补注释的内容打开

<Connector port="8443" maxHttpHeaderSize="8192"

               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

               enableLookups="false" disableUploadTimeout="true"

               acceptCount="100" scheme="https" secure="true"

               clientAuth="false" sslProtocol="TLS" />

加入红字部份后的内容如下:

         <Connector port="8443" maxHttpHeaderSize="8192"

keystorePass="changeit" keystoreFile="/server.keystore"

               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

               enableLookups="false" disableUploadTimeout="true"

               acceptCount="100" scheme="https" secure="true"

               clientAuth="false" sslProtocol="TLS" />

 

b)        配置客户端应用

                         i.              使用Tomcat的例子jsp-examples来做客户端

                       ii.              打开项目中的web.xml文件,加入以下配置信息

                     <filter>
                             <filter-name>CASFilter</filter-name>
                              <filter-class>
                                    edu.yale.its.tp.cas.client.filter.CASFilter
                             </filter-class>
                             <init-param>
                             <param-name>
                                    edu.yale.its.tp.cas.client.filter.loginUrl
                            </param-name>
                             <param-value>
https://localhost:8443/cas/login</param-value>
                            </init-param> 
                            <init-param>
                               <param-name>
                                          edu.yale.its.tp.cas.client.filter.validateUrl
                                   </param-name>
                            <param-value>
                                  
https://localhost:8443/cas/proxyValidate
                            </param-value>
                     </init-param>
                     <init-param>
                            <param-name>
                                    edu.yale.its.tp.cas.client.filter.serverName
                            </param-name>
                                   <param-value>
localhost:8080</param-value>
                      </init-param>
              </filter>

              <filter-mapping>
              <filter-name>CASFilter</filter-name>
                     <url-pattern>
/ *</url-pattern>
               </filter-mapping>

 

              拷贝cas-client-java-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">2.1.1</st1:chsdate>.zip包中的casclient.jar到项目的lib目录下

 

              现在可以启动Tomcat来测试一下是否能够进入到登录页

c)         配置CAS使用数据库进行验证

                         i.              MySql中的Test库中新建app_user

       CREATE TABLE `app_user` (
                  `username` varchar(30) NOT NULL default '',
                  `password` varchar(45) NOT NULL default '',
                  PRIMARY KEY  (`username`)
         ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
添加以下用户:
         INSERT INTO `app_user` (`username`,`password`) VALUES

                    ('oksonic','oksonic'),

                    ('oksonic1','oksonic1');

 

                      ii.              修改cas项目中的deployerConfigContext.xml文件

<bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />
注释掉该行,在其下加入:
<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
                            <property name="sql" value="select password from
app_user where username=?" />
                            <property name="dataSource" ref="dataSource" />

                     </bean>
并添加一个bean
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close">
       <property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property>
       <property name="url"><value>jdbc:mysql://localhost:3306/test</value></property>
       <property name="username"><value>test</value></property>

 

 <filter>  
    <filter-name>CASFilterfilter</filter-name>  
    <filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>  
    <init-param>  
        <param-name>edu.yale.its.tp.cas.client.filter.loginUrl </param-name>  
        <param-value>https://localhost:8443/cas/login</param-value>  
    </init-param>  
    <init-param>  
        <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>  
        <param-value>https://localhost:8443/cas/proxyValidate</param-value>  
    </init-param>  
    <init-param>  
        <param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>  
        <param-value>localhost:8443</param-value>  
    </init-param>    
</filter>  
<filter-mapping>  
    <filter-name>CASFilterfilter</filter-name>
    <url-pattern>/*</url-pattern>  
</filter-mapping>


       <property name="password"><value>test</value></property>
    </bean>
拷贝cas-server-jdbc-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">3.0.6</st1:chsdate>.jarmysql-connector-java-3.1.11-bin.jarwebapps/cas/WEB-INF/lib下。

分享到:
评论

相关推荐

    H3C CAS云计算软件套件《H3C CAS七日通》.rar

    10. **开局配置实战**:通过H3C CAS开局配置指导书,一步步操作设置CAS环境,包括硬件准备、软件安装、网络配置等。 11. **最佳实践**:学习H3C CAS在实际场景中的应用案例和最佳实践,提高解决实际问题的能力。 ...

    H3C CAS应用HA操作指南.pdf

    "H3C CAS应用HA操作指南.pdf" 本文档是关于H3C CAS应用HA操作指南的详细指导书,旨在帮助用户正确地配置和使用H3C CAS应用HA系统。下面是本文档的知识点总结: 一、简介 H3C CAS应用HA系统是一个高可用性的解决...

    H3C CAS REST API接口

    REST(Representational State Transfer)API是H3C CAS系统提供的一种接口方式,用于允许外部应用程序与CAS系统进行交互,实现系统的集成和二次开发。通过REST API,开发者可以远程操作和管理H3C CAS中的各种资源,...

    CAS单点登录(SSO)服务端自定义认证+CAS客户端配置+CAS完整使用文档+CAS4.2.7 cas-serv服务端源码 cas-client客户端源码

    压缩包中包含的文档将指导你如何配置CAS客户端,包括在Spring或Web.xml中添加必要的配置项,设置服务URL,以及处理TGT(Ticket Granting Ticket)和ST(Service Ticket)。 3. **CAS4.2.7源码**: CAS 4.2.7是CAS...

    cas4.2.7 实现其他系统和cas互相认证互信

    3. **集成CAS客户端库**:在外部系统中,需要集成CAS客户端库,如Java CAS Client、Spring Security CAS等,它们负责处理与CAS服务器的交互,包括重定向用户到CAS登录页面、接收和验证服务票证。 4. **配置客户端...

    CAS restful接口调用

    {"ticket":"TGT-1-Uxi0hyRmMcyUDmKuPOcriBs1WlW3UMGH9t9JVaL9EZ1nxka91S-cas01.example.org"} ``` #### 五、获取ST 获得TGT后,可以进一步获取ST,用于验证用户身份并访问受保护的服务资源。获取ST的过程如下: ...

    H3C CAS总结.zip

    开局手册通常包含系统安装、初始化设置、服务启动和验证等内容,确保用户能够正确、顺利地启动和运行H3C CAS平台。 综上所述,这个压缩包是一份全面的H3C CAS学习资源,涵盖了从基础配置到高级应用的多个层面,无论...

    cas集成AD域

    3. **配置AD域验证**:在CAS服务器的配置中,设置认证处理器为支持AD的LdapAuthenticationHandler,指定搜索基DN(Distinguished Name)、过滤器和属性映射。这样,当用户尝试登录时,CAS会将用户名发送到AD进行验证...

    cas-client-2.0.11.zip_cas client_cas-clie_cas-client-2._java CAS

    3. **CAS客户端配置**:安装和配置CAS客户端通常涉及以下几个步骤:导入相关的JAR库,配置客户端的属性文件(如cas.properties),定义服务URL和CAS服务器的地址,以及处理服务票证验证的过滤器设置。 4. **cas-...

    H3C CAS云计算管理平台安装手册.pdf

    H3C CAS云计算管理平台安装手册.pdf H3C CAS云计算管理平台安装手册是杭州华三通信技术有限公司提供的解决方案,旨在指导用户安装和使用H3C CAS云计算管理平台。该手册详细介绍了CAS云计算管理平台的安装、配置、...

    idea 中导入cas

    4. **设置编译器与JDK**:确保你的Idea项目使用的Java版本与CAS项目兼容。在"Idea Settings" -&gt; "Compiler"中设置合适的JDK版本。 5. **运行与调试配置**:在"CAS Server"模块中,创建一个新的"Application"类型的...

    H3C_CAS_P2V_Converter工具使用指南_–_Linux篇

    本文档详细介绍了H3C CAS P2V Converter工具在Linux环境下的使用方法。H3C CAS P2V Converter是一个方便、高效的系统迁移解决方案,能够将物理主机转换为虚拟机,从而减少硬件成本、优化资源使用,并提供灵活的...

    cas-overlay-template-6.4 服务端代码

    3.CAS-连接池配置 4.CAS-自定义错误信息 5.CAS-识别json文件 6.CAS-页面缓存记住我 7.CAS-cookie设置 8.CAS-tgc设置 9.CAS-登出 10.CAS-redisCluster集群存储ticket(相应redis必须配置成cluster集群) 11.CAS-加密...

    cas整合实例

    3. 配置客户端:在你的应用配置文件中,设置CAS的相关参数,如服务器URL、服务定义ID等。这将告诉客户端去哪里寻找CAS服务器,以及如何进行交互。 接下来,"cas-server"文件包含的是CAS服务器的组成部分。CAS服务器...

    cas修改登录页

    2. **CAS配置**:修改登录页通常涉及修改CAS服务器的配置,可能需要在`cas-server-config.xml`等配置文件中调整视图相关的设置,以指向自定义的登录页面。 3. **Web应用程序开发**:你需要具备基本的Web开发技能,...

    cas4.0.7+casClient示例(原生)

    这个示例可能包含了数据库脚本和配置文件,以指导如何设置CAS与MySQL、Oracle或其他数据库的连接。数据库整合通常涉及配置`deployerConfigContext.xml`文件中的数据源和用户实体。 **4. 前后端代码结构** - **前端*...

    Cas5.2.6(cas-overlay-template-5.2.6)服务端

    3. **配置**:在项目中,你需要根据实际需求修改`cas.properties`或相关YAML配置文件,比如设置服务器地址、数据库连接信息、认证策略等。 4. **服务注册**:CAS需要知道哪些应用需要接入SSO,可以通过配置文件或者...

    CAS Protocol 3.0 Specification.docx 官方中文版教程详解

    - **renew [可选]**:若设置此参数,无论是否存在SSO session,CAS都会要求用户提供凭证,不使用已有的登录状态。 **协议流程** 1. 用户尝试访问受CAS保护的服务。 2. 服务将用户重定向到CAS服务器的/login URI。 ...

    CAS 客户端排除不需要过滤的路径

    排除CAS客户端不需要过滤的路径,在web.xml文件中配置排除地址。

    cas java cas java 实例

    - 在配置文件中设置CAS服务器的URL、服务ID(对应你的应用)和其他相关参数。 - 定义一个过滤器,通常称为`CasAuthenticationFilter`,该过滤器负责拦截请求,引导用户到CAS服务器进行身份验证,并处理验证结果。 ...

Global site tag (gtag.js) - Google Analytics