Apache Shiro 简介

本篇是对Shiro的简介,如果已经对Shiro有一定的了解,可以跳过本篇,本栏目大部分内容来自于Shiro官网。翻译过程中已经尽量保证用词的准确性和易懂性,如有不准确或者不确切的地方,请联系作者加以修改。本篇内容翻译自Shiro官网 Shiro介绍。

Apache Shiro 是一个功能强大、灵活的开源安全框架,它能很好地处理身份验证、授权、企业会话管理和加密等功能。Apache Shiro的首要目标是易于使用和理解。系统安全性设计一直是让人觉得复杂又头疼的一件事,但是使用安全框架之后,它会变得更加容易和清晰。一个框架应该尽可能掩盖复杂性,并公开一个干净直观的API,并且在保证应用安全的同时简化开发人员的工作。Apache Shiro将一些常见的功能紧密的结合在易于使用的API中,以下是Shiro可以为我们做的事情:

  • 验证用户,核实身份
  • 对用户进行访问控制,例如:
  1. 确定是否为用户分配了特定的安全角色
  2. 确定是否允许用户执行某些操作
  • 在任何环境中使用Session API,即使在非web或EJB环境下。
  • 在身份验证、访问控制或会话的生命周期,对事件做出响应。
  • 聚合一个或多个用户安全数据的数据源,并作为一个单一的复合用户"视图"。
  • 启用单点登录(SSO)功能
  • 为没有关联到登陆的用户启用"Remember Me”服务

Shiro试图为所有应用程序环境实现这些目标-从最简单的命令行应用程序到大型企业级应用程序,而不强制依赖于其他第三方框架、容器或应用程序服务器。 当然,该项目的目标是尽可能地集成到这些环境中,但它可以在任何环境中使用。

Apache Shiro是一个综合性的多功能的安全框架,下图展示了Shiro的一些具体特征:

Shiro把"Shiro开发团队"所称的“应用程序安全的四大基石”——Authentication(身份认证), Authorization(授权), Session Management(会话管理), and Cryptography(加密)作为目标:

Authentication(身份认证):简单的来说就是“登录”。

Authorization(授权):访问控制过程,即确定“谁”有权限访问“什么”。

Session Management(会话管理):管理具体用户的会话,即使在非web或EJB应用程序中也是如此。

Cryptography(加密):使用密码算法保证数据安全,同时仍然易于使用。

Shiro在不同的应用程序环境中,还提供了支持和加强上面功能的其他功能:

Web Support(Web支持):Shiro对Web支持API有助于轻松保护Web应用程序

Caching(缓存):缓存是Apache Shiro的API中的第一层公民,以确保安全操作保持快速和高效。

Concurrency:(并发):Apache Shiro通过其并发特性支持多线程应用程序。

Testing(测试):测试支持用于帮助您编写单元和集成测试,并确保您的代码将如预期的那样安全。

 “Run As”:该功能假设用户有另一个用户的身份(如果允许的话)。

“Remember Me”:在会话中记住用户的身份,这样他们只需要在强制登录时登录。

总结:本篇主要对Shiro进行简单的介绍,讲述Shiro有哪些功能,可以做哪些事情。看完本篇能对Shiro有一个大致的了解。本篇基本上翻译官网上的文档。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值