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

vue 做pc网站可以吗哪个网站买域名便宜

vue 做pc网站可以吗,哪个网站买域名便宜,株洲做网站公司,中小企业网站制作哪家好四、SecurityFilterChain 在Serlvet中#xff0c;一组Security Filter组成SecurityFilterChain#xff0c;SecurityFilterChain的概念就比较好理解#xff0c;是Spring Security 提供的过滤器链#xff0c;用于管理本身所有的过滤器#xff0c;在上面的流程图中已有说明。…四、SecurityFilterChain 在Serlvet中一组Security Filter组成SecurityFilterChainSecurityFilterChain的概念就比较好理解是Spring Security 提供的过滤器链用于管理本身所有的过滤器在上面的流程图中已有说明。 SecurityFilterChain可以被FilterChainProxy用来确定当前请求应该调用哪些Spring Security Filter实例。 在整个流程中 FilterchainProxy 决定应该使用哪个SecurityFilterChain只有第一个匹配的 SecurityFilterChain被调用。如果请求的URL不匹配则继续尝试每个SecurityFilterChain 。 比如在下图中如果请求的URL是 /api/messages/那么会匹配到右侧上方的 SecurityFilterChain0 如果都不匹配则会调用支持 /*的 SecurityFilterChainn 。 五、Security Filters Spring Security 中的过滤器是通过 SecurityFilterChain API 插入FilteChainProxy中的Filter实例的顺序非常重要。 Spring Security 中的过滤器按照如下所示 (后续会详细介绍) ForceEagerSessionCreationFilterChannelProcessingFilterWebAsyncManagerlntegrationFilterSecurityContextPersistenceFilterHeaderWriterFilterCorsFilterCsrfFilterLogoutFilterOAuth2AuthorizationRequestRedirectFilterSaml2WebSsoAuthenticationRequestFilterX509AuthenticationFilterAbstractPreAuthenticatedProcessingFilterCasAuthenticationFilterOAuth2LoginAuthenticationFilterSaml2WebSsoAuthenticationFilterUsernamePasswordAuthenticationFilterDefaultLoginPageGeneratingFilterDefaultLogoutPageGeneratingFilterConcurrentSessionFilterDigestAuthenticationFilterBearerTokenAuthenticationFilterBasicAuthenticationFilterRequestCacheAwareFilterSecurityContextHolderAwareRequestFilterJaasApilntegrationFilterRememberMeAuthenticationFilterAnonymousAuthenticationFilterOAuth2AuthorizationCodeGrantFilterSessionManagementFilterExceptionTranslationFilterFilterSecuritylnterceptorSwitchUserFilter 5.1 打印Security Filter 可通过以下配置 EnableWebSecurity(debug true)打印请求URL匹配SecurityFilterChain中的Security Filter信息。 5.2 将自定义Filter添加到SecurityFilterChain 大多数情况下默认Security Filter足以为应用程序的安全性要求。 但是有时您可能希望将自定义Filter添加到SecurityFilterChain中。 一个简单的自定义Filter代码示例 public class TenantFilter implements Filter {Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {HttpServletRequest request (HttpServletRequest) servletRequest;HttpServletResponse response (HttpServletResponse) servletResponse;String tenantId request.getHeader(X-Tenant-Id); boolean hasAccess isUserAllowed(tenantId); if (hasAccess) {filterChain.doFilter(request, response); return;}throw new AccessDeniedException(Access denied); } }上面的示例代码执行以下操作 从请求头中获取租户ID。检查当前用户是否有权访问租户ID。如果用户具有访问权限则调用链中的其余筛选器。如果用户没有访问权限则抛出AccessDeniedException 将其添加到SecurityFilterChain代码示例 Configuration EnableWebSecurity(debug true) public class SecurityConfig {BeanOrderpublic SecurityFilterChain defaultSecurityFilterChain(HttpSecurity http)throws Exception {http.formLogin(Customizer.withDefaults());http.passwordManagement(Customizer.withDefaults());// 将过滤器添加在AuthorizationFilter之前http.addFilterBefore(new TenantFilter(), AuthorizationFilter.class);return http.build();} }将Filter使用Component注解声明为 Spring Bean 时要特别注意。因为 Spring Boot会自动将其注册到容器中。 这可能会导致过滤器被调用两次一次由容器调用一次由 Spring Security 调用并且顺序不同。 如果您仍然想将将Filter声明为Spring bean以利用依赖注入并避免重复调用您可以通过FilterRegistrationBean并将其Enabled属性设置为false 来实现。 Bean public FilterRegistrationBeanTenantFilter tenantFilterRegistration(TenantFilter filter) {FilterRegistrationBeanTenantFilter registration new FilterRegistrationBean(filter);registration.setEnabled(false);return registration; }六、处理安全异常 ExceptionTranslationFilter 允许将 AccessDeniedException 和 AuthenticationException 转换为 HTTP 响应。 ExceptionTranslationFilter作为Security Filter之一插入到 FilterChainProxy 中。 下图显示了与其他组件的关系。 ①首先调用应用程序的其余部分正常继续处理请求。ExceptionTranslationFilterFilterChain.doFilter(request, response) ②如果用户未通过身份验证或者是开启身份验证抛出AuthenticationException异常 SecurityContextHolder被清除。请求缓存以便在身份验证成功后可用于重播原始请求。HttpServletRequest用于从客户端请求凭据。 例如它可能会重定向到登录页面或发送请求头。AuthenticationEntryPoint、WWW-Authenticate ③否则拒绝访问 调用AccessDeniedHandler处理被拒绝的访问。 七、身份验证间请求缓存 如处理安全异常中所示当请求没有身份验证并且针对需要身份验证的资源时需要保存身份验证资源的请求缓存以便在身份验证成功后重新请求。 在 Spring Security中这是通过使用RequestCache实现保存来完成的。 7.1 请求缓存 RequestCacheAwareFilter用于保存RequestCache。当用户成功进行身份验证时将用于重播原始请求。 一个简单的仅当参数存在时才检查已保存的请求代码示例 Bean DefaultSecurityFilterChain defaultSecurityFilterChain(HttpSecurity http) throws Exception {HttpSessionRequestCache requestCache new HttpSessionRequestCache();requestCache.setMatchingRequestParameterName(continue);http// ....requestCache((cache) - cache.requestCache(requestCache));return http.build(); }7.2 阻止保存请求 您可能希望不要在会话中存储用户未经身份验证的请求或您始终希望将用户重定向到主页而不是他们在登录前尝试访问的页面。为此可以使用NullRequestCache 实现。 Bean SecurityFilterChain springSecurity(HttpSecurity http) throws Exception {RequestCache nullRequestCache new NullRequestCache();http// ....requestCache((cache) - cache.requestCache(nullRequestCache));return http.build(); }
http://www.zqtcl.cn/news/350825/

相关文章:

  • 做销售网站那家好金华住房与城乡建设部网站
  • apple私人免费网站怎么下载无锡网站建设技术
  • 移动应用网站开发阶段作业信息型网站有哪些
  • 监控直播网站开发网站建设与管理总结
  • 青岛城阳网站设计免费网站成品
  • 做服装外贸的网站ghost wordpress
  • 建设银行的网站为什么这么卡网页设计用啥软件
  • 电子商务 网站开发南阳网网站建设
  • 中小型企业网络拓扑图及配置株洲seo网站推广
  • 中国镇江网站如何搭建自己的网址
  • wordpress 自动广告seo搜索引擎优化原理
  • 区块链网站用vue.js做怎么样长春站建筑
  • 集团公司门户网站建设adsl做网站
  • 山东建设监理协会官方网站茂名建站公司模板
  • 烟台做网站案例创业网站推广怎么做
  • php项目网站建设方案书专做药材的网站有哪些
  • 网站表单模板营销型网站建设的5大技巧
  • html手机版网站网站备案后怎么做实名认证
  • 第五冶金建设公司职工大学网站大连工业
  • 网站的基础服务html网站地图生成器
  • 网站开发学徒工作如何设计师培训哪家好
  • 做网站多少钱西宁君博正规株洲在线论坛招聘求职
  • 抚州营销型网站建设殡葬类网站建设
  • 公司网站制作汇报会合肥品牌设计
  • 网站推广策划书怎么说网站建设公司中企动力强
  • php网站源码架构阿里巴巴运营技巧
  • 如何帮助网站吸引流量宁波市网站集约化建设通知
  • 从域名角度看网站建设注意事项河北邯郸seo网站建设网站优化
  • 网站推广策划评估工具7wordpress菜单新连接
  • 网站创建asp电影网站源码