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

shiro中是否认证,和是否授权的不同现象以及shiro的自定义代码构成部分

阅读更多

 

shiro的自定义代码构成部分

 

自定义的认证过滤器

自定义的权限过滤器

加载所有的资源-权限信息

加载登录用户自己的资源,角色信息

更新重行加载权限

共享session管理器--session监听

在shiro的session用redis实现之后,可以直接拿到这个session,然后在里面设置需要传递的变量,在服务器切换的时候都可以共享。

不必另外包装一个httpsession然后这个包装的里面用redis存(shiro实现共享session即可,不必如此)。

 

 

// 当验证都通过后,把用户信息放在session里 ,这里是已经实现了session共享的情况下(自定义shiro sessionmanager)

        Session session = SecurityUtils.getSubject().getSession();

        session.setAttribute("userSession", user);

        session.setAttribute("userSessionId", user.getId());

 

剩余的就是在配置文件中配置

 

 

shiro中是否认证,和是否授权的不同现象

 

没有认证---退出

 

 

 

 

 

 

没有权限返回空,截断请求(可以对终端时候的页面信息做一些配置控制显示)-----debug在这个方法就可看到这个代码在框架源码中的调用链

 

PathMatchingFilter---- return this.isFilterChainContinued(request, response, path, config);----- return this.onPreHandle(request, response, pathConfig);

 

 

  public boolean onPreHandle(ServletRequest request, ServletResponse response, Object mappedValue) throws Exception {

        return this.isAccessAllowed(request, response, mappedValue) || this.onAccessDenied(request, response, mappedValue);

    }

 

 

url过滤器会根据有没有权限决定是否继续请求----可以对终端时候的页面信息做一些配置控制显示

public class RoleAuthorizationFilter extends AuthorizationFilter{

 

 public boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue)

          throws Excepti

            {

    }

 

}

 

 

 



 

  • 大小: 83.6 KB
分享到:
评论

相关推荐

    Shiro登录授权认证功能

    在这个项目中,我们主要关注的是“Shiro登录授权认证功能”。 **身份验证(Authentication)** 身份验证是确认用户身份的过程,通常涉及用户名和密码的验证。在Shiro中,可以通过实现自定义的`Realm`类来对接自己的...

    shiro认证授权

    本文将深入探讨 Shiro 的核心概念,包括认证和授权,并结合提供的 `shiro-demo` 代码示例,帮助你更好地理解和应用 Shiro。 ### 1. Shiro 认证 认证,即验证用户身份的过程。在 Shiro 中,这一过程由 `Subject` ...

    shiro认证及授权demo

    7. **异常处理**:Shiro的认证和授权失败都会抛出异常,例如`UnknownAccountException`表示找不到用户,`IncorrectCredentialsException`表示认证信息不匹配。你需要捕获这些异常并进行适当的处理,如返回错误信息。...

    Shiro安全登录认证、权限授权封装模块代码

    在这个项目中,你得到了一个基于 Shiro 的安全登录认证和权限授权的封装模块代码。这个模块可能已经被集成到 SpringBoot 和 MyBatis 框架中,使得在 SpringBoot 应用中轻松实现用户的身份验证和权限控制。 1. **...

    shiro 权限认证以及授权demo

    在这个"Shiro 权限认证以及授权demo"中,我们将深入理解Shiro的核心概念,并通过实际操作来熟悉其使用。 **1. 认证(Authentication)** Shiro的认证过程涉及用户提交凭证(如用户名/密码)到系统,Shiro验证这些...

    shiro的全流程demo,世界shiro在spring中认证、授权流程,自定义授权类型,分布式session、授权缓存的实现

    本项目是一个基于 Spring Boot 的 Shiro 全流程示例,涵盖了从用户登录认证到权限控制的完整流程,并实现了自定义授权类型、分布式 session 和授权缓存。 首先,我们来看 Shiro 的认证过程。在 Spring Boot 应用中...

    shiro认证和授权案例

    2. **自定义 Realm 类**:继承自Shiro的AuthorizingRealm,重写doGetAuthenticationInfo()和doGetAuthorizationInfo()方法,从数据源中获取并处理认证和授权信息。 3. **登录控制器**:接收用户登录请求,创建...

    spring boot+shiro 权限认证管理案例

    1. EhCache:EhCache 是一个广泛使用的 Java 缓存库,可以集成到 Shiro 中,存储用户的认证和授权信息。 2. Redis:Redis 是一种高性能的键值数据库,可以用作 Shiro 的缓存后端,提供分布式环境下的缓存解决方案。 ...

    shiro权限认证和授权

    在本文中,我们将深入探讨Shiro的核心概念,包括权限认证和授权,以及如何在实际项目中有效应用。 ### 一、Shiro认证 **1. 用户身份验证(Authentication)** 用户身份验证是验证用户身份的过程,确保用户是他们...

    shiro框架的测试代码

    2. **Shiro配置**:在`shiro.ini`或`shiro.xml`文件中,会配置Shiro的安全设置,如 Realm(认证和授权数据源),以及密码策略、缓存等。 3. **Controller和Service**:代码可能包含`Controller`类,它们处理HTTP...

    Shiro 身份验证、授权、密码和会话管理

    Shiro 为单元测试和集成测试提供了便捷的 API,可以在测试环境中模拟用户认证和授权,简化测试流程。 总的来说,Apache Shiro 是一个功能丰富的安全框架,它提供了一套完整的工具集,可以帮助开发者快速、有效地...

    SpringBoot 、Shiro、 自定义注解权限控制源码下载

    3. **Shiro的集成**:研究如何在SpringBoot应用中配置Shiro,包括安全配置、 Realm(认证和授权信息提供者)的实现以及自定义注解的编写和使用。 4. **Shiro的权限控制**:掌握如何使用Shiro的注解进行权限判断,如@...

    用于测试shiro中自定义Realm的测试代码

    在这个名为“用于测试shiro中自定义Realm的测试代码”的项目中,我们主要关注的是如何自定义Realm来适应特定的认证和授权需求。 Realm在Shiro中扮演着核心角色,它是Shiro与应用程序特定的安全存储(如数据库、...

    shirodemo(spring3+shiro)(认证授权)

    配置主要包括 Realm(认证和授权的数据源)、Filter Chain(定义URL过滤规则)等。在“shirodemo”项目中,你可以查看相关配置文件了解具体设置。 **6. 安全控制** Shiro 提供了多种过滤器(Filter)实现不同的安全...

    springboot整合shiro实现认证和授权项目源代码

    本项目结合Spring Boot与Shiro,旨在提供一个实现用户认证和授权的示例。 1. **Spring Boot**: - Spring Boot基于Spring框架,通过默认配置、starter依赖和自动配置简化了Spring应用的构建。 - 应用启动器...

    从实例入手学习Shiro自定义Realm实现查询数据进行验证示例代码.zip

    - 自定义 Realm 类:这个类会实现上述的认证和授权逻辑,可能包含数据库连接的代码和 SQL 查询。 - 用户实体类:可能包括 `User` 类,用于表示从数据库中获取的用户信息。 - 角色和权限实体类:可能有 `Role` 和 `...

    Shiro中进行角色与权限认证流程示例代码.zip

    在 Shiro 中,认证是指验证用户身份的过程,而授权则是指判断用户是否有执行某个操作的权限。Shiro 提供了丰富的 API 和配置选项,使得开发者可以灵活地实现这些功能。 首先,我们需要创建用户、角色和权限的数据...

    shiro的实例代码

    Apache Shiro是一个强大且易用的Java安全框架,它提供了身份认证、授权、加密和会话管理功能,简化了在Java应用中处理安全性的任务。SSM(Spring、SpringMVC、MyBatis)框架是Java开发中常用的一个集成框架,用于...

    shiro开发文档以及案例代码

    "Shiro教程.pdf"可能会更侧重于实战指导,包括如何配置Shiro、创建 Realm 实现自定义数据源的认证、如何设置权限规则、以及如何在Web应用中整合Shiro等。 "shiro-example-master.zip"中的案例代码可能包含以下几个...

    shiro认证授权的过程

    Shiro的认证和授权流程主要集中在`DefaultSubjectExecutor`、`AuthenticationManager`、`AuthorizingRealm`等类中。这些类通过回调接口和事件驱动的方式协调工作。 **4. 工具使用** Shiro 提供了一些工具类和配置...

Global site tag (gtag.js) - Google Analytics