Shiro 安全框架学习笔记
http://shiro.apache.org/
什么是Apache Shiro?
Apache Shiro是一个功能强大且易于使用的Java安全框架,为开发人员提供了一种直观而全面的身份验证,授权,加密和会话管理解决方案。
实际上,它可以实现管理应用程序安全性的所有方面,同时尽可能地避开。它基于完善的界面驱动设计和OO原则,可以在任何您想象的地方实现自定义行为。但是对于所有事情都有合理的默认值,它就像应用程序安全性一样“放手”。至少这是我们努力的目标。
Apache Shiro可以做什么?
很多 。但我们不想让QuickStart膨胀。如果您想了解它能为您做些什么,请查看我们的功能页面。此外,如果您对我们如何开始以及我们为什么存在感到好奇,请参阅Shiro历史和使命页面。
Apache Shiro功能概述
Apache Shiro旨在成为最全面,但也是最容易使用的Java安全框架。以下是一些更精细的框架:
最容易理解Java Security API的地方。类和接口名称直观且有意义。任何东西都是可插拔的,但一切都有很好的默认值。
支持跨一个或多个可插拔数据源(LDAP,JDBC,ActiveDirectory等)的身份验证(‘登录’)。
基于角色或细粒度权限执行授权(“访问控制”),同时使用可插拔数据源。
一流的缓存支持,增强了应用程序性能。
内置基于POJO的企业会话管理。在Web和非Web环境中或在需要单点登录(SSO)或群集或分布式会话的任何环境中使用。
异构客户端会话访问。您不再被迫仅使用httpSession或有状态会话Bean,这通常会不必要地将应用程序绑定到特定环境。无论部署环境如何,Flash applet,C#应用程序,Java Web Start和Web应用程序等现在都可以共享会话状态。
简单单点登录(SSO)支持搭载上述企业会话管理。如果会话跨多个应用程序联合,则也可以共享用户的身份验证状态。登录到任何应用程序,其他人都识别登录。
使用最简单的可用密码学 API 保护数据,为您提供超出Java默认提供的密码和哈希值的功能和简单性。
一个非常强大但低配置的 Web框架,可以保护任何URL或资源,自动处理登录和注销,执行Remember Me服务等。
极低数量的必需依赖项。独立配置只需要slf4j-api.jar和slf4j的绑定.jars之一。Web配置还需要commons-beanutils-core.jar。可以在需要时添加基于功能的依赖项(Ehcache缓存,基于Quartz的会话验证,Spring依赖注入等)。