J2EE
levinzhang1981
这个作者很懒,什么都没留下…
展开
-
Linux下tomcat与apache2集成step by step
1.下载安装tomcat既然是两个服务器的集成,所以首先要进行安装,这里假设你的机器已经安装好了JDK并且设置了正确的环境变量(如果不知道怎么设置,可以上网查的,这一步还是比较简单的)[list][*]1)下载:去apache的官方网站上下载tomcat,我选择的版本是6.0.29,选择apache-tomcat-6.0.29.tar.gz,ubuntu和red hat都有图形界面和...2011-01-04 22:33:43 · 70 阅读 · 0 评论 -
《Spring Security3》第八章第三部分翻译(属性交换)
属性交换(Attribute Exchange) OpenID另外一个有趣的功能就是如果使用OpenID的站点需要,OpenID provider提供(基于用户的许可)典型的用户注册数据,如名字、e-mail、生日。这个功能叫做属性交换(Attribute Exchange,AX)。下图展现了在OpenID请求中要求属性交换是如何添加进去的: AX属性值(如果...2012-01-18 15:46:02 · 110 阅读 · 0 评论 -
《Spring Security3》第九章(LDAP)第一部分翻译(LDAP基本配置)
第九章 LDAP目录服务 在本章中,我们将会了解轻量级目录访问协议(Lightweight Directory Access Protocol,LDAP)以及它怎样集成到使用Spring Security的应用中以提供认证、授权和用户信息服务。在本章的内容中,我们将会:l 学习一些LDAP协议相关的基本概念以及服务器实现;l 在SpringSecurity中...2012-01-19 12:22:20 · 287 阅读 · 0 评论 -
《Spring Security3》第九章(LDAP)第二部分翻译(LDAP高级配置)
LDAP的高级配置 一旦我们要了解LDAP基础集成之外的知识,就会发现security XML命名空间方式的配置中,Spring Security LDAP模块还有许多的可用配置。它包括查询用户的个人信息、用户认证的其它方式以及使用LDAP作为UserDetailsService且与DaoAuthenticationProvider结合。实例JBCP LDAP...2012-01-19 12:36:09 · 380 阅读 · 0 评论 -
《Spring Security3》第九章(LDAP)第三部分翻译(LDAP明确配置)
明确的LDAP bean配置 在本节中,我们带领你学会明确配置以下两项功能所需要的bean集合,即连接外部的LDAP服务器和支持授权的LdapAuthenticationProvider。正如其它基于bean的配置,你可能不希望这样做,除非你发现security命名空间风格的配置不能支持你的业务或技术需求——在这种情况下,请继续阅读。配置外部的LDAP服务器引...2012-01-19 12:44:04 · 191 阅读 · 0 评论 -
《Spring Security3》第十章(CAS)第一部分翻译(CAS基本配置)
第十章 使用中心认证服务(CAS)进行单点登录 在本章中,我们将会介绍使用中心认证服务(Central Authentication Service,CAS)为基于SpringSecurity的应用提供单点登录门户(single sign-on portal)。在本章的内容中,我们将会:l 学习CAS,包括它的架构以及对于系统管理员和各种规模组织的好处;...2012-01-19 12:54:19 · 141 阅读 · 0 评论 -
《Spring Security3》第十章(CAS)第二部分翻译(CAS高级配置)
高级CAS配置 CAS认证框架提供了高级的配置和与CAS服务的数据交换。在本节中,我们将会介绍CAS集成的高级配置。在我们觉得重要的地方将会包含相关的CAS配置指令,但是要记住的是CAS配置是很复杂的并超出了本书的范围。从CAS assertion中获取属性 在CAS服务器传递ticket校验结果时,可以将基于CAS认证时查询到的信息进行...2012-01-19 13:07:40 · 173 阅读 · 0 评论 -
《Spring Security3》第六章第六部分翻译(Spring Security基于bean的高级配置)
Spring Security基于bean的高级配置 正如我们在前面几页中看到的那样,基于bean的Spring Security配置尽管比较复杂,但是提供了一定层次的灵活性,如果复杂应用需要超过security XML命名空间风格配置所允许的功能时会用到。 我们将利用这个章节来阐明可用的一些配置选项以及怎么使用。尽管我们不能提供每个可能属性的细节,但是我们鼓励...2011-11-22 22:25:44 · 106 阅读 · 0 评论 -
《Spring Security3》第六章第七部分翻译(认证事件处理与小结)
认证事件处理 有一个重要的功能只能通过基于bean的配置就是自定义处理认证事件。认证事件使用了Spring的时间发布机制,它基于o.s.context.ApplicationEvent事件模型。Spring事件模型使用并不广泛,却能够很有用处——特别在认证系统中——如当你想绑定特定行为到认证领域的行动上去的时候。 事件是典型的订阅-发布模式,通知订阅者...2011-11-22 22:37:01 · 127 阅读 · 0 评论 -
《Spring Security3》第十一章(客户端证书认证)第一部分翻译
第十一章客户端证书认证(ClientCertificate Authentication) 尽管用户名和密码认证特别常见,就像我们在第一章:一个不安全应用的剖析和第二章:SpringSecurity起步所讨论的那样,form认证的存在允许用户提供各种类型的凭证。Spring Security也为这种需求提供了支持,在本章中我们将不再讨论基于form的认证并探索使用...2012-02-13 22:00:18 · 229 阅读 · 0 评论 -
《Spring Security3》第十一章(客户端证书认证)第二部分翻译
在Spring Security中配置客户端证书认证 不同于我们到目前为止所使用的认证机制,使用客户端证书认证会使得用户的请求已经被服务器预先认证(pre-authenticated)了。因为服务器(Tomcat)已经确定用户提供了合法且可信的证书,所以Spring Security只需信任这个assertion的合法性。 安全登录过程的另一个...2012-02-13 22:23:05 · 184 阅读 · 0 评论 -
《Spring Security3》第十二章翻译(Spring Security扩展)
第十二章Spring Security扩展 在本章中,我们将会探索一个SpringSecurity扩展项目的功能——这是很令人兴奋的功能即将Windows Active Directory认证(或其它支持Kerberos的设施)与SpringSecurity集成以为你的Intranet用户提供完善的单点登录体验。 在本章中,我们将会...2012-02-13 22:38:50 · 282 阅读 · 0 评论 -
《Spring Security3》第十三章翻译(迁移到Spring Security 3)
第十三章迁移到Spring Security 3 在最后一章中,我们将会了解从Spring Security2迁移到Spring Security3时常见问题的相关情况。 在本章中,我们将会:l 了解SpringSecurity 3的重要增强;l 理解已有的SpringSecurity 2应用迁移到Spring Secu...2012-02-13 22:50:15 · 120 阅读 · 0 评论 -
《Spring Security3》附录翻译(参考资料)
附录:参考材料 在本附录中,将会涉及到一些我们感觉有用的参考材料(并相当缺乏文档),而将其插入到章节的内容中又会觉得过于综合。JBCP Pets示例代码起步 就像我们在第一章:一个不安全应用的剖析中所描述的那样,我们假设你已有了Eclipse 3.4(或3.5)IDE,并包含Web Tools Package(WTP)。示例代码按每...2012-02-13 22:58:44 · 164 阅读 · 0 评论 -
Tomcat源码解读系列(一)——server.xml文件的配置
Tomcat是JEE开发人员最常用到的开发工具,在Java Web应用的调试开发和实际部署中,我们都可以看到Tomcat的影子。大多数时候,我们可以将Tomcat当做一个黑盒来看待,只需要将编写的Java Web工程进行部署即可,但是,在遇到一些比较复杂难解决的问题时,如果我们了解了Tomcat的内部实现原理将会处理起来更得心应手更快地定位问题。另外,通过学习Tomcat的源码还可以更加深入...2012-08-25 07:31:16 · 87 阅读 · 0 评论 -
Tomcat源码解读系列(二)——Tomcat的核心组成和启动过程
声明:源码版本为Tomcat 6.0.35前面的文章中介绍了Tomcat的基本配置,每个配置项也基本上对应了Tomcat的组件结构,如果要用一张图来形象展现一下Tomcat组成的话,整个Tomcat的组成可以如下图所示: Tomcat在接收到用户请求时,将会通过以上组件的协作来给最终用户产生响应。首先是最外层的Server和Service来提供整个运行环境的基础设施...2012-09-02 16:59:07 · 98 阅读 · 0 评论 -
Tomcat源码解读系列(三)——Tomcat对HTTP请求处理的整体流程
声明:源码版本为Tomcat 6.0.35前面的文章中介绍了Tomcat初始化的过程,本文将会介绍Tomcat对HTTP请求的处理的整体流程,更细节的。在上一篇文章中,介绍到JIoEndpoint中的内部类Acceptor用来接受Socket请求,并调用processSocket方法来进行请求的处理,所以会从本文这个方法开始进行讲解。 protected boolean ...2012-09-09 22:34:04 · 174 阅读 · 0 评论 -
Tomcat源码解读系列(四)——Tomcat类加载机制概述
声明:源码版本为Tomcat 6.0.35 在本系列的第二篇文章中,曾经介绍过在Tomcat启动时会初始化类加载器(ClassLoader),来处理整个Web工程中Class的加载问题。 类加载机制是Java平台中相当重要的核心技术,待笔者有所积累后会再次讨论这个话题。在一般的业务开发中我们可能较少接触和使用ClassLoader,但是在进行框架级程序...2012-09-23 22:23:51 · 206 阅读 · 0 评论 -
《Spring Security3》第八章第二部分翻译(OpenID用户的注册)
OpenID用户的注册问题 请使用我们前面的技术来测试Yahoo!OpenID——例如,https://me.yahoo.com/pmularien。你会发现它并不好用,像其它OpenID提供者那样。这带出了OpenID结构的一个很重要的问题,并体现出了启用OpenID用户注册的重要性。OpenID标识是如何处理的 Yahoo!返回的实...2012-01-18 13:39:15 · 170 阅读 · 0 评论 -
《Spring Security3》第八章第一部分翻译(OpenID与Spring Security)
第八章 对OpenID开放 OpenID是很流行的可信任身份管理方式,它允许用户通过一个单独的可信任提供者(provider)管理其身份信息。这个便利的功能为用户提供了安全的方式即使用可信任的OpenID提供者来存储器密码和个人信息,并可以随意的基于请求获取其个人信息。另外,启用OpenID功能的站点能够确信用户提供的OpenID凭证信息就是他们所说的人。 在本章中,我...2012-01-17 22:38:52 · 136 阅读 · 0 评论 -
《Spring Security3》第七章第三部分翻译(ACL的注意事项)
典型ACL部署所要考虑的事情 实际部署SpringACL到业务应用是很复杂的。我们总结了Spring ACL要注意的事情,它们在大多数Spring ACL实现场景中都存在。关于ACL的伸缩性和性能模型 对于小型和中型应用,添加ACL功能是很容易的,尽管它增加数据库存储和影响运行时性能,这个影响可能不会那么明显。但是,取决于ACL和ACE...2012-01-17 22:25:23 · 131 阅读 · 0 评论 -
Spring security与CAS集成的时序图
最近因为工作的需要,对spring security和cas的集成进行了比较细致的研究,通过跟踪源代码,大致了解了其工作流程,画了两张时序图,反应了整个的认证过程。期间的流程比较复杂,整理以后,我会把源代码的分析传上来。[img]http://dl.iteye.com/upload/attachment/481100/6986cf5a-d7dd-33d3-a86c-c8813a2005a8...2011-05-14 00:19:36 · 372 阅读 · 0 评论 -
《Spring Security3》第五章第一部分翻译(重新思考应用功能和安全)
第五章 精确的访问控制 到目前为止,我们已经为JBCP Pets站点添加了用户友好的一些功能,包括自定义的登录页以及修改密码、remember me功能。 在本章中,我们将要学习规划应用安全的技术以及用户/组的划分。其次,我们学习两种实现精确访问控制的实现方式——这会影响应用中页面的授权。然后,我们会了解Spring Security如何通过使用方法注解和AOP的方...2011-08-25 05:51:56 · 77 阅读 · 0 评论 -
关于对《Spring Security3》一书的翻译说明
最近阅读了《Spring Security3》一书,颇有收获(封面见图片)。因此将其部分内容翻译成中文,对于电子版内容,本人放弃一切权利。在翻译之前,本人曾发邮件征询原作者的意见,如今已是半月有余,未见其回复。因为非盈利为目的,所以斗胆将内容发布于博客之上。这是我第一次翻译东西,有很多地方觉得翻译的很生硬,希望阅读到的朋友们踊跃拍砖。我的新浪微博:http://weibo.com...原创 2011-06-02 23:43:54 · 146 阅读 · 0 评论 -
《Spring Security3》第五章第二部分翻译上(实现授权精确控制的方法——页面级权限)...
实现授权精确控制的方法 精确的授权指的是基于用户特定的请求进行授权的应用功能特性。不同于我们在第二章:Spring Security起步、第三章增强用户体验和第四章凭证安全存储中的粗粒度的授权,精确的授权一般指的是对页面中的部分进行选择性显示的功能,而不是限制访问一个完整的页面。现实世界中的应用将会花费可观的时间用在规划精确授权的细节上。 SpringSecu...2011-09-11 14:22:19 · 91 阅读 · 0 评论 -
《Spring Security3》第五章第二部分翻译下(实现授权精确控制的方法——页面级权限)...
使用控制器逻辑进行有条件渲染内容 现在,让我们将刚刚用<authorize>标签实现的例子改成用java代码的方式。为了简洁起见,我们只实现一个例子,但实现基于控制器检查的其它例子是很简单直接的。添加有条件显示的Log In链接 为了替代SpringSecurity的<authorize>标签,我们假设在模...2011-09-11 14:26:29 · 128 阅读 · 0 评论 -
《Spring Security3》第五章第三部分翻译(保护业务层)
保护业务层 到目前为止,在本书中我们的关注点都主要在JBCP Pets 应用web层面的安全。但是,在实际的安全系统规划中,对服务方法应该给予同等的重视,因为它们能够访问系统中最重要的部分——数据。 SpringSecurity支持添加授权层(或者基于授权的数据处理)到应用中所有Spring管理的bean中。尽管很多的开发人员关注层的安全,其实业务...2011-09-11 14:36:57 · 141 阅读 · 0 评论 -
《Spring Security3》第五章第四部分翻译(方法安全的高级知识和小结)
方法安全的高级知识方法安全的表现力不仅局限于简单的角色检查。实际上,一些方法安全的注解能够完全使用Spring表达式语言(SpEL)的强大功能,正如我们在第二章中讨论URL授权规则所使用的那样。这意味着任意的表达式,包含计算、Boolean逻辑等等都可以使用。使用bean包装类实现方法安全规则 另外一种定义方法安全的形式与XML声明有关,它可以包含在Spri...2011-09-11 14:50:59 · 108 阅读 · 0 评论 -
《Spring Security3》第六章第一部分翻译(自定义安全过滤器)
第六章 高级配置和扩展到目前为止,我们已经介绍了大多数Spring Security组件的理论以及架构和使用。我们的JBCP Pets商业站点也在逐渐变成一个安全的web应用,我们将会深入讲解一些更有难度的挑战。在本章的课程中,我们将会:l 实现我们自己的安全过滤器,解决一个很有趣的问题,即对特定的用户角色用IP过滤的方式增强站点的安全;l 构建自定义的Authe...2011-09-18 00:14:51 · 67 阅读 · 0 评论 -
《Spring Security3》第六章第二部分翻译(自定义AuthenticationProvider)
实现自定义的AuthenticationProvider在很多场景下,你的应用需要跳出SpringSecurity功能的边界,可能会需要实现自己的AuthenticationProvider。回忆在第二章中AuthenticationProvider的角色,在整个认证过程中,它接受安全实体请求提供的凭证(即Authentication对象或authentication tok...2011-09-18 00:23:17 · 214 阅读 · 0 评论 -
《Spring Security3》第六章第三部分翻译(Session的管理和并发)
Session的管理和并发Spring Security的一个常见配置就是检测相同的用户以不同的session登录安全系统。这被称为并发控制(concurrency control),是session管理(session management)一系列相关配置功能的一部分。严格来说,这个功能并不是高级配置,但是它会让很多新手感到迷惑,并且最好在你对Sping Security整体功能有所了...2011-10-17 23:22:14 · 109 阅读 · 0 评论 -
《Spring Security3》第六章第四部分翻译(异常处理)
理解和配置异常处理 SpringSecurity使用简单的分发器模式将框架抛出的异常转移到明确的处理行为中,这将会影响用户对安全资源的访问。Spring Security过滤器链中最后几个过滤器之一的o.s.s.web.access.ExceptionTranslationFilter负责检查在认证和授权过程中(在过滤器链的最后一个过滤器即FilterSecurity...2011-10-18 23:35:11 · 84 阅读 · 0 评论 -
《Spring Security3》第六章第五部分翻译(手动配置Spring Security设施的bean)
手动配置Spring Security设施的bean 如果你工作要求的环境很复杂而Spring Security的基本功能——尽管非常强大——不能满足所有的要求,你可能最终需要自己从头构建Spring Security的过滤器链以及支持实施。这是在Spring Security参考手册中没有完全提及的部分,但是却难住了很多人。有些人将这种类型的配置成为Spring...2011-10-19 22:05:27 · 90 阅读 · 0 评论 -
《Spring Security3》第四章第三部分翻译上(配置安全的密码)
配置安全的密码 我们回忆第一章:一个不安全应用的剖析中,审计人员认为密码以明文形式进行存储是最高优先级的安全风险。实际上,在任何安全系统中,密码安全都是保证已经经过认证的安全实体是真实可靠的重要方面。安全系统的设计人员必须保证密码存储时,任何恶意的用户想要进行破解都是非常困难的。 在数据库存储时,需要遵守以下的准则:l 密码不能以明文的形式进行存...2011-07-31 00:11:18 · 95 阅读 · 0 评论 -
《Spring Security3》第四章第四部分翻译(Remember me后台存储和SSL)附前四章doc文件...
到此,前四章翻译完成,欢迎朋友提些意见! 将Remember me功能迁移至数据库 现在你可能会意识到我们remember me功能的实现,能够在应用重启前很好的使用,但在应用重启时用户的session会被丢失。这对用户来说会不太便利,他们不应该关心JBCP Pets的维护信息。 幸运的是,Spring Security提供了将re...2011-08-05 21:55:15 · 100 阅读 · 0 评论 -
《Spring Security3》第七章第一部分翻译(访问控制列表ACL)
第七章 访问控制列表(ACL)在本章中,我们将会介绍访问控制列表这个复杂话题,它能够提供域对象实例层次授权的丰富模型。Spring Security提供了强大的访问控制列表,但是复杂且缺少文档,它能够很好的满足小到中型规模的实现。在本章的内容中,我们将会:l 理解访问控制列表的概念模型;l 了解SpringSecurity ACL模型中的关于访问控制列表的...2011-12-30 22:02:21 · 215 阅读 · 0 评论 -
《Spring Security3》第七章第二部分翻译(高级ACL)(上)
高级ACL话题 一些高级的话题在我们配置ACL环境时略过了,包括处理ACE许可授权,在运行时根据GrantedAuthority确定某种类型的ACL变化是否允许。既然现在我们已经有了一个运行环境,那我们要开始了解这些更高级的话题。Permission如何工作 许可授权(permission)只不过是简单的逻辑标识符用一个整数的二进制位来表示...2012-01-10 22:59:27 · 113 阅读 · 0 评论 -
《Spring Security3》第七章第二部分翻译(高级ACL)(下)
支持ACL的Spring表达式语言 SpEL对ACL系统的支持仅限于方法安全,通过使用hasPermission SpEL方法。典型情况下,这种类型的访问检查会与引用一个或多个传入参数(进行@PreAuthorize检查)或集合过滤(进行@PostAuthorize检查)联合使用。 遗憾的是,启用ACL方法安全配置需要我们配置所有的方法安全以明确的Spring B...2012-01-17 22:17:37 · 152 阅读 · 0 评论 -
《Spring In Action》第三版译序
《Spring In Action》第三版已经上市多日了,这本书是另外一位朋友和我一起翻译的,翻译期间受益很多,大家在阅读过程中如果发现什么错误的话,也欢迎在这里反馈给我! 当写下这些文字的时候,恰好是2012年的最后一天。我们顺利度过了所谓的“世界末日”,此时的大连,外面漫天飞雪,似乎在迎接即将到来的新年,正如那句诗所言:冬天到了,Spring还会远吗,是的,希望这本书能够帮你更好地学...2013-07-12 12:19:52 · 143 阅读 · 0 评论