`
vanadiumlin
  • 浏览: 508805 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

总结play中使用cas进行sso认证

阅读更多

 

使用指令生成证书

./keytool -genkey -alias examplecas -keypass changeit -keyalg RSA -keystore server.keystore

 

 

配置完成

 

生成服务端

keytool -genkey -alias mykey -keyalg RSA -keystore server.keystore

生成客户端

keytool -export -file client.crt -alias mykey -keystore server.keystore  把client.crt复制到客户机

此证书所有客户端通用

输入密码如:111111

安装tomcat6

在根目录中加入keystore文件夹

如E:\apache-tomcat-6.0.32\keystore

拷贝 server.keystore 进keystore中

配置服务器端tomcat 6.0(conf/server.xml)
    打开被注释掉的https配置区,添加keystoreFile,keystorePass,truststoreFile属性配置。

Xml代码  

<Connector port="8443" minSpareThreads="5" maxSpareThreads="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="E:/apache-tomcat-6.0.32/keystore/server.keystore" keystorePass="111111"
clientAuth="false" sslProtocol="TLS"/>

 

服务器端cas-server-3.4.6-release  下载http://www.jasig.org/cas/download

cas-server-3.4.6-release\cas-server-3.4.6\modules\cas-server-webapp-3.4.6.war

解压到tomcat6目录下  自解压

在cas\WEB-INF\spring-configuration 目录中applicationContext.xml

文件中加入

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost:3306/biz_deploy_100"/>
        <property name="username" value="bizgame" />
        <property name="password" value="bizgame" />
</bean>

在lib中加入mysql驱动

打开deployerConfigContext.xml

修改

  <bean
     class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />


<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler"> 
    <property name="sql" value="select md5password from sso_user where loginname=?" /> 
            <property name="dataSource" ref="dataSource" /> 

复制cas-server-support-jdbc-3.4.6.jar 进 lib中

系统完成,启动tomcat

 

 

 

客户端 play  cas-3.0  参考 http://www.playframework.org/modules/cas-3.0/home

安装 play  install cas-3.0

 

route中的配置

# import these default routes as :

# *         /               module:logisima-cas

#

 

GET         /login           modules.cas.SecureCAS.login

GET         /logout         modules.cas.SecureCAS.logout

GET         /authenticate   modules.cas.SecureCAS.authenticate

GET         /pgtcallbackurl modules.cas.SecureCAS.pgtCallBack

 

application.conf中的配置

 

#############################################################

# CAS CONFIGURATION

#############################################################

#module.cas=E:/play-1.1/modules/cas-3.0
module.cas=${play.path}/modules/cas-3.0
cas.validateUrl=https://xxx.xx.121.243:8443/cas/serviceValidate
cas.loginUrl=https://xxx.xx.121.243:8443/cas/login
cas.logoutUrl=https://xxx.xx.121.243:8443/cas/logout
 cas.gateway=false
application.url.ssl=https://192.168.1.113:8443
application.url=http://192.168.1.113
 #application.url.ssl=http://192.168.1.113
 cas.mockserver=false


删除项目下eclipse目录,重新使用play ec生成eclipse支持

在需要验证的controller 中加入@With(SecureCAS.class)

把从服务器端生成的client.crt文件导入jvm中,记得密码为 changeit

 

keytool -import -keystore "C:\Program Files\Java\jdk1.6.0_23\jre\lib\security\cacerts" -file play.crt -alias play

客户端导入输入 密码: changeit

 

 

最优的配置参考:http://vanadiumlin.iteye.com/blog/974483

分享到:
评论

相关推荐

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

    CAS(Central Authentication Service)是Java开发的一个开源的单点登录(Single Sign-On,简称SSO)框架,主要用于解决网络应用中的身份验证问题。本压缩包提供了CAS服务端自定义认证的实现,以及CAS客户端的配置...

    CAS(SSO)-.zip_CAS_CAS SSO_java sso_sso java

    通过学习这个教程,你可以深入理解CAS如何工作,以及如何在实际项目中部署和使用SSO。尽管文档可能存在一些错误,但总体上,它会为你提供一个全面的CAS SSO实现指南。在实践过程中,注意理解和适应不同的应用场景,...

    CAS-SSO系统架构 ppt

    这意味着,尽管CAS可以确认用户是否已经登录,但对于用户在特定子系统中的详细权限,CAS并不进行干涉,而是留给各子系统根据自身需求进行定制化处理。 SSO,即Single Sign-On(单点登录),主要解决的是用户在多个...

    CAS-SSO源码包(两个版本)

    SSO允许用户在一次登录后访问多个应用系统,而无需为每个系统分别进行认证,大大提升了用户体验。这个压缩包包含了CAS服务器的源代码,提供了两个不同版本,可能是为了满足对不同功能需求或兼容性的研究。 CAS的...

    CAS-SSO-TRIAL.zip_CAS_CAS SSO_java sso_sso

    描述中提到的"Yale CAS"是指耶鲁大学开发的CAS服务器,它是一种广泛使用的SSO解决方案。这个教程涵盖了如何使用CAS来实现SSO,包括了Java和.NET平台的实现方法。"http://214s.5d6d.com"可能是一个链接,原本提供更多...

    Weblogic使用YALE(耶鲁)CAS实现SSO单点登录 的方法.doc

    1. 生成服务器证书:需要生成一个服务器证书,以便在 HTTPS 连接中使用。 2. 配置 Tomcat 的 HTTPS:需要配置 Tomcat 服务器以便使用 HTTPS 连接。 3. 配置 Weblogic 的 HTTPS:需要配置 Weblogic 服务器以便使用 ...

    CAS实现sso单点登录原理

    1. 所有的认证登录都在SSO认证中心进行。 2. SSO认证中心通过一些方法来告诉Web应用当前访问用户究竟是不是已通过认证的用户。 3. SSO认证中心和所有的Web应用建立一种信任关系,也就是说Web应用必须信任认证中心。...

    CAS_SSO框架 官方PPT

    CAS_SSO 框架 官方PPT ....

    cas_sso.rar_CAS_CAS SSO_cas文档_sso C_单点登录

    CAS(Central Authentication Service,中央认证服务)是一种广泛使用的开源身份验证框架,旨在提供一种安全的单点登录(Single Sign-On,SSO)解决方案。SSO允许用户通过一次登录,就能访问多个相互信任的应用系统...

    cas统一身份认证sso

    统一身份认证-CAS配置实现 SSO单点登录Spring-Security+&+CAS+使用手册 统一身份认证-CAS配置实现 CAS登录验证(密码MD5、SHA加密后_再进行Base64加密实现代码)_与Liferay的用户身份验证对应

    CAS 框架 SSO的实现.pdf

    - **CASClient**:部署于各个Web应用前端,当接收到需要认证的请求时,CASClient会重定向至CASServer进行认证。 - **CAS协议** - **基础协议**:CAS协议的基础流程包括: 1. CASClient接收请求并检查是否有...

    CAS SSO

    CAS(Central Authentication Service,中央认证服务)是一种广泛使用的开源单点登录(Single Sign-On, SSO)协议。SSO允许用户通过一次登录就能访问多个应用系统,而无需为每个系统分别进行身份验证。CAS SSO 提供...

    cas client springmvc(springmvc cas maven sso 详解 )

    - 在CAS服务器上注册你的SpringMVC应用作为服务,提供服务ID和服务URL,以便CAS服务器知道哪些应用需要进行SSO认证。 5. **用户认证与票据管理** - CAS登录流程:用户首次访问受保护资源时,会被重定向到CAS...

    springboot shiro pac4j cas jwt认证中心sso完整项目

    在本项目中,pac4j作为Shiro的扩展,用于与CAS服务器进行通信,实现用户认证的交互。 4. **CAS (Central Authentication Service)**: CAS是一个开源的身份验证服务,它为多个应用提供单一登录功能。在这个项目中...

    sonar-cas-plugin sso认证插件

    总结来说,Sonar-CAS插件是SonarQube与CAS集成的关键,它提供了安全、便捷的身份验证解决方案,增强了大型组织内部的代码质量管理系统的安全性。正确配置和使用此插件,可以极大地优化用户登录体验,同时强化企业的...

    cas sso server page

    开发者可以根据组织的需求选择合适的认证策略,并在CAS配置中进行设置。 6. 安全与扩展性: CAS提供了一些安全特性,如SSL/TLS加密通信、票证加密、会话超时等,确保认证过程的安全。此外,CAS具有高度可扩展性,...

    CAS--SSO单点用到的jar包

    总结一下,CAS-SSO的实现依赖于如cas-client-core.jar这样的核心组件,以及如commons-lang和SLF4J这样的辅助库,它们共同构成了SSO系统的关键部分,使开发者能够轻松地在Java应用中集成SSO功能。通过理解这些库的...

    CAS_SSO结合ASP搞定

    标题中的"CAS_SSO结合ASP搞定"指的是在ASP(Active Server Pages)环境中集成CAS(Central Authentication Service)单点登录(SSO, Single Sign-On)的一种实现方法。描述中提到的文档是一个解决ASP应用与CAS SSO...

    .net-casSSO-client.rar

    .NET CAS SSO客户端是一款专为.NET开发者设计的身份验证解决方案,它允许用户通过中央认证服务(Central Authentication Service,简称CAS)实现单点登录(Single Sign-On,简称SSO)。CAS是一种开放源码的Web身份...

Global site tag (gtag.js) - Google Analytics