`
javafenger
  • 浏览: 247792 次
  • 来自: ...
文章分类
社区版块
存档分类
最新评论
阅读更多

  CAS 的安全性是一个非常重要的 Topic CAS v1 v3 ,都很依赖于 SSL ,它假定了这样一个事实,用户在一个非常不安全的网络环境中使用 SSO Hacker Sniffer 会很容易抓住所有的 Http Traffic ,包括通过 Http 传送的密码甚至 Ticket 票据。

TGC/PGT 安全性

       对于一个 CAS 用户来说,最重要是要保护它的 TGC ,如果 TGC 不慎被 CAS Server 以外的实体获得, Hacker 能够找到该 TGC ,然后冒充 CAS 用户访问所有授权资源。
       SSO 的安全性问题比普通应用的安全性还要严重,因为 SSO 存在一种门槛效应。以前即使 Hacker 能够截获用户在 Web 应用 A 的密码,它也未必能知道用户在 Web 应用 B 的密码,但 SSO 让 Hacker 只需要截获 TGC( 突破了门槛 ) ,即能访问所有与该用户相关的所有应用系统。
       PGT 跟 TGC 的角色是一样的,如果被 Hacker 获得,后果可想而知。
       从基础模式可以看出, TGC 是 CAS Server 通过 SSL 方式发送给终端用户,因此,要截取 TGC 难度非常大,从而确保 CAS 的安全性。
       因此,某些人认为 CAS 可以不使用 SSL 的想法需要更正一下, CAS 的传输安全性仅仅依赖与 SSL 。
       跟 Kerberos 一样 TGT , TGC 也有自己的存活周期。下面是 CAS 的 web.xml 中,通过 grantingTimeout 来设置 CAS TGC 存活周期的参数,参数默认是 120 分钟,在合适的范围内设置最小值,太短,会影响 SSO 体验,太长,会增加安全性风险。

    <context-param>
        <param-name>edu.yale.its.tp.cas.grantingTimeout</param-name>
        <param-value>7200</param-value>
    </context-param>

TGC 面临的风险主要并非传输窃取。比如你登陆了之后,没有 Logout ,离开了电脑,别人就可以打开你的浏览器,直接访问你授权访问的应用 ) ,设置一个 TGC 的有效期,可以减少被别人盗用,或者被 Hacker 入侵你的电脑直接获取你系统目录下的 TGC Cookie 。
Service Ticket/Proxy Ticket 安全性
       首要明白, Service Ticket 是通过 Http 传送的,以为着所网络中的其他人可以 Sniffer 到其他人的 Ticket 。
CAS 协议从几个方面让 Service Ticket 变得更加安全。
l         Service Ticket 只能使用一次。
CAS 协议规定,无论 Service Ticket 验证是否成功, CAS Server 都会将服务端的缓存中清除该 Ticket ,从而可以确保一个 Service Ticket 被使用两次。
l         Service Ticket 在一段时间内失效。
假设用户拿到 Service Ticket 之后,他请求 helloservice 的过程又被中断了, Service Ticket 就被空置了,事实上,此时, Service Ticket 仍然有效。 CAS 规定 Service Ticket 只能存活一定的时间,然后 CAS Server 会让它失效。通过在 web.xml 中配置下面的参数,可以让 Service Ticket 在多少秒内失效。
<context-param>
<param-name>edu.yale.its.tp.cas.serviceTimeout</param-name>
<param-value>300</param-value>
</context-param>
       该参数在业务应用的条件范围内,越小越安全。
l         Service Ticket 是基于随机数生成的。
Service Ticket 必须足够随机,如果 Service Ticket 生成规则被猜出(如果你使用了 ST+Helloservice+ 自增序列的方式, Hacker 就可以构造下一个 Ticket ), Hacker 就等于绕过 CAS 认证,直接访问所有服务。
 


分享到:
评论

相关推荐

    实现SSO的CAS开源框架介绍

    CAS通过为用户提供一个集中的身份验证机制来简化应用程序的集成过程,并提高系统的安全性。 #### CAS 的工作原理与特点 CAS主要由两个部分组成:CAS Server 和 CAS Client。 - **CAS Server**:作为整个系统的...

    新华三CAS服务器虚拟化方案介绍.pdf

    新华三CAS服务器虚拟化方案是基于开源KVM的优化与创新,具有高可靠性、强安全性、强大功能、灵活性和开放性等特点。该方案解决了服务器虚拟化的多种挑战,提供了一个完整的虚拟化解决方案,满足了企业级客户的需求。...

    CAS认证登录简单介绍

    CAS的目标是允许用户在访问多个相互信任的应用系统时只需要进行一次登录,从而提升用户体验并加强安全性。 ### 单点登录(SSO) 单点登录(Single Sign-On,SSO)是一种身份验证模式,它允许用户在一次登录后访问...

    acegi安全策略与CAS整合

    文档的目的是确保用户能够成功地将AceGI安全框架集成到他们的应用程序中,利用CAS服务器进行单点登录(SSO)和身份验证,以提高系统的安全性。 0.2 文档范围: 此文档涵盖了从安装CAS服务器,配置AceGI安全策略,到...

    CAS介绍资源页面

    5. **安全性**:CAS提供了一种安全的认证方式,有效防止会话劫持和中间人攻击。同时,它支持HTTPS协议,增强了数据传输的安全性。 6. **集成与部署**:CAS可以方便地与其他应用集成,如Spring Security、Apache ...

    新华三CAS服务器虚拟化方案介绍.pptx

    本文档介绍了新华三CAS服务器虚拟化方案的详细信息,该方案旨在提供一站式的虚拟化解决方案,满足客户对高可靠性、安全性和灵活性的需求。 CAS产品发展历程 新华三CAS产品经过了多年的发展,从2011年的CAS 1.0到...

    H3C_CAS_LINUX安装cas-tools

    虚拟化技术可以提高服务器的利用率,简化服务器管理,提高服务器的安全性和可靠性。 CAS Tools 简介 CAS Tools 是一个功能强大的虚拟化管理平台,能够帮助管理员更方便地管理和维护虚拟机。CAS Tools 提供了多种...

    cas-4.1.7最新

    CAS 4.1.7是该框架的一个特定版本,发布于2015年,旨在提供稳定性和安全性改进。 CAS的核心功能包括: 1. 单点登录:用户只需一次登录,就能访问所有支持CAS的服务,减少了用户的记忆负担和登录步骤。 2. 服务验证...

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

    这不仅提高了用户体验,减少了重复登录的麻烦,还增强了整个系统的安全性,因为所有认证过程都集中管理在CAS服务器上。文件"cas-4.2.7-自定义登录"可能包含了关于如何自定义CAS登录界面或认证流程的详细指南,这对于...

    cas集成AD域

    在企业环境中,尤其是在已部署了Active Directory(AD)域服务的情况下,将CAS与AD集成可以实现用户通过一次认证就能访问所有系统,提升用户体验并加强安全性。 AD域是微软Windows Server操作系统中的一个组件,它...

    搭建cas服务,cas与sqlserver连接,cas与security连接

    CAS(Central Authentication Service)是Java开发的一个开源身份验证框架,主要用于...在实际操作中,可能还需要考虑异常处理、日志记录、安全性优化等问题。希望这份指南能对你有所帮助,祝你在SSO的道路上顺利前行!

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

    6. **安全性**:CAS客户端提供了一种安全的身份验证机制,因为用户的凭证只在CAS服务器上验证,不会在各个应用之间传输,降低了凭证被盗取的风险。 7. **www.pudn.com.txt**:这个文件可能是包含有关CAS客户端使用...

    cas 自定义登录页面

    CAS(Central Authentication Service)是一种广泛使用的开放源代码单点登录...通过上述步骤,你可以实现一个既满足品牌需求又具备良好安全性的自定义登录页面。记住,每个环节都需仔细测试,确保其功能完整且稳定。

    CAS自定义加密和登录验证

    自定义加密和登录验证是增强CAS安全性的重要手段。 在CAS中自定义加密通常涉及到以下几个方面: 1. **票证加密**:CAS生成的票证(如Service Ticket和Proxy Ticket)需要进行加密,以防止被中间人窃取。默认情况下...

    CAS 各种jar包

    它允许用户通过单一的登录验证来访问多个应用系统,从而简化了用户的登录过程,提高了安全性。在本案例中,我们涉及的文件包括`cas-server-3.3.5.1`、`cas-client-3.0-dist`和`cas-client-2.0.11`,这些都是CAS系统...

    cas-3.4.1_单点登录_CAS_

    6. **安全性**:CAS通过HTTPS等安全协议传输票证,确保了通信的安全性。同时,它还支持票证的过期和重用策略,增强了系统的安全性。 7. **可扩展性**:CAS的架构设计允许开发者轻松添加自定义功能,如自定义认证...

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

    1. **安全性增强**:CAS 5.2.6包含了一些安全修复和改进,确保服务端在处理认证请求时能提供更高的安全性。 2. **新功能与改进**:可能包含了新的API、服务注册、认证策略、通知机制等。例如,支持更多的身份验证...

    H3C云计算《CAS3.0功能介绍和开局指导 》培训视频.rar

    3. **安全性**:集成防火墙、访问控制、虚拟化安全策略,保障虚拟机和数据的安全。 4. **服务目录**:创建服务目录,用户可以按需自助获取预定义的虚拟机和服务。 5. **多租户管理**:支持多租户模式,为不同部门...

    cas官方文档

    《FAQ》(Frequently Asked Questions)文档包含了常见问题及其解答,涵盖了安装、配置、使用CAS过程中可能遇到的问题,比如如何配置CAS服务器、如何集成特定的应用、如何处理安全性问题等。这些解答有助于解决用户...

    cas.rar_cas java_cas服务端代码_单点登录

    7. 安全性考虑:虽然CAS简化了身份验证,但安全问题不容忽视。开发者应关注CAS的安全配置,如SSL/TLS的使用、凭证加密、防止票据篡改等,以确保系统的安全性。 8. 扩展与集成:CAS支持多种认证协议,如LDAP、数据库...

Global site tag (gtag.js) - Google Analytics