![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring security
文章平均质量分 90
kong0csd
这个作者很懒,什么都没留下…
展开
-
《Spring Security3》第四章第一部分翻译上(数据库管理信息)(转载)
这次上传的部分内容是入门级的,比较简单,但是本章整体的功能还是非常重要的。 第四章 凭证安全存储到现在为止,我们已经将JBCP Pets站点做了一些用户友好性方面的升级,包括一个自定义的登录页、修改密码以及remember me功能。 在本章中,我们将会把到目前为止都在使用的内存存储转移到数据库作为后台的认证存储。...原创 2011-12-21 20:52:57 · 63 阅读 · 0 评论 -
《Spring Security3》第五章第三部分翻译(保护业务层)
保护业务层 到目前为止,在本书中我们的关注点都主要在JBCP Pets 应用web层面的安全。但是,在实际的安全系统规划中,对服务方法应该给予同等的重视,因为它们能够访问系统中最重要的部分——数据。 SpringSecurity支持添加授权层(或者基于授权的数据处理)到应用中所有Spring管理的b...原创 2011-12-24 10:22:19 · 84 阅读 · 0 评论 -
《Spring Security3》第五章第二部分翻译下(实现授权精确控制的方法——页面级权限)(转载)...
使用控制器逻辑进行有条件渲染内容 现在,让我们将刚刚用<authorize>标签实现的例子改成用java代码的方式。为了简洁起见,我们只实现一个例子,但实现基于控制器检查的其它例子是很简单直接的。添加有条件显示的Log In链接 为了替代SpringSecurit...原创 2011-12-25 00:47:02 · 56 阅读 · 0 评论 -
《Spring Security3》第五章第二部分翻译上(实现授权精确控制的方法——页面级权限)(转载)...
实现授权精确控制的方法 精确的授权指的是基于用户特定的请求进行授权的应用功能特性。不同于我们在第二章:Spring Security起步、第三章增强用户体验和第四章凭证安全存储中的粗粒度的授权,精确的授权一般指的是对页面中的部分进行选择性显示的功能,而不是限制访问一个完整的页面。现实世界中的应用将会花费可观的时间用在规划精确授权的细节上。 ...原创 2011-12-25 00:47:18 · 73 阅读 · 0 评论 -
《Spring Security3》第五章第一部分翻译(重新思考应用功能和安全) (转载)...
第五章 精确的访问控制 到目前为止,我们已经为JBCP Pets站点添加了用户友好的一些功能,包括自定义的登录页以及修改密码、remember me功能。 在本章中,我们将要学习规划应用安全的技术以及用户/组的划分。其次,我们学习两种实现精确访问控制的实现方式——这会影响应用中页面的授权。然后,我们会了解Spring S...原创 2011-12-25 00:47:31 · 85 阅读 · 0 评论 -
《Spring Security3》第四章第四部分翻译(Remember me后台存储和SSL)(转载)
将Remember me功能迁移至数据库 现在你可能会意识到我们remember me功能的实现,能够在应用重启前很好的使用,但在应用重启时用户的session会被丢失。这对用户来说会不太便利,他们不应该关心JBCP Pets的维护信息。 幸运的是,Spring Security...原创 2011-12-25 00:47:50 · 75 阅读 · 0 评论 -
《Spring Security3》第四章第三部分翻译下(密码加salt)(转载)
你是否愿意在密码上添加点salt? 如果安全审计人员检查数据库中编码过的密码,在网站安全方面,他可能还会找到一些令其感到担心的地方。让我们查看一下存储的admin和guest用户的用户名和密码值: 用户名明文密码加密密码adminadmin...原创 2011-12-25 00:48:07 · 67 阅读 · 0 评论 -
《Spring Security3》第四章第三部分翻译上(配置安全的密码)(转载)
配置安全的密码 我们回忆第一章:一个不安全应用的剖析中,审计人员认为密码以明文形式进行存储是最高优先级的安全风险。实际上,在任何安全系统中,密码安全都是保证已经经过认证的安全实体是真实可靠的重要方面。安全系统的设计人员必须保证密码存储时,任何恶意的用户想要进行破解都是非常困难的。 在数据库存储时,需要遵守以下的准则:...原创 2011-12-26 00:41:20 · 132 阅读 · 0 评论 -
《Spring Security3》第四章第二部分翻译(JdbcDaoImpl的高级配置)(转载)
JdbcDaoImpl的高级配置JdbcDaoImpl拥有众多的可配置选项使其可以在已存在的schema中使用,或对其功能进行更复杂地调整。在很多场景下,很可能我们只需调整内置UserDetailsService类的配置而不需要写自己的代码。 有一个很重要的功能就是在用户(User)和权限(GrantedAuthority)...原创 2011-12-26 00:41:32 · 79 阅读 · 0 评论 -
《Spring Security3》第一章第一部分翻译(转载)
第一章 一个不安全应用的剖析毫无疑问,安全是任何一个写于21世纪的web工程中最重要的架构组件之一。在这样一个时代,计算机病毒、犯罪以及不合法的员工一直存在并且持续考验软件的安全性试图有所收益,因此对你负责的项目综合合理地使用安全是至关重要的一个元素。 本书的写作遵循了这样的一个开发模式,这个模式我们感觉提供了一个有用的前提来解...原创 2011-12-26 00:41:45 · 50 阅读 · 0 评论 -
《Spring Security3》第一章第二部分翻译(转载)
应用所使用的技术我们使用了一些每个Spring程序员都会遇到的技术和工具,以使得示例应用很容易的运行起来。尽管如此,我们还是提供了补充的起步资料信息在附录:参考资料。我们建立使用如下的IDE以提高开发的效率并使用本书的示例代码:<!--[if !supportLists]-->l <!--[endif]-->Ecli...原创 2011-12-26 00:42:00 · 84 阅读 · 0 评论 -
《Spring Security3》第二章第一部分翻译
第二章 Spring Security起步在本章中,我们将要学习SpringSecurity背后的核心理念,包括重要的术语和产品架构。我们将会关注配置Spring Security的一些方式以及对应用的作用。最重要的是为了解决工作中的问题,我们要开始使得JBCP Pets的在线商店系统变得安全。我们将会通过分析和理解认证如何保护在线...原创 2011-12-26 00:42:18 · 74 阅读 · 0 评论 -
《Spring Security3》第二章第二部分翻译(转载)
三步之内使我们的应用变得安全 尽管SpringSecurity的配置可能会很难,但是它的作者是相当为我们着想的,因为他们为我们提供了一种简单的机制来使用它很多的功能并可以此作为起点。以这个为起点,额外的配置能够实现应用的分层次详细的安全控制。 我们将从我们不安全的在线商店开始,并且使用三步操作将它变成一个拥有基本用户名...原创 2011-12-28 06:38:32 · 60 阅读 · 0 评论 -
《Spring Security3》第二章第三部分翻译(上)(转载)
安全的复杂之处:安全web请求的架构 借助于SpringSecurity的强大基础配置功能以及内置的认证功能,我们在前面讲述的三步配置是很快就能完成的;它们的使用是通过添加auto-config属性和http元素实现的。 但不幸的是,应用实现的考量、架构的限制以及基础设施集成的要求可能使...原创 2011-12-28 06:38:45 · 87 阅读 · 0 评论 -
《Spring Security3》第二章第三部分翻译(中)(转载)
请求是怎样被授权的?在Spring Security的默认过滤器链中,最后一个servelt过滤器是FilterSecurityInterceptor,它的作用是判断一个特定的请求是被允许还是被拒绝。在FilterSecurityInterceptor被触发的时候,安全实体已经经过了认证,所以系统知道他们是合法的用户。(其实也有可能是匿名的用户,译...原创 2011-12-28 06:38:56 · 60 阅读 · 0 评论 -
《Spring Security3》第二章第三部分翻译(下)(转载)
使用Spring表达式语言配置访问控制 基于角色标准投票机制的标准实现是使用RoleVoter,还有一种替代方法可用来定义语法复杂的投票规则即使用Spring表达式语言(SpEL)。要实现这一功能的直接方式是在<http>配置元素上添加use-expressions属性: <http auto-...原创 2011-12-28 06:39:14 · 129 阅读 · 0 评论 -
《Spring Security3》第三章第一部分翻译(转载)
第三章 增强用户体验 在本章中,我们将对JBCP Pets在线商店增加一些功能,这些新功能能够为用户提供更愉悦和可用的用户体验,同时提供一些对安全系统很重要的功能。在本章中,我们将要:l 按照你的意愿自定义登录和退出页面,并将它们与标准的Spring web MVC的控制器相关联;l...原创 2011-12-28 06:39:25 · 90 阅读 · 0 评论 -
《Spring Security3》第五章第四部分翻译(方法安全的高级知识和小结)(转载)...
方法安全的高级知识方法安全的表现力不仅局限于简单的角色检查。实际上,一些方法安全的注解能够完全使用Spring表达式语言(SpEL)的强大功能,正如我们在第二章中讨论URL授权规则所使用的那样。这意味着任意的表达式,包含计算、Boolean逻辑等等都可以使用。使用bean包装类实现方法安全规则 另外一...原创 2011-12-24 10:22:04 · 85 阅读 · 0 评论 -
《Spring Security3》第六章第一部分翻译(自定义安全过滤器)(转载)
第六章 高级配置和扩展到目前为止,我们已经介绍了大多数Spring Security组件的理论以及架构和使用。我们的JBCP Pets商业站点也在逐渐变成一个安全的web应用,我们将会深入讲解一些更有难度的挑战。在本章的课程中,我们将会:l 实现我们自己的安全过滤器,解决一个很有趣的问题,即对特定的用户角色用IP...原创 2011-12-24 10:21:45 · 83 阅读 · 0 评论 -
《Spring Security3》第四章第一部分翻译下(自定义的UserDetailsService)(转载)
实现自定义的JDBC UserDetailsService正如在前面章节中的那个练习,我们将以基本的JdbcDaoImpl作为起点,将其进行扩展以支持修改密码功能。创建一个自定义的JDBC UserDetailsService在com.packtpub.springsecurity.security包下创建如下的类: ...原创 2011-12-21 20:55:04 · 177 阅读 · 0 评论 -
《Spring Security3》第三章第四部分翻译(修改密码)(转载)
实现修改密码管理现在我们将要对基于内存的UserDetailsService进行简单的扩展以使其支持用户修改密码。因为这个功能对用户名和密码存于数据库的场景更有用,所以基于o.s.s.core.userdetails.memory.InMemoryDaoImpl扩展的实现不会关注存储机制,而是关注框架对这种方式扩展的整体流程和设计。在第四章中,我们将通过将其转移到数据库后...原创 2011-12-21 20:56:45 · 58 阅读 · 0 评论 -
《Spring Security3》第三章第三部分翻译下(Remember me安全吗?)(转载)
Remember me是否安全?对我们精心保护的站点来说,为了用户体验而添加的任何与安全相关的功能,都有增加安全风险的潜在可能。按照其默认方式,Remember me功能存在用户的cookie被拦截并被恶意用户重用的风险。下图展现了这种情况是如何发生的: 使用SSL(第四章进行讨论)以及其他的网络安全技术能缓解这种类型攻击的风险,...原创 2011-12-21 20:58:34 · 60 阅读 · 0 评论 -
《Spring Security3》第三章第三部分翻译上(Remember me功能实现)(转载)
Remember me对于经常访问站点的用户有一个便利的功能就是remember me。这个功能允许一个再次访问的用户能够被记住,它通过在用户的浏览器上存储一个加密的cookie来实现的。如果Spring Security能够识别出用户提供的remember me cookie,用户将不必填写用户名和密码,而是直接登录进入系统。 与到目前为...原创 2011-12-21 20:59:34 · 64 阅读 · 0 评论 -
spring-security3 配置和使用(二)承上
2、xml配置,配置内容如下: Xml代码 <?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns="http://www.springframework.org/schema/securit...原创 2011-12-22 06:42:56 · 112 阅读 · 0 评论 -
spring-security3 配置和使用 (一)(转载)
最近项目中要使用到spring-security,可能研究的不够透彻 这些知识点 都是从网上copy的 或许能对需要的朋友一些帮助。如若喜欢欢迎转载!1、在spring-security官网下载最新jar然后拷贝jar到项目的lib下。 2、在classpath下添加security配置文件,例如applicationContext-security.xml.网上现在大多都是2.0的s...原创 2011-12-22 06:43:18 · 67 阅读 · 0 评论 -
SpringSecurity3.X--一个简单实现(转载)
作者对springsecurity研究不深,算是个初学者吧,最近很不完整的看了一下翻译的很是生硬的《Spring3Security-3.0.1中文官方文档.pdf》,为了便于学习和记忆,所以将所学知识在此记录下来。这里给出一个简单的安全验证的实现例子,先说一下需求:1.通过登录页面进行登录2.用户登录前访问被保护的地址时自动跳转到登录页面3.用户信息存储在数据表中4.用户权限信...原创 2011-12-22 06:43:40 · 89 阅读 · 0 评论 -
SpringSecurity3.X--验证码(转载)
一般来说,登录时都会要求用户输入验证码,以防止恶意登录。可是,SpringSecurity并没有为我们提供这样的功能,所以就需要我们自己来解决了。那么该如何解决呢,其实也挺简单的,核对验证码信息,当然是在登录时处理的,所以,使用filter是最佳选择。 既然确定了方向,那么久该考虑如何增加这个filter了,其实可以有两种方案:1.继承UsernamePasswordAut...原创 2011-12-22 06:44:04 · 109 阅读 · 0 评论 -
SpringSecurity3.X--remember-me(转载)
笔者在SpringSecurity中配置remember-me时,遇到这样的问题,remember-me没有起作用,按照官方文档的讲解,只需要在<http>中增加<remember-me />配置,并在login.jsp中增加如下代码即可:Java代码 <input id="_spring_security_remember_m...原创 2011-12-22 06:44:25 · 75 阅读 · 0 评论 -
SpringSecurity3.X--前台与后台登录认证(转载)
不过一般我们在管理系统时都会分前台与后台,也就是说,前台与后台的登录入口与注销地址都是不一样的,那么该如何使用SpringSecurity实现呢,参考了一些网络上的例子,将之前的小应用做了如下修改:applicationContext-security.xmlXml代码 <?xml version="1.0" encod...原创 2011-12-23 06:33:46 · 313 阅读 · 0 评论 -
《Spring Security3》第六章第七部分翻译(认证事件处理与小结)
认证事件处理 有一个重要的功能只能通过基于bean的配置就是自定义处理认证事件。认证事件使用了Spring的时间发布机制,它基于o.s.context.ApplicationEvent事件模型。Spring事件模型使用并不广泛,却能够很有用处——特别在认证系统中——如当你想绑定特定行为到认证领域的行动上去的时候。 ...原创 2011-12-23 06:34:00 · 83 阅读 · 0 评论 -
《Spring Security3》第六章第六部分翻译(Spring Security基于bean的高级配置)
Spring Security基于bean的高级配置 正如我们在前面几页中看到的那样,基于bean的Spring Security配置尽管比较复杂,但是提供了一定层次的灵活性,如果复杂应用需要超过security XML命名空间风格配置所允许的功能时会用到。 我们将利用这个章节来阐明可用的一些配置选项以及怎么使用。...原创 2011-12-23 06:34:22 · 103 阅读 · 0 评论 -
《Spring Security3》第六章第五部分翻译(手动配置Spring Security设施的bean)(转载)...
手动配置Spring Security设施的bean 如果你工作要求的环境很复杂而Spring Security的基本功能——尽管非常强大——不能满足所有的要求,你可能最终需要自己从头构建Spring Security的过滤器链以及支持实施。这是在Spring Security参考手册中没有完全提及的部分,但是却难住了很多人。有...原创 2011-12-23 06:34:37 · 66 阅读 · 0 评论 -
《Spring Security3》第六章第四部分翻译(异常处理)(转载)
理解和配置异常处理 SpringSecurity使用简单的分发器模式将框架抛出的异常转移到明确的处理行为中,这将会影响用户对安全资源的访问。Spring Security过滤器链中最后几个过滤器之一的o.s.s.web.access.ExceptionTranslationFilter负责检查在认证和授权过程中(在过滤器链的最后一个过滤器即...原创 2011-12-23 06:34:49 · 73 阅读 · 0 评论 -
《Spring Security3》第六章第三部分翻译(Session的管理和并发)(转载)
Session的管理和并发Spring Security的一个常见配置就是检测相同的用户以不同的session登录安全系统。这被称为并发控制(concurrency control),是session管理(session management)一系列相关配置功能的一部分。严格来说,这个功能并不是高级配置,但是它...原创 2011-12-24 10:20:17 · 71 阅读 · 0 评论 -
《Spring Security3》第六章第二部分翻译(自定义AuthenticationProvider)(转载)
实现自定义的AuthenticationProvider在很多场景下,你的应用需要跳出SpringSecurity功能的边界,可能会需要实现自己的AuthenticationProvider。回忆在第二章中AuthenticationProvider的角色,在整个认证过程中,它接受安全实体请求提供的凭证(即Authentication对象或a...原创 2011-12-24 10:21:02 · 188 阅读 · 0 评论 -
《Spring Security3》第三章第二部分翻译(退出功能的实现)(转载)
理解退出功能术语退出(Logout)指的是用户使其安全session失效的一种操作。一般来说,用户在退出后,将会被重定向到站点的非安全保护的界面。让我们在站点的页头部分添加一个“Log Out”的链接,并再次访问站点以了解其如何实现功能的。在站点页头上添加“Log Out”链接正如我们在第二章中讨论的那样,Spring Se...原创 2011-12-29 06:33:30 · 65 阅读 · 0 评论