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

江苏网站建设网站排名优化网络安全培训机构排名

江苏网站建设网站排名优化,网络安全培训机构排名,直播软件的app,漯河专业做网站的公司文章目录 一、 身份认证Demo1、创建工程2、代码编写2.1、Controller2.2、Html2.3、application.properties配置 3、启动项目并访问 二、Spring Security 默认做了什么二、底层原理1.概述2.FiltersDelegatingFilterProxyFilterChainProxySecurityFilterChainSecurity Filters 三… 文章目录 一、 身份认证Demo1、创建工程2、代码编写2.1、Controller2.2、Html2.3、application.properties配置 3、启动项目并访问 二、Spring Security 默认做了什么二、底层原理1.概述2.FiltersDelegatingFilterProxyFilterChainProxySecurityFilterChainSecurity Filters 三、程序的启动和运行DefaultSecurityFilterChainSecurityProperties 总结 一、 身份认证Demo 1、创建工程 下载完成后使用idea打开即可。 2、代码编写 2.1、Controller package com.security.demo.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping;Controller public class IndexController {GetMapping(/)public String index(){return index;} } 2.2、Html !DOCTYPE html html xmlns:thhttps://www.thymeleaf.org langen headmeta charsetUTF-8titlehello Security/title /head bodyh1Hello Security/h1a th:href{/logout}Log Out/a /body /html2.3、application.properties配置 spring.application.namesecurity-demo server.servlet.context-path/demo spring.security.user.nameadmin spring.security.user.password1233、启动项目并访问 二、Spring Security 默认做了什么 保护应用程序URL,要求对应用程序的任何交互进行身份验证。程序启动时生成一个默认用户“user。生成一个默认的随机密码并将此密码记录在控制台上。生成默认的登录表单和注销页面。提供基于表单的登录和注销流程。对于Web请求重定向到登录页面对于服务请求返回401未经授权。处理跨站请求伪造(CSRF)攻击。处理会话劫持攻击。写入Strict-Transport-Security以确保HTTPS。写入X-Content-Type-Options以处理嗅探攻击。写入Cache Control头来保护经过身份验证的资源。写入X-Frame-Options以处理点击劫持攻击。 二、底层原理 1.概述 Spring Security 之所以默认帮助我们做了那么多事情它的底层原理是传统的Servlet过滤器。 2.Filters DelegatingFilterProxy Servlet 容器允许Filter使用自己的标准注册实例但它不知道Spring定义的Bean。而DelegatingFilterProxy可以获取注册为Spring Bean的Filter。DelegatingFilterProxy通过标准 Servlet 容器机制进行注册但将所有工作委托给实现Filter. DelegatingFilterProxy伪代码 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) {//延迟获取注册为Spring Bean的Filter Filter delegate getFilterBean(someBeanName);//将工作委托给Spring Beandelegate.doFilter(request, response); }FilterChainProxy Spring Security 的 Servlet 支持包含在FilterChainProxy。FilterChainProxy是 Spring Security 提供的特殊功能Filter允许Filter通过委托给SecurityFilterChain许多实例。 由于FilterChainProxy是一个 Bean因此它通常包装在DelegatingFilterProxy中。 SecurityFilterChain FilterChainProxy使用SecurityFilterChain来确定应该为当前请求调用哪个Spring -SecurityFilter实例。 SecurityFilterChain中的安全过滤器通常是bean但它们是在FilterChainProxy而不是DelegatingFilterProxy中注册的。FilterChainProxy为直接注册Servlet容器或DelegatingFilterProxy提供了许多优点。 首先它为Spring Security的所有Servlet支持提供了一个起点。因此如果您试图对Spring Security的Servlet支持进行故障排除那么在FilterChainProxy中添加一个调试点是一个很好的开始。 其次由于FilterChainProxy是Spring Security使用的核心它可以执行非可选的任务。例如它清除SecurityContext以避免内存泄漏。 它还应用Spring Security的HttpFirewall来保护应用程序免受某些类型的攻击。 此外它在确定何时调用SecurityFilterChain方面提供了更大的灵活性。 在Servlet容器中仅根据URL调用Filter实例。然而FilterChainProxy可以通过使用RequestMatcher接口基于HttpServletRequest中的任何内容来确定调用。 在Multiple SecurityFilterChain图中FilterChainProxy决定应该使用哪个SecurityFilterChain。 只调用第一个匹配的SecurityFilterChain。 如果请求/api/messages/的URL它首先匹配/api/**的SecurityFilterChaing模式因此只有SecurityFilterChaing被调用即使它也匹配 如果请求/messages/的URL它与/api/**的SecurityFilterChain模式不匹配因此FilterChainProxy继续尝试每个SecurityFilterChain。 假设没有其他SecurityFilterChain实例匹配则调用SecurityFilterChain。 注意SecurityFilterChaing只配置了三个安全过滤器实例。 然而SecurityFilterChain配置了四个安全过滤器实例。 需要注意的是每个SecurityFilterChain都可以是唯一的并且可以单独配置。 事实上如果应用程序希望Spring security忽略某些请求SecurityFilterChain可能没有安全过滤器实例。 Security Filters 使用SecurityFilterChain api将安全过滤器插入到FilterChainProxy中。 这些过滤器可用于许多不同的目的如身份验证、授权、漏洞利用保护等。 过滤器按照特定的顺序执行以确保在正确的时间调用它们例如应该在执行授权的过滤器之前调用执行身份验证的过滤器。 通常不需要知道Spring Security过滤器的顺序。然而有时知道顺序是有益的如果你想知道它们你可以检查FilterOrderRegistration代码。 三、程序的启动和运行 DefaultSecurityFilterChain SecurityFilterChain接口的实现加载了默认的16个Filter。 SecurityProperties 初始化用户名密码 spring.security.user.nameadmin spring.security.user.password123总结 DelegatingFilterProxy作为过滤器的代理帮助我们调用spring容器中所有注册的过滤器FilterChainProxy帮助我们管理多个不同的过滤器链SecurityFilterChain。SecurityFilterChain帮助我们处理复杂的业务逻辑通过匹配不同的url由不同的过滤器链的组合来接收从而由不同的过滤器来完成相应的功能。
http://www.pierceye.com/news/82637/

相关文章:

  • 河北特定网站建设推荐h5怎么制作下一页
  • 网络优化seo薪酬semseo名词解释
  • asp.net网站开发与项目实战为网站制定一个推广计划
  • 做好网站优化的方法有哪些?厦门住房和城乡建设局网站
  • 鹰潭门户网站建设费用如何降低网站跳出率
  • wordpress导航栏下拉菜单代码网站搜索引擎优化怎么做
  • 厦门市建设协会网站wordpress cron
  • 建筑资质查询官方网站html免费模板网站
  • 沧州市做网站做翻译 网站吗
  • 鲜花网站数据库建设分析做网站需要有服务器
  • 网站建设邮箱免费自助建站wordpress建立商城
  • html网站开发心得体会app推广员是做什么的
  • 企业品牌网站建设方案域名价格查询评估
  • 2019做seo网站wordpress 空间推荐
  • 自己做的表白网站网站建设可行性研究报告范文
  • 做内贸哪个网站找客户seo技术培训江门
  • 网站的意义十堰市建设工程管理处网站
  • 网站公司不给ftp荆门市住房和城乡建设局网站
  • 自己如何高效有力的维护一个网站公司网上注册系统
  • 无锡网站程序wordpress 关键词链接
  • 网站跳转qqwordpress运行速度慢
  • 网站后台显示不了钟表商城网站建设方案
  • 鞍山怎么样做一个自己的网站姓氏头像在线制作免费生成图片
  • 做网站应该做到那几点南京建设公司网站
  • 如何优化推广网站ps怎么做网站首页
  • 百度如何做网站html表单提交中文乱码
  • 网站建设经验做个人网站到哪里做
  • 网站建设及维护机2015个人备案网站论坛
  • 徐东网站建设建设银行网址官方网址
  • 网站建设互联网加做自己的网站好还是博客好