1、参考文档
cas官网:
cas好文:
2、版本
jdk:1.8
tomcat 8.5.8
服务端:cas-server 4.2.7
客户端:cas-client 3.4.1
3、配置要点
3.1 创建证书
1) 服务端生成数字证书的命令
keytool -genkey -keystore "F:\cas\keystore\cas.keystore" -alias "mykey" -keyalg "RSA" -keypass "changeit" -storepass "changeit"
my name: sso.itown.cn
my organize:itown.cn
2) 服务端导出cer证书文件的命令
keytool -export -file ./mykey.crt -alias mykey -keystore ./cas.keystore
3) 客户端JRE中导入服务端cer证书的命令
keytool -import -keystore E:\jdk1.8.0_25\jre\lib\security\cacerts -file ./mykey.crt -alias mykey
4) 同时修改hosts,增加如下内容:
127.0.0.1 sso.itown.cn
3.2 服务端tomcat支持SSL访问
tomcat 8.5 单项认证生效配置如下:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="F:/cas/keystore/cas.keystore"
certificateKeyAlias="mykey"
certificateKeystorePassword="changeit"
type="RSA" />
</SSLHostConfig>
</Connector>
部署cas-server,测试账号casuser,密码Mellon
3.3 服务端采用db认证方式
检查deployerConfigContext.xml
注释如下内容:
<alias name="acceptUsersAuthenticationHandler" alias="primaryAuthenticationHandler" />
添加如下内容:
<bean id="queryDatabaseAuthenticationHandler" class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
<property name="passwordEncoder" ref="MD5PasswordEncoder"/>
</bean>
<bean id="MD5PasswordEncoder" class="org.jasig.cas.authentication.handler.DefaultPasswordEncoder" autowire="byName">
<constructor-arg value="MD5"/>
</bean>
<bean id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
p:driverClass="oracle.jdbc.driver.OracleDriver"
p:jdbcUrl="jdbc:oracle:thin:@192.168.21.226:1521:test"
p:user="pgtools"
p:password="pgtools"
p:initialPoolSize="6"
p:minPoolSize="6"
p:maxPoolSize="18"
p:maxIdleTimeExcessConnections="120"
p:checkoutTimeout="10000"
p:acquireIncrement="6"
p:acquireRetryAttempts="5"
p:acquireRetryDelay="2000"
p:idleConnectionTestPeriod="30"
p:preferredTestQuery="select 1 from dual" />
<alias name="queryDatabaseAuthenticationHandler" alias="primaryAuthenticationHandler" />
<alias name="dataSource" alias="queryDatabaseDataSource" />
同时修改cas.properties,配置如下内容:
cas.jdbc.authn.query.sql=select password from app_user where username=?
此项设置采用的c3p0连接池,需检查相关jar包,示例中采用oracle db,需引入oracle的连接jar包
由于密码采用MD5加密,app_user表中password字段需MD5加密
3.4 客户端安装
下载地址:
打包生成war包,修改web.xml配置
3.5 服务端重要参数修改
针对4.2以上的版本,
WEB-INF/classes/services 中的 HTTPSandIMAPS-10000001.json
需要修改成 "serviceId" : "^(https|imaps|http)://.*" 或者把https修改成http
否则会报Application Not Authorized to Use CAS
相关推荐
cas-server-webapp-4.2.7.war cas-server-webapp-4.2.7.warcas-server-webapp-4.2.7.warcas-server-webapp-4.2.7.war 自己通过源代码编译的。测试可用版
赠送原API文档:metrics-core-4.2.7-javadoc.jar; 赠送源代码:metrics-core-4.2.7-sources.jar; 赠送Maven依赖信息文件:metrics-core-4.2.7.pom; 包含翻译后的API文档:metrics-core-4.2.7-javadoc-API文档-...
CAS(Central Authentication Service)是基于Java的开源身份验证框架,主要功能是实现单点登录(Single Sign-On,简称SSO)。SSO允许用户在访问多个系统时只需进行一次登录,提高了用户体验并增强了安全性。CAS-...
在 4.2.7 版本中,EMQ X 提供了以下关键特性: 1. **大规模并发连接**:EMQ X 能够支持数十万甚至百万级别的并发 MQTT 连接,这使得它非常适合处理大量设备同时在线的情况。 2. **发布/订阅模型**:MQTT 的核心是...
mongodb-linux-x86_64-rhel70-4.2.7.tgz
赠送原API文档:metrics-core-4.2.7-javadoc.jar 赠送源代码:metrics-core-4.2.7-sources.jar 包含翻译后的API文档:metrics-core-4.2.7-javadoc-API文档-中文(简体)-英语-对照版.zip 对应Maven信息:groupId:io...
charles-proxy-4.2.7-win64.msi charles.jar 破解方法.txt
在“neo4j-community-4.2.7-windows.zip”这个压缩包中,您将获得适用于Windows操作系统的Neo4j社区版的4.2.7版本。这个版本是免费的,允许个人和开源项目使用,旨在支持开发和学习。 图形数据库与传统的关系型...
mqtt服务器,参考安装文章:https://mp.csdn.net/mp_blog/creation/success/140184385
2017 年4月从github上下载最新项目自己构建的war包,版本号是4.2.7,是较稳定的一个版本。构建过程请参考:http://blog.csdn.net/pucao_cug/article/details/68945379
MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era. (:(:windows操作系统下mongodb3.6安装包,欢迎下载:):)
这是CAS4.2.7的源码编译,并打包好的说明书噢。 目前(2022.3.27)CAS已经升到6版本,4版本以前的说明书,都已经下线,网上找不到任何痕迹。 翻到源码,把相关文档整理,编译成chm,方便大家查阅和使用。 cas最大的...
基于CAS4.2.7集成jcaptcha1.0,实现登录添加验证码功能
CAS 4.2.7版本很可能基于Spring Boot框架,因此数据库配置可能会利用Spring Boot的自动配置特性。通过`spring.datasource`前缀的属性,可以方便地配置数据源,Spring Boot还会自动加载JDBC驱动并创建数据源。 7. *...
hibernate-release-4.2.7.SP1.chm
·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,...
aviator-4.2.7
CAS(Central Authentication Service)服务器是一种基于Java的开源身份验证服务,它允许用户通过单一登录(Single Sign-On,SSO)访问多个应用系统。在本场景中,我们将讨论如何使用Maven构建工具搭建CAS Server ...
CAS(Central Authentication Service)服务器是一种基于Java的开源身份验证框架,它允许用户通过单点登录(Single Sign-On,简称SSO)访问多个应用系统。CAS Server 4.2.7是该服务的一个特定版本,提供了增强的安全...