JAAs验证机制.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAAs验证机制

Java认证和授权服务(JAAS)供应器 15.1.?概述 Spring Security提供一个包,可以代理Java认证和授权服务(JAAS)的认证请求。 这个包的细节在下面讨论。 JAAS的核心是登录配置文件。 想要了解更多JAAS登录配置文件的信息,可以查询Sun公司的JAAS参考文档。 我们希望你对JAAS有一个基本了解,也了解它的登录配置语法,这才能更好的理解这章的内容。 15.2.?配置 这个 JaasAuthenticationProvider 通过JAAS认证用户的主体和证书。 让我们假设我们有一个JAAS登录配置文件,/WEB-INF/login.conf, 里边的内容如下: JAASTest { sample.SampleLoginModule required; }; 就像所有的Spring Security bean一样,这个JaasAuthenticationProvider 要配置在application context里。 下面的定义是与上面的JAAS登录配置文件对应的: bean id=jaasAuthenticationProvider class=org.springframework.security.providers.jaas.JaasAuthenticationProvider property name=loginConfig value=/WEB-INF/login.conf/ property name=loginContextName value=JAASTest/ property name=callbackHandlers list bean class=org.springframework.security.providers.jaas.JaasNameCallbackHandler/ bean class=org.springframework.security.providers.jaas.JaasPasswordCallbackHandler/ /list /property property name=authorityGranters list bean class=org.springframework.security.providers.jaas.TestAuthorityGranter/ /list /property /bean 这个 CallbackHandler和AuthorityGranter会在下面进行讨论。 15.2.1.?JAAS CallbackHandler 大多数JAAS的登录模块需要设置一系列的回调方法。 这些回调方法通常用来获得用户的用户名和密码。 在Spring Security发布的时候,Spring Security负责用户交互(通过认证机制)。 因此,现在认证请求使用JAAS代理,Spring Security的认证机制将组装一个Authentication对象,它包含了所有JAASLoginModule需要的信息。 因此,Spring Security的JAAS包提供两个默认的回调处理器,JaasNameCallbackHandler 和 JaasPasswordCallbackHandler。 他们两个都实现了JaasAuthenticationCallbackHandler。 大多数情况下,这些回调函数可以直接使用,不用了解它们的内部机制。 为了需要完全控制回调行为,内部JaasAutheticationProvider使 用一个InternalCallbackHandler封装这个JaasAuthenticationCallbackHandler。 这个InternalCallbackHandler才是 实际实现了JAAS通常的CallbackHandler接口。 任何时候JAASLoginModule被使用的时候,它 传递一个application context里配置的InternalCallbackHandler列 表。 如果这个LoginModule需要回调InternalCallbackHandler,回调会传递封装好的JaasAuthenticationCallbackHandler。 15.2.2.?JAAS AuthorityGranter JAAS工作在主体上。 任何“角色”在JAAS里都是作为主体表现的。 另一方面Spring Security使用Authentication对 象。 每个Authentication对象包含单 独的主体和多个GrantedAutho

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档