`
y806839048
  • 浏览: 1118587 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

cas与shrio整体认识及cas和shrio区别分工

    博客分类:
  • cas
cas 
阅读更多

 

cas客户端服务

 

 

cas服务端提供服务,cas客户端:通过客户端程序集成的cas客户端和cas服务端交互,cas之所以要抽出一个服务端,是为了把

公用的session,cookie都放在服务端,一些验证指令通过cas客户端--》cas服务端--》各客户端的权限管理插件(如:shrio)

 

 

 

shrio:

1,把用户权限信息放在shrio的securitymanager管理器中

2,根据需要增加相应的认证,角色过滤器(role落脚于角色的匹配-角色过滤器,perm落脚于资源的匹配-资源过滤器----都可以控制到按钮级别,不同的过滤器前端需要用对应不同的标签获取相应的信息)

3,认证的发起,

    1调用shrio自有的接口地址,

    2,用java代码编写:subject里面有登陆功能,有登陆后的session(在重写的认证接口设置),有用户名getPriciple();

 

 

 cas和shrio区别分工

 

 

cas只做用户密码认证放行(集成在程序的客户端会调用cas服务进行验证)

shrio既可以做密码认证放行,也可以做权限判断

当二者结合的时候,可以分工密码认证cas来,权限判断shrio来

 

 

 

<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">

<property name="realm" ref="casRealm" />

<property name="subjectFactory" ref="casSubjectFactory" />

<!-- <property name="sessionManager" ref="sessionManager" /> -->

<!-- <property name="cacheManager" ref="shiroEhcacheManager" /> -->

</bean>

 

 

<bean id="casFilter" class="org.apache.shiro.cas.CasFilter">//cas拦截器----》密码认证

<property name="failureUrl"

value="http://localhost:8081/web/resources/failure.html" />

</bean>

 

<bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">

<property name="securityManager" ref="securityManager" />//里面包含cas的本拦截服务设置----》shrio密码认证(集成cas时配置方式不同)

<!-- <property name="loginUrl"

value="http://localhost:8080/cas/login?service=http://localhost:8081/web/cas" /> -->

<property name="loginUrl"

value="http://localhost:8080/cas/login?a=2&amp;service=http://localhost:8081/web/cas" >

</property>

<property name="successUrl"

value="http://localhost:8081/web/siteindex.do" />

<property name="filters">

<map>

<!-- <entry key="authc" value-ref="formAuthenticationFilter" /> -->

<entry key="cas" value-ref="casFilter" />  //////////shrio中集成本服务cas的拦截器

<entry key="logout" value-ref="logoutFilter" />

<entry key="osLogin" value-ref="osLogin" />

<entry key="oiLogin" value-ref="oiLogin" />

<entry key="csLogin" value-ref="csLogin" />

</map>

</property>

<!-- 重要:必须加上/cas = cas来告诉/cas用casFilter来处理 -->

<!-- 重要:logout为登出filter /myaccount/getFirmCenter =csLogin-->

<property name="filterChainDefinitions">---》权限过滤(动态的时候配置不同)

<value>

    /information/news/getNewsInfoById==anon

   /information/news/getInfoNewsData==anon

 

</value>

</property>

</bean>

 

<bean id="casRealm" class="org.apache.shiro.cas.CasRealm">//本服务用的cas拦截器

<property name="defaultRoles" value="ROLE_USER" />

<!-- 重要:这个是用来获取ticket的casServerURL的前缀,所以不能有login -->

<property name="casServerUrlPrefix" value="http://localhost:8080/cas/" />

<!--客户端的回调地址设置,必须和上面的shiro-cas过滤器拦截的地址一致 -->

<property name="casService" value="http://localhost:8081/web/cas" />

</bean>

<bean id="casSubjectFactory" class="org.apache.shiro.cas.CasSubjectFactory" />//把shrio的subject封装称cas的subject 

<bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor" />

 

分享到:
评论

相关推荐

    cas +shiro集成

    CAS(Central Authentication Service)和Apache Shiro都是在Java领域中广泛使用的安全框架,它们各自有着不同的侧重点。CAS主要用于集中式身份验证,而Shiro则更专注于应用内部的安全管理,如授权、会话管理和安全...

    cas+shiro客户端源码

    将CAS的认证结果与Shiro的授权结合,通常在CAS验证成功后,会将用户的认证信息(如用户名、票证)传递给Shiro,Shiro再通过Realm从数据源中获取用户的角色和权限信息。这样,Shiro就可以根据这些信息进行权限控制,...

    cas+shiro+spring实例

    标题 "cas+shiro+spring实例" 涉及到的是一个集成CAS(Central Authentication Service)和Apache Shiro的Spring应用程序实例。这个实例是专为初学者设计的,旨在帮助他们理解和实现基于CAS的单点登录(Single Sign-...

    cas结合 springmvc shiro 单点登录

    3. **Shiro集成**:接下来,我们需要将Shiro与CAS集成,使得Shiro能够理解并处理由CAS服务器发出的认证票据。这通常涉及到创建自定义的 Realm 和 Filter,比如CasRealm 和 CasFilter,它们负责解析CAS服务器返回的...

    cas-shiro-https单点登录实现

    2. 配置SSO客户端:在项目中集成Shiro框架,配置Shiro的CasFilter,指定CAS服务器的地址和相关参数。 3. 配置HTTPS:为服务器申请并配置SSL证书,确保整个SSO过程在安全的HTTPS环境下进行。 4. 测试与调试:验证用户...

    cas-shiro-demo

    - the cas-shiro-demo-app module is a demo web application which uses the CAS Shiro support library with protected area requiring CAS authentication : http://shiro.apache.org/cas.html - the cas-shiro-...

    Shiro和cas部分整合

    这个配置文件将包含关于CAS服务器的URL、服务验证URL等信息,以及Shiro的 Realm 设置,用于定义如何与CAS服务器交互获取和验证用户凭证。 接下来,配置Shiro的过滤器 `shiroFilter`,它是基于Spring的代理过滤器 `...

    springboot+cas5.x+shiro+pac4j实现sso集成

    在本项目中,Pac4j作为Shiro的插件,帮助Shiro与CAS5.x进行通信,处理CAS的登录票证(TGT,Ticket Granting Ticket)和服务票证(ST,Service Ticket)。 实现流程如下: 1. 用户访问SpringBoot应用,由于未登录,...

    单点登录sso-shiro-cas-maven

    # sso-shiro-cas spring下使用shiro+cas配置单点登录,多个系统之间的访问,每次只需要登录一次 ## 系统模块说明 1. cas: 单点登录模块,这里直接拿的是cas的项目改了点样式而已 2. doc: 文档目录,里面有数据库...

    cas+shiro+ehcache+srping集成完整代码

    这篇文章将详细讲解如何将CAS(Central Authentication Service)、Shiro(Apache Shiro)和Ehcache集成到Spring应用程序中,提供一个完整的实现流程。这个集成方案主要用于实现统一的身份验证和授权,提升系统的...

    yale-cas 与 shiro进行整合

    由于CAS已经处理了用户的登录和登出,我们需要确保Shiro与CAS同步会话信息。这可以通过监听CAS的登录和登出事件来实现,当用户登录或登出时,更新Shiro的会话状态。 4. 授权策略 Shiro的授权机制允许我们基于角色和...

    Cas客户端shiro配置

    1.如果客户端项目采用shiro控制权限 则需要将cas-client 认证过滤交给shiro来管理 2.从shiro下载相应版本的shiro-cas-xxxx. Jar或者在maven里直接添加

    shiro整合cas3.5

    在本文中,我们将讨论如何将 Apache Shiro 与 CAS 3.5 版本进行整合,以实现统一的登录认证。 整合 Shiro 和 CAS 的主要目标是利用 CAS 的身份验证服务,避免在每个应用中重复实现登录逻辑。以下是一个简化的整合...

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

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

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

    前后端分离模式下的cas + shiro + pac4j,cas作为认证中心,子应用采用shiro鉴权,通过pac4j与cas交互,返回jwt token,完整项目,基于springboot框架

    springmvc+spring+shiro+cas单点登录实例

    然后clean install tomcat7:run 就能跑起来,注意要修改node1和node2里的shiro.properties配置文件,要配置登录成功成功返回的路径 我的访问的分别是: 服务端: http://localhost:8050/cas-server 客户端:...

    基于springboot,cas5.3,shiro,pac4j,rest接口获取ticket不再跳转cas server登录页

    CAS 5.3版本引入了更多的改进和增强,包括支持RESTful API,使得与CAS交互更加灵活。 Shiro是Apache提供的一款轻量级的安全框架,用于实现身份认证、授权和会话管理。在Spring Boot应用中,Shiro可以轻松地集成并...

    单点登录CAS与权限管理框架Shiro集成

    ### 单点登录CAS与权限管理框架Shiro集成 #### 一、概述 单点登录(Single Sign-On,简称SSO)是一种常见的身份验证技术,它允许用户通过一次登录即可访问多个应用程序和服务。这种机制提高了用户体验,同时也简化...

    cas-shiro单点登录

    本项目"cas-shiro单点登录"是基于Spring框架,利用Apache Shiro安全库和Jasig CAS(Central Authentication Service)服务器实现的SSO解决方案。下面将详细介绍这个项目的实施过程和涉及的关键知识点。 首先,...

    shiro整合cas的实例

    Apache Shiro 和 CAS(Central Authentication Service)是两个在IT安全领域广泛应用的开源框架。Shiro 是一个强大且易用的 Java 安全框架,提供了认证、授权、加密和会话管理功能,可以非常轻松地开发出足够安全的...

Global site tag (gtag.js) - Google Analytics