当前位置: 首页 > news >正文

怎样建立一个企业网站长沙柒零叁网站建设

怎样建立一个企业网站,长沙柒零叁网站建设,什么是电商,如何做好网站外链文章目录 0.前言漏洞Spring Security介绍 1.参考文档2.基础介绍3.解决方案3.1. 升级版本3.2. 临时替代方案 4.Spring Security使用教程简单代码示例 0.前言 背景#xff1a;公司项目扫描到 Spring-security 组件 注销后未正确保存空的SecurityContext CVE-2023-20862 漏洞 高… 文章目录 0.前言漏洞Spring Security介绍 1.参考文档2.基础介绍3.解决方案3.1. 升级版本3.2. 临时替代方案 4.Spring Security使用教程简单代码示例 0.前言 背景公司项目扫描到 Spring-security 组件 注销后未正确保存空的SecurityContext CVE-2023-20862 漏洞 高风险 | 2023年4月17日 | CVE-2023-20862 在Spring Security中5.7.x版本之前的5.7.8版本5.8.x版本之前的5.8.3版本以及6.0.x版本之前的6.0.3版本如果使用序列化版本注销支持不会正确清理安全上下文。此外无法将空的安全上下文显式保存到HttpSessionSecurityContextRepository。这种漏洞可能会使用户在注销后仍然保持认证状态。 Spring Security介绍 Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架。它是保护基于Spring的应用程序的实际标准。Spring Security提供了一套完整的安全性解决方案是构建安全性强的企业级应用程序的理想选择。它的模块化和可扩展性使得开发者能够满足各种各样的安全需求从简单的应用级别的安全到复杂的方法级别的安全Spring Security都能够提供支持。Spring Security对于所有种类的身份验证机制提供了很好的支持包括内存存储的用户列表、JDBC基于数据库的认证、LDAP认证、表单认证、CAS等。它不仅支持一大堆认证机制还支持很多种权限控制的方式如基于角色的访问控制、访问控制列表ACL等。 正因为它是专门搞权限验证授权等安全验证功能在它上面的漏洞简直层出不穷防不胜防。所以最近又发布了一个它的漏洞 1.参考文档 CVE 官方网站 https://www.cve.org/CVERecord?idCVE-2023-20862spring官方网站 https://spring.io/security/cve-2023-20862 https://docs.spring.io/spring-security/reference/5.8/migration/servlet/session-management.html#_require_explicit_saving_of_securitycontextrepositoryhttps://docs.spring.io/spring-security/reference/servlet/authentication/session-management.html#store-authentication-manuallyhttps://docs.spring.io/spring-security/reference/5.8.3/servlet/authentication/session-management.html#properly-clearing-authentication 2.基础介绍 在Spring Security中5.7.x版本之前的5.7.8版本5.8.x版本之前的5.8.3版本以及6.0.x版本之前的6.0.3版本如果使用序列化版本注销支持不会正确清理安全上下文。此外无法将空的安全上下文显式保存到HttpSessionSecurityContextRepository。这种漏洞可能会使用户在注销后仍然保持认证状态。 受影响的Spring产品和版本 Spring Security 6.0.0至6.0.2 5.8.0至5.8.2 5.7.0至5.7.7 3.解决方案 3.1. 升级版本 受影响版本的用户应该应用以下缓解。5.7.x的用户应该升级到5.7.8。5.8.x的用户应该升级到5.8.3。6.0.x的用户应该升级到6.0.3。没有其他必要的步骤。已修复此问题的版本包括 已修复此问题的版本 Spring Security 版本 5.7.8 5.8.3 6.0.33.2. 临时替代方案 正在使用SecurityContextHolderFilter或requireExplicitSave(true)并且正在使用Spring Security的注销支持与序列化会话例如Spring Session和invalidateHttpSession(false)通过将一个空的SecurityContext保存到HttpSessionSecurityContextRepository来手动注销用户有一个不依赖HttpSession的自定义SecurityContextRepository 4.Spring Security使用教程简单代码示例 添加Spring Security依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-security/artifactId /dependency创建Spring Security配置类 创建 SecurityConfig的Java类这个类需要继承WebSecurityConfigurerAdapter类并覆盖其configure方法来实现安全配置。也需要配置一个PasswordEncoder bean来处理密码的编码。 Configuration EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter {Overrideprotected void configure(HttpSecurity http) throws Exception {http.authorizeRequests().anyRequest().authenticated().and().formLogin().loginPage(/login).permitAll().and().httpBasic();}Autowiredpublic void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {auth.inMemoryAuthentication().passwordEncoder(passwordEncoder()).withUser(user).password(passwordEncoder().encode(password)).roles(USER);}Beanpublic PasswordEncoder passwordEncoder() {return new BCryptPasswordEncoder();} }配置指定了所有的请求必须经过身份验证。它还指定一个自定义的登录页面这个页面对所有用户都是可用的。最后它配置了一个在内存中的用户存储包含一个用户名为user密码为password的用户。 创建登录页面 在src/main/resources/templates目录下创建一个名为login.html的文件。此文件的内容可以根据的需求进行定制 !DOCTYPE html html xmlns:thhttp://www.thymeleaf.org headtitleLogin/title /head body form th:action{/login} methodpostdivinput typetext nameusername placeholderUsername//divdivinput typepassword namepassword placeholderPassword//divdivinput typesubmit valueSign In//div /form /body /html在控制器中使用认证用户信息 在需要使用认证用户信息的地方可以使用AuthenticationPrincipal注解来获取当前认证用户 GetMapping(/hello) public String hello(AuthenticationPrincipal User user) {return Hello, user.getUsername(); }
http://www.hkea.cn/news/14551114/

相关文章:

  • 网站建设百灵鸟企业网站素材
  • 长沙网站制作主要公司网店代运营被骗怎么追回
  • wordpress搬站换空间赣州市九一人才网手机版
  • 如何做好网站需求分析平板做网站服务器
  • 开发高端网站开发网络技术服务是干什么的
  • 深圳做分销网站建设光纤网络是哪个公司的
  • 新乡建设网站公司手机网站怎么做才适合优化
  • 网站做seo推广 s手机网站设计公司只选亿企邦
  • 制作一个学校门户网站泉州网站建站模板
  • 公司网站设计需要什么个人网站可以挂广告吗
  • 沈阳响应式网站建设sirna在线设计网站
  • 欧卡乐网站建设初期网站价值
  • 织梦网做网站过程猎头可以做单的网站
  • 网站管理系统怎么做淄博网站建设高端企业
  • seo网站快速排名外包wordpress 导出主题
  • 设计最简单的企业网站wordpress微博挂件
  • 忻州做网站饲料行业建设网站方案设计免费下载ppt
  • 一个网站成本公司注册地址怎么查
  • 璧山职教中心示范校建设网站注册公司100万实缴多少
  • 手表网站模板动漫网页设计图片
  • 网站的建设需要虚拟机吗致设计
  • 国家 住房城乡建设信用 网站温州网站推广效果
  • 做游戏网站教程动易网站首页错位
  • 徐州网站建设市场分析一个人开公司怎么注册
  • 郴州网站建设服务手机网站底部电话
  • 专门教ps的网站哈尔滨建站哪个好
  • 建设工程监理 精品课网站如何搜索关键词热度
  • 做网站手机版科技类网站怎么做
  • 个人网站 后台管理云南俊发建设集团网站
  • 培训前端网站开发媒体广告