Apache Shiro 介绍

标签: apache shiro | 发表时间:2012-04-14 11:35 | 作者:YYZhQ
出处:http://blog.csdn.net

什么是Apache Shiro?

Apache shiro 是一个强大而灵活的开源安全框架,可清晰地处理身份认证、授权、会话(session)和加密。

Apache Shiro最主要的初衷是为了易用和易理解,处理安全问题可能非常复杂甚至非常痛苦,但并非一定要如此。一个框架应该尽可能地将复杂的问题隐藏起来,提供清晰直观的API使开发者可以很轻松地开发自己的程序安全代码。

利用Apache Shiro你可以做这些事情:

         验证用户身份;

         对用户执行访问控制,如:

                 确定用户是否为指定的角色,

                 确定用记是否有权限做某件事情;

         在任何环境下使用会话(session)API,甚至在没有web或者EJB容器的环境下;

         影响在身份认证、访问控制或整个会话周期中的事件;

         综合一种或多种用户安全数据的数据源并将这些数据源表现成一个单独的综合的用户'视图(view)';

        允许单点登录(SSO)功能设计;

        (译者注:SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。)

        允许用户使用'记住我(Remember Me)'服务而无须登录。

        ……

      还有更多--所有都整合在了综合合的易用的API中。 

Shiro尝试在所有应用环境中实现这些目标--从简单的命令行程序到大型企业级项目,无须依赖第三方的框架、容器或服务,当然,项目的目标仍然是在这些环境中尽可能地整合,但它可以脱离这些环境使用。

 

Apache Shiro 特征

Apache Shiro 是一个拥有很多特点的用途广泛的程序安全框架,下面的图表展示了Shiro的主要功能特点,本文(reference manual )也是按类似的方式组织的。

 

Shiro将目标集中于Shiro开发团队所称的“四大安全基石”-认证(Authentication)、授权(Authorization)、会话管理(Session Management)和加密(Cryptography):

认证(Authentication):有时可看作为“登录(login)”,它是用户证明自己是谁的一个行为。

授权(Authorization):访问控制过程,好比决定“认证(who)”可以访问“什么(what)”.

会话管理(Session Management):管理用户指定的会话(sessions),甚至在非WEB或EJB程序中。

加密(Cryptography):使用加密算法保护数据更加安全,应用仍然非常简单。

还有一些附加的功能以在不同的程序环境中进行支持和加强,特别是:

Web支持:利用Shiro的web支持API可以很容易地实现web程序安全;

Caching:Caching在Apache Shiro的API中是一等公民,确保安全认证的动作快速而有效。

并发(Concurrency):Apache Shiro 支持多线程;

测试(Testing):支持测试,帮助你开发单元和综合测试程序确保你的代码如你所预期的那样进行安全认证。

“Run As”:允许用户使用其他用户身份(如果被允许),这在执行某些管理角本中非常有用。

“Remember Me”:在整个会话周期中(sessions)记住用户的身份,用户只需要在程序强制要求登录的情况下才需要登录。

 

 原文地址: http://shiro.apache.org/introduction.html

作者:YYZhQ 发表于2012-4-14 11:35:50 原文链接
阅读:3 评论:0 查看评论

相关 [apache shiro] 推荐:

Apache Shiro 介绍

- - CSDN博客推荐文章
什么是Apache Shiro?. Apache shiro 是一个强大而灵活的开源安全框架,可清晰地处理身份认证、授权、会话(session)和加密. Apache Shiro最主要的初衷是为了易用和易理解,处理安全问题可能非常复杂甚至非常痛苦,但并非一定要如此. 一个框架应该尽可能地将复杂的问题隐藏起来,提供清晰直观的API使开发者可以很轻松地开发自己的程序安全代码.

[转载]Apache Shiro使用手册

- - 开源软件 - ITeye博客
第一部分 Shiro构架介绍. Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能: . 认证 - 用户身份识别,常被称为用户“登录”;. 密码加密 - 保护或隐藏数据防止被偷窥;. 会话管理 - 每用户相关的时间敏感的状态.       对于任何一个应用程序,Shiro都可以提供全面的安全管理服务.

在 Web 项目中应用 Apache Shiro

- - 企业架构 - ITeye博客
Apache Shiro 是功能强大并且容易集成的开源权限框架,它能够完成认证、授权、加密、会话管理等功能. 认证和授权为权限控制的核心,简单来说,“认证”就是证明你是谁. Web 应用程序一般做法通过表单提交用户名及密码达到认证目的. “授权”即是否允许已认证用户访问受保护资源. 关于 Shiro 的一系列特征及优点,很多文章已有列举,这里不再逐一赘述,本文重点介绍 Shiro 在 Web Application 中如何实现验证码认证以及如何实现单点登录.

Apache Shiro和Spring boot的结合使用

- - 企业架构 - ITeye博客
实际上在Spring boot里用Spring Security最合适,毕竟是自家东西,最重要的一点是Spring Security里自带有csrf filter,防止csrf攻击,shiro里就没有. 但是Spring Security有点太复杂,custmize起来比较费力,不如shiro来的简单.

Apache Shiro 整合Spring 进行权限验证

- - Web前端 - ITeye博客
Apache Shiro是什么. Apache Shiro是一个功能强大且易于使用的Java安全框架,进行认证,授权,加密和会话管理. 随着Shiro的易于理解的API,你可以快速,轻松地确保任何应用程序 - 移动应用从最小的到最大的Web和企业应用. 如何使用Apache Shiro(这里指与Spring 集成).

Shiro权限框架

- If you are thinking one year ahead, you plant rice. If you are thinking twenty years ahead, you plant trees. If you are thinking a hundred years ahead, you educate people. - BlogJava-首页技术区
开发系统中,少不了权限,目前java里的权限框架有SpringSecurity和Shiro(以前叫做jsecurity),对于SpringSecurity:功能太过强大以至于功能比较分散,使用起来也比较复杂,跟Spring结合的比较好. 对于初学Spring Security者来说,曲线还是较大,需要深入学习其源码和框架,配置起来也需要费比较大的力气,扩展性也不是特别强.

shiro-cas 单点退出

- - 互联网 - ITeye博客
shiro与CAS集成以后的单点退出. 效果任何一个应用退出以后 所有应用都要重新登录. 实现思路shiro退出系统以后重新定向到cas的退出. 1.重新配置shiro的登出跳转.   shiro退出以后跳转到cas的退出.   cas退出以后通过service参数跳转回应用界面. 2.覆盖shiro的默认退出实现 .

Shiro系列之Shiro+Mysql实现用户授权(Authorization)

- - CSDN博客推荐文章
昨天,我在《 Shiro系列之Shiro+Mysql实现用户认证(Authentication)》中简单介绍了使用Shiro+Mysql实现用户认证的功能,今天我们继续使用其中的示例,讲解一下如何实现用户授权. 所谓授权,就是判断当前用户具体哪些权限,能够执行哪些操作,或是访问哪些资源(Web中的URL,又或是页面上的一个按钮,一个编辑框等都可以视为资源).

Shiro系列之Shiro+Mysql实现用户认证(Authentication)

- - CSDN博客推荐文章
网上大多数介绍Apache Shiro的资料都是使用ini文件的简单配置为例,很少用讲到如何配合数据库来实现用户认证的. 我也是刚刚开始接触Shiro,在这里介绍一个入门级别的Shiro+Mysql的配置方法,这个方法仅仅是个开始,并没有和Web,Spring,Mybatis等框架进行整合,后续我还会继续和大家分享我的学习过程及心得.

CAS和Shiro在spring中集成

- - CSDN博客架构设计推荐文章
shiro是权限管理框架,现在已经会利用它如何控制权限. 为了能够为多个系统提供统一认证入口,又研究了单点登录框架cas. 因为二者都会涉及到对session的管理,所以需要进行集成. Shiro在1.2.0的时候提供了对cas的集成. 因此在项目中添加shiro-cas的依赖. Shiro对cas集成后,cas client的配置更加简单了.