Shiro简介

Shiro功能

Shiro结构图
  • Authentication
    身份认证/登录,验证用户是否拥有相应的身份;
  • Authorization
    授权,即权限认证,验证某个已认证的用户是否拥有某个权限;
  • Session Management
    会话管理;
  • Cryptography
    加密,保护数据的安全性;
  • Web Support
    Web支持,可以非常容易地集成到Web环境;
  • Caching:
    缓存;
  • Testing:
    提供测试支持;
  • Run As:
    允许一个用户假装成另一个用户(如果他们允许)的身份进行访问;
  • Remember Me:记住我。

Shiro架构

Shiro架构俯视图
  • Subject
    主体,代表了当前“用户”,这个用户不一定是具体的人,与当前应用交互的任何东西都是Subject,如网络爬虫,机器人等,是一个抽象概念;所有Subject都绑定到SecurityManager,与Subject的所有交互都会委托给SecurityManager;
  • SecurityManager
    安全管理器,所有与安全有关的操作都会与SecurityManager交互,且它管理着所有Subject,可以看出他是Shiro的核心,负责与其他组件进行交互。
  • Realm
    域,Shiro从Realm获取安全数据(如用户、角色、权限),就是说SecurityManager要验证用户身份,那么它需要从Realm得到用户相应的角色/权限来判断用户身份是否合法;也需要从Realm得到用户相应的角色/权限来判断用户是否能进行操作;
Shiro架构详图

你可能感兴趣的:(Shiro简介)