shiro 入门介绍(shiro第一篇)

SHIRO

Apache Shiro入门

Apache shiro 是专注于易用性,你可以使用他安全稳定的授权,加密,和session管理。用shiro易懂的api,你可以快速并且很容易的保护你的应用。

 

1. Shiro Java安全框架的介绍

Apache shiro是一个干净处理认证,授权,企业回话管理和加密的 强大并灵活 开源的安全框架。

Apche shiro 的初衷是一用和易懂。安全有时候是可以非常复杂的,甚至是痛苦的,但是没有必要。一个框架应该屏蔽复杂的部分并且暴露干净和直观的api去降低开发者保护他们应用的成本 。

以下是事情是你可以用shiro做的:

1验证一个用户以区分它的身份

2为一个用户执行访问控制,比如

1) 确定一个用户是否被分配了某个安全角色

2) 确定一个用户是否被允许做一些事情

3 Session api可以在任何应用中 ,甚至是没有web容器或者Ejb 容器 的环境中。

4 session生命周期内响应每一个认证,访问控制

5 整合一个或多个用户安全性数据到一个综合的用户‘视图中’

6 打开单点登陆功能

7 为用户打开‘记住我’服务

...

还有更多供选择的易用的api

Shiro 试图实现所有应用 -从最简单的命令行应用到企业级应用,不使用第三方框架,容器,或者应用容器(containers)。当然想整合这些应用环境都是可能的,但是shiro可以是在任何应用中开箱即用。

2. Apache Shiro

Apache shrio是一个拥有众多特性并且容易理解的安全框架。

以下的图标表明shiro的重点放在什么地方,并且本教程也会按照这个图排列

 

图中绿色部分是shiro首要关注的部分 Authentication(认证)Authorization(授权) session management(回话管理)cryptography(加密)

深蓝色部分是支持的模块  依次是Web项目 ,缓存,并发,测试,运行为,记住我。

Shiro的目标是他们开发团队叫的’应用安全的的四个基石’ -Authentication(认证)Authorization(授权) session management(回话管理)cryptography(加密)

Authentication:有时称之为‘登陆’,这是验证用户‘谁’的动作。

Authorization:  访问控制等, 决定谁能做什么。

Session management:管理用户具体的会话,甚至是在没有web容器或者EJB应用中都可以使用。

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

 

Shiro在不同的环境中还有其他特性支持并且加强这些关注:

Web支持:shiro web 支持api ,帮助开发者很容易的保护web应用。

Cachging(缓存):缓存是shiro api 确保安全的前提下保证快速,高效的‘一线战士’。

Concurrency(并发)Apache shiro的并发性支持多线程的应用。

Testing(测试):测试支持写单元测试,整合测试来保证你的程序按期望的方式被保护

Run As: 允许用户假设其他用户身份(如果允许)的功能,有时在管理方案中很有用。

Remember Me: 通过会话记住用户这样以来用户只强制登陆时登陆

 

 

 

猜你喜欢

转载自blog.csdn.net/weixin_38570967/article/details/80206072