- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
                        查看更多
                        
                    
                Shiro 身份验证的
                    
                              Shiro ⾝份验证 
⾝份验证 
⾝份验证,即在应⽤中谁能证明他就是他本⼈。⼀般提供如他们的⾝份 ID ⼀些标识 
信息来 明他就是他本⼈,如提供⾝份证,⽤户名 / 密码来证明。 
在 shiro  中,⽤户需要提供 principals       (⾝份)和 credentials   (证明)给 shiro ,从⽽应 
⽤能验证⽤户⾝份: 
principals :⾝份,即主体的标识属性,可以是任何东西,如⽤户名、邮箱等,唯⼀即 
可。⼀个主体可以有多个 principals ,但只有⼀个 Primary principals ,⼀般是⽤户名 / 
密码 / ⼿机号。 
credentials :证明 / 凭证,即只有主体知道的安全值,如密码 / 数字证书等。 
最常见的 principals 和 credentials 组合就是⽤户名 / 密码了。接下来先进⾏⼀个基本的 
⾝份认证。 
另外两个相关的概念是之前提到的 Subject 及 Realm ,分别是主体及验证主体的数据 
源。 
环境准备 
本⽂使⽤ Maven 构建,因此需要⼀点 Maven 知识。⾸先准备环境依赖: 
dependencies 
    dependency 
        groupIdjunit/groupId 
        artifactIdjunit/artifactId 
        version4 .9/version 
    /dependency 
    dependency 
        groupIdcommons-logging/groupId 
        artifactIdcommons-logging/artifactId 
        version1.1.3/version 
    /dependency 
    dependency 
        groupIdorg.apache.shiro/groupId 
        artifactIdshiro-core/artifactId 
        version1. . /version 
    /dependency 
/dependencies 
添加 junit 、common-logging 及 shiro-core 依赖即可。 
登录 / 退出 
1、⾸先准备⼀些⽤户⾝份 / 凭据 (shiro .ini ) 
[users] 
zhang=1 3 
wang=1 3 
此处使⽤ ini 配置⽂件,通过  [users] 指定了两个主体:zhang/ 1  3、wang/ 1  3 。 
 、测试⽤例 (com .github .zhangkaitao .shiro .chapter .LoginLogoutTest ) 
@Test 
public void testHelloworld() { 
    //1、获取SecurityManager⼯⼚,此处使⽤Ini配置⽂件初始化SecurityManag 
            new IniSecurityManagerFactory(classpath:shiro.ini); 
    // 、得到SecurityManager实例 并绑定给SecurityUtils   org.apache.s 
    SecurityUtils.setSecurityManager(securityManager); 
    //3、得到Subject及创建⽤户名/密 身份验证Token (即⽤户身份/凭证) 
    Subject subject = SecurityUtils.getSubject(); 
    UsernamePasswordToken token = new UsernamePasswordToken(zhang 
    try { 
        //4、登录,即身份验证 
        subject.login(token); 
    } catch (AuthenticationException e) { 
        //5、身份验证失败 
    } 
    Assert.assertEquals(true, subject.isAuthenticated()); //断⾔⽤户 
    //6、退出 
    subject.logout(); 
} 
      ⾸先通过 new IniSecurityManagerFactory 并指定⼀个 ini 配置⽂件来创建⼀个 
      SecurityManager ⼯⼚
                您可能关注的文档
- 2012百科名词解释的.doc
- 2013.11.21高新技术的企业认定培训-合肥和钧正策信息技术有限公司.ppt
- 20130408理论总结的.ppt
- 2013专业技术人员继的续教育心理健康与心理调适题库.doc
- 2013届高考英语一轮的复习 Module6 Unit 2 What is happiness to you课件 牛津译林版(湖南专用).ppt
- 2013届高考历史一轮的复习 第1课时夏商西周早期政治制度与秦朝中央集权制度的确立精品讲义 新人教版必修1.doc
- 2013年专业技术人员的公需课试题及答案(中高级).doc
- 2013年专技人员公需的科目培训 84分.doc
- 2013年军事理论上机的试题-II.doc
- 2013年国家司法考试的大纲:国际私法.doc
最近下载
- ADI 电工电气 双通道12_14_16位1GSPS数模转换器 AD9776A_AD9778A_AD9779A 使用说明.pdf
- 达克罗表面处理工艺和发展.ppt VIP
- 人教PEP版(2024)三年级上册英语全册教案(单元整体教学设计).docx
- 四年级语文上册爬天都峰第2课时人教部编版.ppt VIP
- 镇痛药物在儿童疼痛管理中的应用.pptx VIP
- CB_T 3253-2013 船用柴油机技术条件.pdf VIP
- 2025年江西省盐业集团股份有限公司校园招聘笔试模拟试题及答案解析.docx VIP
- GBT 25442-2018 旋转电机(牵引电机除外)确定损耗和效率的试验方法.pdf
- 学堂在线 医学英语词汇进阶 期末考试答案.docx VIP
- 2025年度吉林省国资委监管企业招聘(1号)备考题库及答案解析.docx VIP
 原创力文档
原创力文档 
                        

文档评论(0)