`

Jasig CAS使用手札——一、了解Jasig CAS,简单运行!

阅读更多
SSO : 单点登录(Single Sign On , 简称 SSO )
CAS : CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架
有关CAS、SSO的详细信息我就不在这里罗嗦了,其实都是很简单理论,如果日后有时间,补充几张图,大家就很明白了~
今天要讨论的是了解Jasig CAS这个成熟的系统,并让它能够运行。当然,如果要让它正式投入使用,还是需要一点时间的!
首先,下载cas_server当前版本为3.4.2.1。

然后,我们来了解下这个压缩包!
打开这个压缩包,真是物产丰富。

我们先不关注其它内容,单看这个modules,单看modules中的cas-server-webapp-3.4.2.1.war

我们从这里入手!

把cas-server-webapp-3.4.2.1.war当作是一般的应用就好,我们把它导入eclipse,当作是一个简单的应用!

这里众多的xml令人眼花缭乱,我们不必惊慌,除了web.xml外这里能起作用的只有cas-servlet.xmldeployerConfigContext.xml!
我们需要做点什么?Nothing!即使我们不对这个系统进行任何改动,它仍旧可以运行!

输入用户名、密码试试登录试试?!不知道用户名?!没关系,就用最常用的admin:admin(用户名:密码)登录试试!

点击登录,看结果!

成功!!! 难道真的内置了这样的用户,正好被我蒙对了?!我可没有那么神奇!!!
再来个admin:manage试试!!!

注意控制台日志!
登录成功:
引用
2010-08-10 13:04:45,542 INFO [org.jasig.cas.authentication.AuthenticationManagerImpl] - <AuthenticationHandler: org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler successfully authenticated the user which provided the following credentials: [username: admin]>

登录失败:
引用
2010-08-10 13:08:38,333 INFO [org.jasig.cas.authentication.AuthenticationManagerImpl] - <AuthenticationHandler: org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler failed to authenticate the user which provided the following credentials: [username: admin]>


这个SimpleTestUsernamePasswordAuthenticationHandler.java默认实现了用户名与密码一致时,成功登录!
看看SimpleTestUsernamePasswordAuthenticationHandler.java的源代码就明白了!
public final class SimpleTestUsernamePasswordAuthenticationHandler extends
    AbstractUsernamePasswordAuthenticationHandler {

    public SimpleTestUsernamePasswordAuthenticationHandler() {
        log
            .warn(this.getClass().getName()
                + " is only to be used in a testing environment.  NEVER enable this in a production environment.");
    }

    public boolean authenticateUsernamePasswordInternal(final UsernamePasswordCredentials credentials) {
        final String username = credentials.getUsername();
        final String password = credentials.getPassword();

        if (StringUtils.hasText(username) && StringUtils.hasText(password)
            && username.equals(getPasswordEncoder().encode(password))) {
            log.debug("User [" + username + "] was successfully authenticated.");
            return true;
        }

        log.debug("User [" + username + "] failed authentication");

        return false;
    }
}

这里
StringUtils.hasText(username) && StringUtils.hasText(password)
            && username.equals(getPasswordEncoder().encode(password))

就是关键! 这个类是用于演示的!
打开deployerConfigContext.xml
				<!--
					| This is the authentication handler declaration that every CAS deployer will need to change before deploying CAS 
					| into production.  The default SimpleTestUsernamePasswordAuthenticationHandler authenticates UsernamePasswordCredentials
					| where the username equals the password.  You will need to replace this with an AuthenticationHandler that implements your
					| local authentication strategy.  You might accomplish this by coding a new such handler and declaring
					| edu.someschool.its.cas.MySpecialHandler here, or you might use one of the handlers provided in the adaptors modules.
					+-->
				<bean
					class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />

如果我们想让他具有真正意义的作用,就需要使用以下这些包:


最常用的莫过于使用JDBC的方式,也就是使用cas-server-support-jdbc-3.4.2.1.jar这个包来完成操作!
今天先到这里,时间有限,文档不齐,一时半会吃不透!就不在这里献丑了!
参考资料
http://www.ja-sig.org/products/cas/
http://www.ja-sig.org/wiki/display/CASUM/Home
http://static.springframework.org/spring-security/site/index.html

  • 大小: 97.1 KB
  • 大小: 131.5 KB
  • 大小: 162.5 KB
  • 大小: 72 KB
  • 大小: 33.1 KB
  • 大小: 83.8 KB
  • 大小: 13.9 KB
  • 大小: 63 KB
  • 大小: 38.3 KB
  • 大小: 38.3 KB
  • 大小: 39.6 KB
11
0
分享到:
评论
1 楼 xiaoxin5230 2010-08-11  
通过图形化的文字浅显易懂。。。。

相关推荐

    JASIG CAS 3 Learning Note 1 -- getting started

    **JASIG CAS 3 学习笔记 1 —— 开始之旅** JASIG CAS(Central Authentication Service)是一款开源的身份验证系统,广泛应用于多应用系统中的单点登录(Single Sign-On, SSO)。CAS 3 是其第三个主要版本,提供了...

    jasig cas4.1.4+oracle数据库认证

    Jasig Central Authentication Service(CAS)是一个开源的身份验证框架,主要用于实现单点登录(Single Sign-On, SSO)。它允许用户在一个应用系统中登录后,无需再次认证即可访问其他集成的应用系统。CAS 4.1.4 是...

    Jasig(cas)单点登录时序图

    ### Jasig (CAS) 单点登录时序图解析 #### 一、概述 Jasig 开源项目下的 CAS...在未来的企业级应用开发中,单点登录将会成为一个非常重要的技术领域,掌握 CAS 等成熟框架的使用将大大提高开发效率和安全性。

    org.jasig.cas.client.util.CommonUtils

    予org.jasig.cas.client.util.CommonUtils 加入 public static void disableSSLVerification(){ try { // Create a trust manager that does not validate certificate chains TrustManager[] ...

    jasig cas 单点登录

    jasig cas 单点登录环境搭建详细资料

    jasig-本地环境搭建二-使用简单demo运行

    标题 "jasig-本地环境搭建二-使用简单demo运行" 指向的是一个关于 Jasig 开源项目在本地环境中进行部署和运行的教程。Jasig 是一个专注于高等教育技术的开源社区,其项目通常涉及身份认证、门户管理和集成解决方案。...

    cas:Jasig CAS 4.1 Docker映像,具有战争建立,ldap,数据库和cas管理支持

    #DockerFile用于具有cas-management的JASIG CAS Jasig Cas 4.1映像 ##先决条件 码头工人 JVM和Maven(战争大楼) 码头工人组成 ssl证书 ## image build mvn clean package; docker-compose rm -f; docker-compose ...

    CAS jasig SSO单点登录解决方案完整版

    cas-client-core-3.2.1.jar LoginImpl.java LoginServlet.java SSOClientFilter.java web.xml 电子政务平台单点登录集成手册v4.0-2017年2月9日.docx

    东北大学信息化建设:基于JASIG CAS的统一身份认证系统

    东北大学作为中国东北地区的重要学府,在推进信息化进程中采取了一系列措施,其中“基于JASIG CAS的统一身份认证系统”是一项关键的技术应用。该系统旨在通过实现统一认证与单点登录(Single Sign-On, SSO),提高...

    jasig-cas-4.0.x-overlay-template:ala-cas从jasig cas 3.4.2升级到4.0.1

    Jasig CAS(Central Authentication Service)是一款广泛使用的开源身份验证系统,主要用于提供单一登录(Single Sign-On, SSO)服务。在从3.4.2版本升级到4.0.1的过程中,开发者通常会遇到兼容性问题和新功能的集成...

    CAS客户端JAR包版本3.3.3

    org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter &lt;param-name&gt;casServerUrlPrefix &lt;param-value&gt;http://192.168.156.120:8080/cas&lt;/param-value&gt; &lt;param-name&gt;serverName ...

    Cas Server 3.4.2 和 Cas Client 3.1.6 的源代码

    CAS(Central Authentication Service)是一种广泛使用的开放源代码单一登录(Single Sign-On, SSO)框架,它允许用户通过一个认证入口点访问多个应用系统,而无需多次登录。这个框架的主要目标是简化身份验证过程,...

    cas-server-3.5.2.1-release.zip

    CAS(Central Authentication Service)是 Jasig 组织开发的一个开源的身份验证框架,它提供了一种集中式的、基于Web的单点登录(Single Sign-On, SSO)解决方案。"cas-server-3.5.2.1-release.zip" 是 CAS 服务器的...

    spring boot整合CAS Client实现单点登陆验证的示例

    Spring Boot 整合 CAS Client 实现单点登录验证的示例 ...Spring Boot 整合 CAS Client 是一种简单且高效的解决方案,用于实现单点登录验证。通过配置 CAS Client,我们可以轻松地实现单点登录,提高用户体验和安全性。

    modify-jasig-cas:基于jasig-cas自定义自己的cas服务器

    Jasig CAS(Central Authentication Service)是一个开源的身份验证框架,主要用于实现单点登录(Single Sign-On, SSO)功能。它由Java编写,广泛应用于教育、企业和其他组织,以提供统一的用户认证服务。在本文中,...

    jasig-cas-rest-client:Jasig CAS(中央身份验证服务 http)的一个非常基本的 REST 客户端

    Jasig CAS(中央身份验证服务)的一个非常基本的 REST 客户端; #要求 #部署 npm install Download source from remote repositories #使用组件 设置支持 REST 的 Jasig CAS 实例后(有关更多信息,请访问 ),...

    cas 单点登录 耶鲁大学单点登录

    通过本文介绍,我们了解到CAS单点登录系统的实现原理及其实现步骤。从证书的生成、导入到Tomcat服务器的HTTPS配置,每个环节都至关重要。CAS不仅可以提高用户体验,还能够增强系统的安全性。在实际部署过程中,还需...

    CAS RESTful API 开发文档

    server 地址: http://www.jasig.org/cas/download client 地址: http://www.ja-sig.org/downloads/cas-clients/ 当前最新版本 cas-server-3.4.2 , cas-client-3.1.10 2. 安装 server l 解压 cas-server-...

    cas-server-4.0.0-release单点登录源码和war包-原版

    CAS(Central Authentication Service)是一种广泛使用的开放源代码的单点登录(Single Sign-On,简称SSO)系统。它允许用户通过一个认证界面访问多个应用系统,而无需在每个系统上分别进行登录。在这个"cas-server-...

Global site tag (gtag.js) - Google Analytics