JAVA面试题库_jpa面试题

JAVA面试题库_jpa面试题Shiro可以做哪些工作?Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等shiro有哪些组件?Authentication:身份认证/登录,验证用户是不是拥有相应的身份;Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限;SessionManager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

Shiro可以做哪些工作?

Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等

shiro有哪些组件?

Authentication:身份认证/登录,验证用户是不是拥有相应的身份;

Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限;

Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中;会话可以是普通JavaSE环境的,也可以是如Web环境的;

Cryptography:加密,保护数据的安全性,如密码加密存储到数据库,而不是明文存储;

Web Support:Web支持,可以非常容易的集成到Web环境;

Caching:缓存,比如用户登录后,其用户信息、拥有的角色/权限不必每次去查,这样可以提高效率;

Concurrency:shiro支持多线程应用的并发验证,即如在一个线程中开启另一个线程,能把权限自动传播过去;

Testing:提供测试支持;

Run As:允许一个用户假装为另一个用户(如果他们允许)的身份进行访问;

Remember Me:记住我,这个是非常常见的功能,即一次登录后,下次再来的话不用登录了。

记住一点,Shiro不会去维护用户、维护权限;这些需要我们自己去设计/提供;然后通过相应的接口注入给Shiro即可。

Apache Shiro 的三大核心组件:

1、Subject :当前用户的操作

2、SecurityManager:用于管理所有的Subject

3、Realms:用于进行权限信息的验证

Authentication 和 Authorization

在shiro的用户权限认证过程中其通过两个方法来实现:

1、Authentication:是验证用户身份的过程。

2、Authorization:是授权访问控制,用于对用户进行的操作进行人证授权,证明该用户是否允许进行当前操作,如访问某个链接,某个资源文件等。

其他组件:

除了以上几个组件外,Shiro还有几个其他组件:

1、SessionManager :Shiro为任何应用提供了一个会话编程范式。

2、CacheManager :对Shiro的其他组件提供缓存支持。

Shiro工作流程

也就是说对于我们而言,最简单的一个Shiro应用:

1、应用代码通过Subject来进行认证和授权,而Subject又委托给SecurityManager;

2、我们需要给Shiro的SecurityManager注入Realm,从而让SecurityManager能得到合法的用户及其权限进行判断。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182114.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月14日 下午12:00
下一篇 2022年10月14日 下午12:16


相关推荐

  • datagrip激活码 2021【在线注册码/序列号/破解码】

    datagrip激活码 2021【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    202
  • 冒泡排序python编写_十大排序算法(1)之冒泡排序python实现

    冒泡排序python编写_十大排序算法(1)之冒泡排序python实现冒泡排序 BubbleSort 一 什么是冒泡排序冒泡排序是一种简单的排序算法 其基本思想是 两两比较相邻元素的大小 若两元素反序 则交换两元素位置 直至没有反序为止 假设从小到大排序 两两比较之后 较大的慢慢往后排 较小的数慢慢往前排 最终完成从小到大的排序 这个过程类似于水中冒泡 所以叫冒泡排序 二 算法的基本描述假设有 n n gt 1 个元素需要按从小到大顺序排列 冒泡排序算法如下 第一次

    2026年3月17日
    2
  • MVC三层架构(详解)「建议收藏」

    MVC三层架构(详解)「建议收藏」1:初始MVC(1):三层架构三层架构是指:视图层View、服务层Service,与持久层Dao。它们分别完成不同的功能。View层:用于接收用户提交请求的代码在这里编写。Service层:系统的业务逻辑主要在这里完成。Dao层:直接操作数据库的代码在这里编写。为了更好的降低各层间的耦合度,在三层架构程序设计中,采用面向抽象编程。即上层对下层的调用,是通过接口实现的。而下层对上层的真正服务提供者,是下层接口的实现类。服务标准(接口)是相同的,服务提供者(实现类)可以更换。这就

    2022年6月25日
    28
  • 集群/分布式环境下5种session处理策略

    集群/分布式环境下5种session处理策略

    2021年10月5日
    42
  • tensorflow矩阵运算_二维矩阵求逆

    tensorflow矩阵运算_二维矩阵求逆线性回归算法能表示为矩阵计算,Ax=b。这里要解决的是用矩阵x来求解系数。1.导入必要的编程库,初始化计算图,并生成数据。>>>importmatplotlib.pyplotasplt>>>importnumpyasnp>>>importtensorflowastf>>>sess=tf.Session…

    2022年8月21日
    15
  • 分布式事务-TCC(Hmily)[通俗易懂]

    分布式事务-TCC(Hmily)[通俗易懂]TCC是什么:TCC是Try、Confirm、Cancel三个词语的缩写,TCC要求每个分支事务实现三个操作:预处理Try、确认Confirm、撤销Cancel。Try操作做业务检查及资源预留,Confirm做业务确认操作,Cancel实现一个与Try相反的操作即回滚操作。TM首先发起所有的分支事务的try操作,任何一个分支事务的try操作执行失败,TM将会发起所有分支事务的Cancel操作,若try操作全部成功,TM将会发起所有分支事务的Confirm操作,其中Confirm/Cancel操作若

    2022年5月21日
    62

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号