Apache Shiro简介
2017-08-02 00:13
288 查看
来源:Application Security with Apache Shiro
你是为使你的应用更安全而感到苦恼?这篇文章介绍了Apache shiro。Apache shiro是一个java安全框架,提供了简单抢到的方法达到安全目的。这篇文章解释了Apache Shiro的项目目的、设计思想,并且简单介绍了怎样使用Apache Shiro;
一.什么是Apache Shiro
Apache Shiro是一个强大但是简单易用的java安全框架,它提供了验证登录(authentication)、授权(authorization)、加密(cryptography)、和session管理等功能,并且可以用于任何类型的应用——命令行应用、移动应用、大型网站或者是企业应用。
Shiro提供API用于实现以下4个功能:
1.Authentication ,登录(login);
2.Authorization ,访问控制(access control),授权;
3.加密;
4.session 管理;
Shiro也提供了诸如多线程支持、单元测试和web应用安全等功能,但这些功能都是为支持以上四个功能而存在。
二.Apache Shiro的诞生(原因)
...
三.为什么使用Apache Shiro
虽然至2003年以来框架领域变化迅速,但是今天仍然有一些强有力的利用使用Shiro,如下:
1.易用:
2.全面:
3.灵活:Shiro可以再任何应用环境中工作,没有依赖;
4.对web应用有极好的支持:允许你基于应用URLs和web协议(e.g.REST)创造灵活的安全策略,也提供了一些jsp libraries 用于控制页面输出;
5.易扩展:Shiro干净的API和优秀的设计模式使其容易被其他框架和应用整合。在实际应用中可以看到Shiro和Spring、Grais、APAC可 Camel的整合;
6.延续性:是Apache软件基金会的一部分。
四.谁在使用Shiro
...
五.核心概念:Subject,SecurityManager和Realms(realm.n 领域)
Subject,SecurityManager和Realms是Shiro架构的三个核心概念。
1.Subject(面向对象,主题,科目;v隶属于)
当你思考怎样是你的应用更加安全时,可能思考最多的问题是“现在的用户是什么角色”、“他有什么权限”。当我们写代码和设计我们的接口时,这些事情对于我们来说是一样的:应用的设计常基于“user story”,而且你的安全策略是基于每一个用户的(per-user basis)。所以对于我们来说,加密我们的应用最自然的方式是基于我们现在的“user”,即用户。Shiro API 在他的 Subject概念中,从根本上代表了这种思路。
“Subject”是一个安全属于,解释为“当前执行用户”。他可以是一个party process或者daemon account等等。他仅是指代现在和应用交互的事物。对于大多数“意图”和“目的”,你都可以认为是Shiro的“用户”。你可以在任何地方轻易地获取到Shiro Subject,如下代码所示:
import org.apache.shiro.subject.Subject;
import org.apache.shiro.SecurityUtils.
...
Subject currentUser=SecurityUtils;一旦你获取了Subject,你边立即访问了90%的权限——你想Shiro下的当前用户做的事情,诸如登录,登出,获取他们的session,权限检查等等,这些我们稍后详述。关于subject最关键的是,他的API是非常直观的(intuitive),他的思想与开发者在思考为每个用户做安全控制是的思考方式一致。而且在代码中任何地方都能轻易获取到Subject,允许在任何地方做加密操作。
1.SecurityManager
我们上面讲到的“Subject”的“黑料”是SecurityManager:Subject代表着当前用户的安全操作,但是SecurityManager管理者所有用户的的安全操作。SecurityManager是Shiro框架的核心,而且
你是为使你的应用更安全而感到苦恼?这篇文章介绍了Apache shiro。Apache shiro是一个java安全框架,提供了简单抢到的方法达到安全目的。这篇文章解释了Apache Shiro的项目目的、设计思想,并且简单介绍了怎样使用Apache Shiro;
一.什么是Apache Shiro
Apache Shiro是一个强大但是简单易用的java安全框架,它提供了验证登录(authentication)、授权(authorization)、加密(cryptography)、和session管理等功能,并且可以用于任何类型的应用——命令行应用、移动应用、大型网站或者是企业应用。
Shiro提供API用于实现以下4个功能:
1.Authentication ,登录(login);
2.Authorization ,访问控制(access control),授权;
3.加密;
4.session 管理;
Shiro也提供了诸如多线程支持、单元测试和web应用安全等功能,但这些功能都是为支持以上四个功能而存在。
二.Apache Shiro的诞生(原因)
...
三.为什么使用Apache Shiro
虽然至2003年以来框架领域变化迅速,但是今天仍然有一些强有力的利用使用Shiro,如下:
1.易用:
2.全面:
3.灵活:Shiro可以再任何应用环境中工作,没有依赖;
4.对web应用有极好的支持:允许你基于应用URLs和web协议(e.g.REST)创造灵活的安全策略,也提供了一些jsp libraries 用于控制页面输出;
5.易扩展:Shiro干净的API和优秀的设计模式使其容易被其他框架和应用整合。在实际应用中可以看到Shiro和Spring、Grais、APAC可 Camel的整合;
6.延续性:是Apache软件基金会的一部分。
四.谁在使用Shiro
...
五.核心概念:Subject,SecurityManager和Realms(realm.n 领域)
Subject,SecurityManager和Realms是Shiro架构的三个核心概念。
1.Subject(面向对象,主题,科目;v隶属于)
当你思考怎样是你的应用更加安全时,可能思考最多的问题是“现在的用户是什么角色”、“他有什么权限”。当我们写代码和设计我们的接口时,这些事情对于我们来说是一样的:应用的设计常基于“user story”,而且你的安全策略是基于每一个用户的(per-user basis)。所以对于我们来说,加密我们的应用最自然的方式是基于我们现在的“user”,即用户。Shiro API 在他的 Subject概念中,从根本上代表了这种思路。
“Subject”是一个安全属于,解释为“当前执行用户”。他可以是一个party process或者daemon account等等。他仅是指代现在和应用交互的事物。对于大多数“意图”和“目的”,你都可以认为是Shiro的“用户”。你可以在任何地方轻易地获取到Shiro Subject,如下代码所示:
import org.apache.shiro.subject.Subject;
import org.apache.shiro.SecurityUtils.
...
Subject currentUser=SecurityUtils;一旦你获取了Subject,你边立即访问了90%的权限——你想Shiro下的当前用户做的事情,诸如登录,登出,获取他们的session,权限检查等等,这些我们稍后详述。关于subject最关键的是,他的API是非常直观的(intuitive),他的思想与开发者在思考为每个用户做安全控制是的思考方式一致。而且在代码中任何地方都能轻易获取到Subject,允许在任何地方做加密操作。
1.SecurityManager
我们上面讲到的“Subject”的“黑料”是SecurityManager:Subject代表着当前用户的安全操作,但是SecurityManager管理者所有用户的的安全操作。SecurityManager是Shiro框架的核心,而且
相关文章推荐
- 【apache shiro第一篇】 shiro简介
- Apache Shiro 简介
- Apache Shiro 框架简介
- Apache Shiro 简介
- Apache Shiro简介
- Apache Shiro框架简介
- Apache Shiro 简介
- Apache Shiro 简介
- Apache Shiro框架简介
- Apache Shiro 框架简介和下载导入
- Apache Shiro 简介
- Apache Shiro 简介
- Apache Shiro权限控制框架简介
- Apache Shiro学习---简介
- Apache Shiro简介
- Apache Shiro———简介及分析
- Apache Shiro 简介
- Apache Shiro 简介
- Apache Shiro 简介
- Shiro学习总结(1)——Apache Shiro简介