应用办公生活信息教育商业
投稿投诉
商业财经
汽车智能
教育国际
房产环球
信息数码
热点科技
生活手机
晨报新闻
办公软件
科学动态
应用生物
体育时事

Java安全领域,SpringSecurity与Shiro你

  前言
  在开始学习SpringSecurity系列教程之前,一一哥先带大家来了解一下SpringSecurity,看看它到底是什么,有哪些功能,有什么特点,以及它与别的同类框架相比,有什么不同,我们以后学习任何一个新技术,其实都可以遵循3W1H法则,这样学习起来才能更有条理。一。SpringSecurity概念
  首先请各位跟着一一哥来了解一下SpringSecurity的概念,我们得先知道要学习的是个什么东西,以后我们出去面试的时候,面试官可能会问你,请你介绍一下SpringSecurity,那么答案其实就是这个概念了。
  SpringSecurity是一个功能强大且高度可定制的,主要负责为Java程序提供声明式的身份验证和访问控制的安全框架。其前身是AcegiSecurity,后来被收纳为Spring的一个子项目,并更名为了SpringSecurity。
  SpringSecurity的底层主要是基于SpringAOP和Servlet过滤器来实现安全控制,它提供了全面的安全解决方案,同时授权粒度可以在Web请求级和方法调用级来处理身份确认和授权。二。SpringSecurity功能
  接下来我们必须掌握SpringSecurity的核心功能有哪些,就是它能够做什么。
  SpringSecurity的核心功能主要包括如下几个:认证:解决你是谁的问题解决的是系统中是否有这个用户(用户设备系统)的问题,也就是我们常说的登录。授权:权限控制鉴别,解决的是系统中某个用户能够访问哪些资源,即你能干什么的问题。SpringSecurity支持基于URL的请求授权、方法访问授权、对象访问授权。防护攻击:防止身份伪造等各种攻击手段。加密功能:对密码进行加密、匹配等。会话功能:对Session进行管理。RememberMe功能:实现记住我功能,并可以实现token令牌持久化。三。SpringSecurity支持的身份认证模式
  在SpringSecurity中,我们除了掌握几个核心功能之外,对于其身份认证模式简单了解一下即可。
  在身份验证层面,SpringSecurity广泛支持各种身份认证模式。这些验证模式绝大多数都是由第三方提供,或相关标准组织提供的,目前SpringSecurity支持如下认证技术:HTTPBASICauthenticationheaders:一个基于IEFTRFC的标准。
  HTTPDigestauthenticationheaders:一个基于IETFRFC的标准。
  HTTPX。509clientcertificateexchange:一个基于IETFRFC的标准。
  LDAP:一种常见的跨平台身份验证方式。
  Formbasedauthentication:用于简单的用户界面需求。
  OpenIDauthentication:一种去中心化的身份认证方式。
  Authenticationbasedonpreestablishedrequestheaders:类似于ComputerAssociates
  SiteMinder,一种用户身份验证及授权的集中式安全基础方案。
  JasigCentralAuthenticationService:单点登录方案。
  TransparentauthenticationcontextpropagationforRemoteMethodInvocation(RMI)andHttpInvoker:一个Spring远程调用协议。
  Automaticremembermeauthentication:允许在指定到期时间前自行重新登录系统。
  Anonymousauthentication:允许匿名用户使用特定的身份安全访问资源。
  Runasauthentication:允许在一个会话中变换用户身份的机制。
  JavaAuthenticationandAuthorizationService:JAAS,Java验证和授权API。
  JavaEEcontainerauthentication:允许系统继续使用容器管理这种身份验证方式。
  Kerberos:一种使用对称密钥机制,允许客户端与服务器相互确认身份的认证协议。四。Shiro框架简介
  如果各位之前有过Java项目的开发经验,应该了解使用过另一个比较有名气的安全框架,就是Shiro。1。Shiro起源
  在Java安全领域,除了SpringSecurity,还有一个更久远的Shiro框架。Shiro是Apache下的一个开源安全框架,提供了身份验证、授权、密码学和会话管理等关于安全的核心功能。它的前身是JSecurity,2004年,LesHazlewood和JeremyHaile创办了Jsecurity。当时他们找不到适用于应用程序级别的合适Java安全框架,同时又对JAAS非常失望,于是就搞了Shiro这个框架。
  2004年到2008年期间,JSecurity托管在SourceForge上,贡献者包括PeterLedbrook、AlanDitzel和TimVeil。
  2008年,JSecurity项目贡献给了Apache软件基金会(ASF),并被接纳成为ApacheIncubator项目,由导师管理,目标是成为一个顶级Apache项目。期间,Jsecurity曾短暂更名为Ki,随后因商标问题被社区更名为Shiro。随后项目持续在ApacheIncubator中孵化,并增加了贡献者KalleKorhonen。
  2010年7月,Shiro社区发布了1。0版,随后社区创建了其项目管理委员会,并选举LesHazlewood为主席。2010年9月22日,Shrio成为Apache软件基金会的顶级项目(TLP)。2。Shiro功能
  ApacheShiro也是一个强大而灵活的开源安全框架,它干净利落地处理身份认证,授权,企业会话管理和加密。ApacheShiro的首要目标是易于使用和理解,因为安全有时候是很复杂的,甚至是痛苦的,但其实没必要这样。框架应该尽可能掩盖复杂的地方,暴露一个干净而直观的API,来简化开发人员在应用程序安全上所花费的时间。
  ApacheShiro是一个拥有许多功能的综合性的安全框架,下图表展示了Shiro的核心功能:
  Shiro中有四大核心功能身份验证,授权,会话管理和加密。Authentication:简称为登录,这是一个证明用户是谁的行为。Authorization:访问控制的过程,也就是决定谁可以去访问什么。SessionManagement:管理用户特定的会话,即使在非Web或EJB应用程序。Cryptography:通过使用加密算法保持数据安全同时易于使用。
  除此之外,Shiro也提供了额外的功能,来解决在不同环境下所面临的安全问题,尤其是以下这些:WebSupport:web支持的API能够轻松地保护Web应用程序。Caching:缓存是用来确保操作的快速而又高效的。Concurrency:ApacheShiro利用它的并发特性来支持多线程应用程序。Testing:测试功能来帮助编写单元测试和集成测试。RunAs:一个允许用户以另一个用户身份(如果允许)运行的功能,有时候在管理脚本时很有用。RememberMe:在会话中记住用户的身份,这样用户只需要在强制登录时登录。3。Shiro特点
  Shiro框架具有直观、易用等特性,同时也能提供了健壮的安全性,虽然它的功能不如SpringSecurity那么强大,但是在常规的企业级应用中,其实也够用了。
  当然在本系列教程中,我们主要是先学习SpringSecurity,对于Shiro的内容,请各位多关注我,我以后会再推出关于Shiro的系列教程。五。SpringSecurity与Shiro对比
  在上一小节中,我给各位说到,在Java安全领域中,目前常用的安全框架,就是SpringSecurity与Shiro,那么我们来对比一下两者各自的特点,这也是我们出去面试时,面试官常问的一个点:请说一下SpringSecurity与Shiro的区别。1。SpringSecurity优点SpringSecurity基于Spring开发,所以SpringSecurity与Spring更契合;
  SpringSecurity功能比Shiro更加强大,尤其是在安全防护方面;
  SpringSecurity社区资源比Shiro更加丰富;
  SpringBootSpringCloud环境中,更容易集成SpringSecurity;
  SpringSecurity具备良好的扩展性,可以满足自定义的要求;
  SpringSecurity对OAuth2框架支持很好,而Shiro则对OAuth2支持不够。2。SpringSecurity缺点Shiro是一个轻量、简单、易于集成的老牌安全框架,而且使用流程简单清晰;反观SpringSecurity,则属于是重量级、配置繁琐、学习使用门槛高的安全框架。
  Shiro依赖性低,不需要任何框架和容器,可以独立运行,而SpringSecurity需要依赖Spring容器。3。现在常见的安全技术栈
  在目前的Java体系中,我们在进行关于安全方面的开发时,到底该选择Shiro还是SpringSecurity哪个框架呢?其实我们可以进行如下搭配:SSMShiroSpringBootSpringCloudSpringSecurity
  就目前而言,Shiro最大的问题在于和Spring家族的产品进行整合时较为不便。在SpringBoot推出的很长一段时间里,Shiro都没有提供相应的starter,后来虽然有一个shirospringbootwebstarter出来,但配置并没有简化多少。所以在SpringBootSpringCloud技术栈的微服务项目中,Shiro几乎不存在优势。
  但如果你是进行传统的SSM项目开发,而不是微服务项目,那么无疑使用Shiro是最方便省事的,因为它足够简单,足够轻量级。
  通过本篇教程,相信只要你认真查看,就可以跟着一一哥了解掌握了SpringSecurity的概念功能,这些虽然是理论知识,我们也应该有所掌握。很多程序员之所以面试会失败,或者拿不到满意的高薪,就是只会使用某个技能,但是对该技能说不出个一二三来,我们必须丰富自己的理论水平,才能让面试官更认可我们,你认为呢?

这些身体上的小包块是吃出来的?以下三种食物才是要少吃发物不是一种,而是一类,需要辨证看待,还需具体到不同体质的患者身上,如果全部都不能吃猪牛羊,不太合理。一个消瘦的结节患者,需要足够的营养支撑,猪牛羊肉营养丰富,能补充蛋白……三校艺考状元夏梦接拍二流偶像剧?有些经纪公司真是毁人不倦有些人去做艺人做演员,她刚一出现,你就会知道她注定不平凡,例如现在北京电影学院的在读学生夏梦,必定会是00后热门女演员的强力竞争者之一。因为她的出场就自带高光,没有任何值……心脑血管病危害大,预防心脑血管病的秘诀是什么?心脑血管病以发病率高、致残率高、死亡率高、复发率高为显著特点,它的危害极大,主要有以下几种:高血压,以收缩压和或舒张压增高为主要特征(收缩压140mmHg,舒张压90mm……04!亚洲杯冠军连遭惨案,4场狂丢14球,踢不过欧洲3流队北京时间10月13日凌晨,国际比赛日迎来一场友谊赛,亚洲杯冠军卡塔尔队主场04惨败爱尔兰队,连续2场大比分输球。卡塔尔是明年世界杯东道主,接连在欧洲区输球,看来白花钱锻炼队伍了……炸裂!曝火箭3换1挖超级状元,火箭新三少掀青春风暴火箭酝酿趁火打劫。据美媒体报道,火箭有意用伍德2022年首轮签2024年首轮签,3换1去追求太阳状元艾顿。太阳上赛季能够打进总决赛,艾顿功不可没。在太阳冲出西……微软可能疯了!不符合条件的Win10,被全屏推荐升级Win1小编也是没想过,在这个Win11推广不怎么顺利的时候,微软这样做。它可能是疯了!没错,微软现在以相当激进的方式,推动用户设备升级Win11系统。之前,已经向用……电脑使用常识,禁用高危端口PortDetails:1TCPPortServiceMultiplexer2ManagementUtility3CompressionProcess5RemoteJobEnt……原来提肛运动的好处这么多,一起来科普一下吧养生是人们经常挂在嘴边的一句话,不管是在生活中,还是在工作中,很多人都喜欢用一些养生的小妙招来保养身体,比如泡脚、艾灸、喝枸杞水等等。今天要给大家介绍的是提肛运动,可能有……高收益,流动性好,还安全?马甲理财流行意味着什么市面上涌现出一批类似存款性质的理财产品。(视觉中国图)现在的投资者既要收益高,又要流动性,还要安全,哪里去给他们找这样的资产啊。陈颖对南方周末记者说。她在上海一家股份制银……好歌推荐《FlowerDance》《FlowerDance》,中文名花之舞,这是一首纯音乐,曲子是由钢琴和架子鼓结合而成。钢琴的柔美和鼓声的震撼完美结合,不和谐中带着和谐。它没有……欧文实在狠,继续向独行侠逼宫,他还是想去湖人队,东契奇不爽了时间来到3月,NBA常规赛持续鏖战,西部的竞争非常激烈。稍早之前,湖人队对外宣布,浓眉哥和詹姆斯一起缺席湖人队VS雷霆队的比赛。与此同时,独行侠队的情况也不乐观,欧文加盟之后,……苹果开始收割老用户?iPhone这一服务全系涨价,人民网点赞不得不说,这两年苹果的吃相确实越来越难看了,先是以环保为由取消附赠充电器,倒逼用户花费更多的成本去购买,前段时间苹果在新一代iPhone上使用的USBC接口也被曝出猫腻,苹果对……
推着脑病儿子跑马带爱犬照片参赛今年的深圳马拉松好有爱!2月19日上午7时30分,阔别三年的2022深圳马拉松鸣枪开跑。9时40分许,选手何杰以2小时13分29秒的成绩,摘得全马男子组冠军,这也是深马首次由中国选手夺得冠军。……足协新掌门人选出炉竞争激烈最终会花落谁家随着中国足协主席陈戊源的被抓,中国足协主席的位置也暂时空缺,甚至变成了烫手山芋,想想在几年前,这个位置可是香饽饽,但随着国家对足协的一系列整改,抓的抓,判的判,瞬间让这个位置变……贝林厄姆判点令人失望重罚更是笑话提前进禁区太正常了欧冠18决赛次回合,切尔西主场20战胜多特蒙德,总比分21逆转晋级。赛后,贝林厄姆接受了BT体育的采访。我不知道沃尔夫还能把他的手藏哪儿去。点球的判罚就令人失望,而之后的……云南有哪些值得一去旅游景点?我推荐这些地方过年期间正好去了一次云南,不得不感叹,云南的旅游资源真的太丰富了!几乎每个市地区都有好玩的地方。忍不住分享几个我自己去过的、感觉值得一去的地方。因为景点比较多,所以……微软为Windows加入iMessage支援微软今天宣布将在Windows11上为PhoneLink应用程式加入iPhone支援。这款应用程式允许iPhone用户在PC上进行通话、发送和接收iMessage及SMS,并直……A股明日大盘将继续下跌!明天(2月16日)大盘走势分析预判今日大盘高开震荡走低,截止到收盘为止,上证指数下跌0。39。虽然大盘今天跌了,但是这种跌幅还远远不够,不要认为今天大盘跌的不多,就以为这里跌不下去。什么叫温水煮青蛙?就是刚开始……摄影133期拍少女写真,信任是关键为何越来越多的人喜欢上了少女感写真?其实更多是一种少女情怀。随着年纪的增长,越来越开始怀念青春,回望青春岁月走过的痕迹;无论男女,到了一定的年纪,都不得不正视自己的老去。而青春……冠军献礼中国新年全国人民!中国冰壶队逆转战胜韩国,夺美国大冬当地时间1月22日,在美国普莱西德湖举行的第31届世界大学生冬季运动会女子冰壶决赛中,中国队在开局不利的逆境下,最终以6比4战胜韩国队。这是中国代表团在本届大冬会上获得的首枚金……一个人有多假,就有多热情如果讨厌一个人,但是因为这个人身上有利可图而热情,这个叫虚伪;如果讨厌一个人又无利可图,但出于一贯的家教和处事原则而热情,这个叫会做人。有些人,认识你十分钟,表现出来的好……修复现场化石开口说话原来恐龙也会得颈椎病云南禄丰恐龙化石科考进行中央视新闻独家走进化石修复现场见证恐龙真容重现的过程看恐龙化石的重生之旅恐龙化石科考工作第二天在1号发掘现场出土的恐龙化石……剑网1归来代言人赵文卓披荆斩棘收割人气后如何带盐近日,由西山居与盛趣游戏联合发行的《剑网1:归来》,正式公布其游戏代言人赵文卓。赵文卓将通过何种代言方式与游戏深度绑定,成为玩家热烈讨论的话题焦点。从目前玩家和粉丝的猜想来看,……信息化建设服务平台协办2021第十一届航空航天信息化建设合作3月31日,由中国信息产业商会主办,中国信息产业商会人工智能分会、信息化建设服务平台共同承办的2021第十一届航空航天信息化建设合作峰会在京隆重召开。峰会以新时代、新征程、新发……
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网