Spring SecurityLDAD配置.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Spring SecurityLDAD配置.doc

《Spring Security3》第九章(LDAP)第二部分翻译(LDAP高级配置) 博客分类: Spring Security J2EE Spring Security安全翻译Java EE ? LDAP的高级配置 ???????? 一旦我们要了解LDAP基础集成之外的知识,就会发现security XML命名空间方式的配置中,Spring Security LDAP模块还有许多的可用配置。它包括查询用户的个人信息、用户认证的其它方式以及使用LDAP作为UserDetailsService且与DaoAuthenticationProvider结合。 实例JBCP LDAP用户 ???????? 在JBCP Pets LDIF文件中,我们提供了许多的用户。在高级配置练习和自学中,以下的快速查询表可能会对你有所帮助。要注意的是除了userwithphone以外,所有用户的密码均为password。 ???????? 用户名 角色 密码编码 ldapguest ROLE_USER Plaintext anotherldapuser ROLE_USER Plaintext ldapadmin ROLE_USER和ROLE_ADMIN Plaintext shapassworduser ROLE_USER {sha} sshapassworduser ROLE_USER {ssha} userwithphone ROLE_USER Plaintext(在telephoneNumber属性中) ? ???????? 我们将会在后面的章节中介绍为什么密码编码很重要。 密码对比与绑定认证 ???????? 有一些LDAP服务器可能会配置成不允许特定的用户直接绑定到服务器上,这样的话匿名绑定(这是我们到此为止所使用的用户搜索办法)就被禁止了。这可能发生在很大规模的组织中,它想要限制能够从目录中读取信息的用户集合。在这种情况下,标准的Spring Securiry LDAP认证就行不通了,必须使用一种替代策略,通过o.s.s.ldap.authentication.PasswordComparisonAuthenticator实现(BindAuthenticator的兄弟类)。 ?PasswordComparisonAuthenticator绑定到LDAP上并查找匹配用户所提供用户名的DN。它接下来会比较用户提供的密码和匹配的LDAP条目中存储的userPassword属性。如果编码后的密码相匹配,用户认证成功,接下来的流程与BindAuthenticator相同。 配置基本的密码对比 配置密码对比认证来替换绑定认证很简单,只需在ldap-authentication-provider中添加一个子元素即可,如下: ? Xml代码 ? ldap-authentication-provider?server-ref=ldapLocal?? ??user-search-filter=(uid={0})?group-search-base=ou=Groups?? ??password-compare/?? /ldap-authentication-provider??? ldap-authentication-provider server-ref=ldapLocal user-search-filter=(uid={0}) group-search-base=ou=Groups password-compare/ /ldap-authentication-provider? 默认的PasswordComparisonAuthenticator使用LDAP密码编码算法SHA(回忆一下我们在第四章:凭证安全存储中讨论过的SHA-1密码加密算法)。在重启服务之后,你可以使用用户名shapassworduser和密码password尝试登录。 LDAP密码编码和存储 ???????? LDAP支持多种的密码加密算法,从简单文本到单向加密算法(类似于我们在第四章中了解到的基于数据库认证)。最常用的LDAP密码存储格式是SHA(SHA-1单向加密)和SSHA(使用salt值的单向加密算法)。很多的LDAP实现支持RFC 2307, An Approach for Using LDAP as a Network Information Service (/html/rfc2307)定义的其它的密码格式。 ???????? RFC 2307的设计者在密码存储方面做了一项很高明的事情。从目录中的得到的密码当然是按照一定的算法(SHA等)进行加密的,但是它以使用的加密算法作为前缀。这使得LDAP服务器能够很容易支持多种密码编

文档评论(0)

克拉钻 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档