`

shiro过滤器过滤属性含义

 
阅读更多
http://my.oschina.net/cng1985/blog/663672
anon   org.apache.shiro.web.filter.authc.AnonymousFilter
 
authc  org.apache.shiro.web.filter.authc.FormAuthenticationFilter
 
authcBasic org.apache.shiro.web.filter.authc.BasicHttpAuthenticationFilter
 
perms  org.apache.shiro.web.filter.authz.PermissionsAuthorizationFilter
 
port   org.apache.shiro.web.filter.authz.PortFilter
 
rest   org.apache.shiro.web.filter.authz.HttpMethodPermissionFilter
 
roles  org.apache.shiro.web.filter.authz.RolesAuthorizationFilter
 
ssl    org.apache.shiro.web.filter.authz.SslFilter
 
user   org.apache.shiro.web.filter.authc.UserFilter
 
logout org.apache.shiro.web.filter.authc.LogoutFilter



anon:例子/admins/**=anon 没有参数,表示可以匿名使用。

authc:例如/admins/user/**=authc表示需要认证(登录)才能使用,没有参数

roles:例子/admins/user/**=roles[admin],参数可以写多个,多个时必须加上引号,并且参数之间用逗号分割,当有多个参数时,例如admins/user/**=roles["admin,guest"],每个参数通过才算通过,相当于hasAllRoles()方法。

perms:例子/admins/user/**=perms[user:add:*],参数可以写多个,多个时必须加上引号,并且参数之间用逗号分割,例如/admins/user/**=perms["user:add:*,user:modify:*"],当有多个参数时必须每个参数都通过才通过,想当于isPermitedAll()方法。

rest:例子/admins/user/**=rest[user],根据请求的方法,相当于/admins/user/**=perms[user:method] ,其中method为post,get,delete等。

port:例子/admins/user/**=port[8081],当请求的url的端口不是8081是跳转到schemal://serverName:8081?queryString,其中schmal是协议http或https等,serverName是你访问的host,8081是url配置里port的端口,queryString

是你访问的url里的?后面的参数。

authcBasic:例如/admins/user/**=authcBasic没有参数表示httpBasic认证

ssl:例子/admins/user/**=ssl没有参数,表示安全的url请求,协议为https

user:例如/admins/user/**=user没有参数表示必须存在用户,当登入操作时不做检查

注:anon,authcBasic,auchc,user是认证过滤器,
perms , roles , ssl , rest , port 是授权过滤器
分享到:
评论

相关推荐

    shiro 内存模型分析

    `appliedPaths` 是每个 Filter 对象的一个属性,它是一个 Map 集合,存储了 URL 在被该过滤器处理时所使用的参数(String[])。这些参数通常用于定制过滤器的行为,例如在 `perms` 过滤器中,参数可以是用户需要具备...

    shiro-web例子源代码

    每个过滤器都有对应的配置属性,可以根据需求进行调整。 7. **控制器和服务层** 通常,Shiro的认证和授权逻辑会在控制器或服务层中调用,比如使用`Subject`对象进行登录尝试,或者通过`SecurityUtils`获取当前登录...

    shiro_spring_velocity整合

    接着,在 `Web.xml` 中配置 Shiro 过滤器,使用 `DelegatingFilterProxy` 来代理 Shiro 的 Filter,确保 Shiro 能够访问 Spring 容器中的 Bean。这样,Shiro 就可以通过 Spring 的依赖注入来管理其组件。 3. **...

    shiro简单的demo.zip

    6. **Shiro的过滤器**:如`authc`(认证过滤器)、`perms`(权限过滤器)等,以及如何自定义过滤器链。 7. **Shiro的会话管理**:如何配置Redis存储Session,实现分布式环境下的会话共享。 8. **SpringBoot的配置**...

    web项目集成shirodemo

    通过这个"web项目集成shirodemo",开发者可以学习到如何配置Shiro,如何编写 Realm 来连接数据库验证用户,如何设置过滤器链来保护URL,以及如何进行权限控制等核心技能。这个案例对于理解和实践Shiro在实际项目中的...

    spring_boot_shiro

    在ShiroConfig类中,需要配置Shiro的过滤器链,指定哪些URL需要进行哪些过滤操作。例如: ```java @Bean public FilterRegistrationBean shiroFilter registrationBean(SecurityManager securityManager, ...

    shiroFilter权限验证

    -- authc:该过滤器下的页面必须验证后才能访问,它是Shiro内置的一个拦截器org.apache.shiro.web.filter.authc.FormAuthenticationFilter --> <property name="filterChainDefinitions"> /statics/**=anon ...

    shiro学习源码与资料

    2. **Filter配置**:Shiro通过Filter链进行Web安全控制,你可以看到如何配置和使用如`AuthcFilter`(认证过滤器)、`RolesAuthorizationFilter`(角色授权过滤器)等。 3. ** Realm实现**:Realm是Shiro与应用中...

    shiroDemo例子

    在"shiroDemo"中,可能包含了与Servlet容器(如Tomcat)的集成,展示了如何配置Shiro过滤器来拦截请求,实现权限控制。 6. **配置**:Shiro的配置文件(通常是`shiro.ini`或`shiro.xml`)是定义安全策略的关键部分...

    shiro整合cas的实例

    - 在 Shiro 中,我们需要创建一个 CAS 客户端,这通常涉及到在 Web 应用的 `web.xml` 中配置 CAS 过滤器。设置 `filter-class` 为 `org.jasig.cas.client.authentication.AuthenticationFilter`,并配置相应的参数...

    SpringBoot整合Shiro权限框架

    4. **配置Shiro过滤器**:在SpringBoot的主配置类中,创建一个`ShiroFilterFactoryBean`,并设置相应的过滤器链,如anon(匿名访问)、authc(认证过滤器)、roles(角色过滤器)和perms(权限过滤器)等。...

    shiro所需要的4个jar包

    这个jar提供Web相关的过滤器(如`RememberMeFilter`, `LoginFilter`等)和Servlet API的集成,使得在Web环境中可以方便地使用Shiro进行安全控制。 3. **Apache Shiro Realm**: Shiro通过Realm与应用程序的数据源...

    楠哥Spring Boot整合Shiro.zip

    3. **创建Shiro配置类**:在Spring Boot项目中,我们需要创建一个配置类来初始化Shiro的环境,包括安全过滤器链的配置、Realm的定义以及Session管理等。例如: ```java @Configuration public class ShiroConfig { ...

    用过滤器验证登陆框架,简单实例

    标题中的“用过滤器验证登陆框架,简单实例”指的是在Web开发中,使用过滤器(Filter)技术来实现用户登录验证的一种常见方法。过滤器是Servlet技术的一部分,它允许我们在请求到达目标资源(如Servlet、JSP页面)...

    springboot 2.3 shiro 也是最新的

    2. **配置Shiro**:创建一个ShiroConfig类,配置安全 Realm、过滤器链等。 3. **定义 Realm**:实现自定义 Realm,处理认证和授权逻辑,连接到数据库或其他数据源。 4. **设置过滤器**:配置ShiroFilterFactoryBean...

    shiro案例 demo

    5. **过滤器链**:Shiro通过Filter Chain定义安全控制逻辑。每个URL或请求路径都可以关联一个或多个过滤器,实现登录检查、权限验证等功能。`/login`路径通常配置为允许所有访问,而其他受保护的资源路径如`/admin/*...

    shiro入门学习.ppt

    - **Web Support**:针对Web应用提供了额外的便利,如过滤器支持、会话管理等。 - **Caching**:缓存机制提高应用性能,减少数据库查询。 - **Concurrency**:支持多线程环境,确保在并发情况下安全操作的正确性。 -...

    springboot整合shiro

    (4)**配置ShiroFilter**:创建一个`ShiroConfig`类,配置Shiro的过滤器链。例如,设置登录URL、登出URL、匿名访问的URL等。 ```java @Bean public DefaultWebSecurityManager securityManager(YourRealm ...

    java shiro 例子

    这些过滤器都是Shiro提供的现成解决方案,只需在Web应用的`web.xml`中进行适当配置。 最后,Shiro的测试支持也很强大。通过使用Shiro的Test类,可以在单元测试中模拟用户身份,这对于测试权限控制逻辑非常有用。 ...

Global site tag (gtag.js) - Google Analytics