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

网站后端做留言板功能环球影城有存放行李的吗

网站后端做留言板功能,环球影城有存放行李的吗,哪些平台属于c2c模式,网站建设前期分析的内容Anonymous Authentication Overview 通常认为采用“默认拒绝”立场是良好的安全实践#xff0c;您明确指定允许的内容并拒绝其他所有内容。定义未经身份验证的用户可以访问的内容是类似的情况#xff0c;特别是对于 Web 应用程序。许多网站要求用户必须经过身份验证才能访问…Anonymous Authentication Overview 通常认为采用“默认拒绝”立场是良好的安全实践您明确指定允许的内容并拒绝其他所有内容。定义未经身份验证的用户可以访问的内容是类似的情况特别是对于 Web 应用程序。许多网站要求用户必须经过身份验证才能访问除少数 URL例如主页和登录页面之外的内容。在这种情况下最简单的方法是为这些特定 URL 定义访问配置属性而不是为每个受保护资源定义。换句话说有时默认要求 ROLE_SOMETHING 并只允许对此规则的某些例外情况是很好的例如应用程序的登录、注销和主页。您还可以将这些页面完全从过滤器链中省略从而绕过访问控制检查但这可能出于其他原因而不希望这样做尤其是如果页面对于已认证用户的行为不同的话。 这就是我们所说的匿名身份验证。请注意一个“匿名认证”的用户和一个未认证的用户之间在概念上没有真正的区别。Spring Security 的匿名身份验证只是为您提供了一个更方便的方式来配置您的访问控制属性。对 servlet API 的调用例如 getCallerPrincipal仍然返回 null即使实际上 SecurityContextHolder 中有一个匿名身份验证对象。 在其它情况下匿名身份验证也很有用比如当一个审计拦截器查询 SecurityContextHolder 以识别哪个主体负责某个操作时。如果类知道 SecurityContextHolder 总是包含一个 Authentication 对象而永远不会包含 null那么这些类可以被编写得更健壮。 Configuration 当您使用 HTTP 配置时Spring Security 3.0 中引入会自动提供匿名身份验证支持。您可以使用 元素来自定义或禁用它。除非您使用传统的 bean 配置否则您无需配置这里描述的 beans。 三个类共同提供匿名身份验证功能。AnonymousAuthenticationToken 是 Authentication 的一个实现它存储适用于匿名主体的 GrantedAuthority 实例。有一个相应的 AnonymousAuthenticationProvider它被链入 ProviderManager以便接受 AnonymousAuthenticationToken 实例。最后一个 AnonymousAuthenticationFilter 被链在正常身份验证机制之后并自动向 SecurityContextHolder 添加一个 AnonymousAuthenticationToken如果那里没有现有的 Authentication。过滤器和身份验证提供者定义如下 bean idanonymousAuthFilterclassorg.springframework.security.web.authentication.AnonymousAuthenticationFilter property namekey valuefoobar/ property nameuserAttribute valueanonymousUser,ROLE_ANONYMOUS/ /beanbean idanonymousAuthenticationProviderclassorg.springframework.security.authentication.AnonymousAuthenticationProvider property namekey valuefoobar/ /bean密钥在过滤器和身份验证提供者之间共享以便前者创建的令牌可以被后者接受。 在这里使用 key 属性不应被视为提供了任何真正的安全性。它仅仅是一种簿记练习。如果您在可能由认证客户端构建 Authentication 对象的场景中例如使用 RMI 调用共享包含 AnonymousAuthenticationProvider 的 ProviderManager那么恶意客户端可以提交它自己创建的 AnonymousAuthenticationToken带有选择的用户名和权限列表。如果密钥可以被猜测或者被发现那么令牌将被匿名提供者接受。这对于正常使用来说并不是问题。然而如果您使用 RMI您应该使用一个自定义的 ProviderManager该提供者管理器省略了匿名提供者而不是共享您用于 HTTP 认证机制的提供者管理器。 userAttribute 以 usernameInTheAuthenticationToken,grantedAuthority[,grantedAuthority] 的形式表示。InMemoryDaoImpl 的 userMap 属性在等号后面使用相同的语法。 如前所述匿名身份验证的好处是所有 URI 模式都可以应用安全性如下例所示 bean idfilterSecurityInterceptorclassorg.springframework.security.web.access.intercept.FilterSecurityInterceptor property nameauthenticationManager refauthenticationManager/ property nameaccessDecisionManager refhttpRequestAccessDecisionManager/ property namesecurityMetadatasecurity:filter-security-metadata-sourcesecurity:intercept-url pattern/index.jsp accessROLE_ANONYMOUS,ROLE_USER/security:intercept-url pattern/hello.htm accessROLE_ANONYMOUS,ROLE_USER/security:intercept-url pattern/logoff.jsp accessROLE_ANONYMOUS,ROLE_USER/security:intercept-url pattern/login.jsp accessROLE_ANONYMOUS,ROLE_USER/security:intercept-url pattern/** accessROLE_USER//security:filter-security-metadata-source /property /beanAuthenticationTrustResolver 匿名身份验证讨论的最后一部分是 AuthenticationTrustResolver 接口以及其相应的 AuthenticationTrustResolverImpl 实现。这个接口提供了一个 isAnonymous(Authentication) 方法允许感兴趣的类考虑到这种特殊类型的认证状态。ExceptionTranslationFilter 在处理 AccessDeniedException 实例时使用这个接口。如果抛出了 AccessDeniedException 并且认证是匿名类型的过滤器不会抛出 403禁止响应而是启动 AuthenticationEntryPoint以便主体可以正确地进行认证。这是一个必要的区别。否则主体总是被视为“已认证”并且永远不会有机会通过表单、基本、摘要或其它一些正常认证机制登录。 我们经常看到在早期的拦截器配置中ROLE_ANONYMOUS 属性被替换为 IS_AUTHENTICATED_ANONYMOUSLY这在定义访问控制时实际上是相同的东西。这是使用 AuthenticatedVoter 的一个例子我们在授权章节中会介绍它。它使用一个 AuthenticationTrustResolver 来处理这个特定的配置属性并授予匿名用户访问权限。AuthenticatedVoter 方法更强大因为它可以让您区分匿名、记住我和完全认证的用户。然而如果您不需要这个功能您可以坚持使用 ROLE_ANONYMOUS它由 Spring Security 的标准 RoleVoter 处理。 Getting Anonymous Authentications with Spring MVC SpringMVC 使用自己的参数解析器解析主体类型的参数。 这意味着像这样的构造: GetMapping(/) public String method(Authentication authentication) {if (authentication instanceof AnonymousAuthenticationToken) {return anonymous;} else {return not anonymous;} }即使对于匿名请求也将始终返回“非匿名”。原因是 Spring MVC 使用 HttpServletRequest#getPrincipal 解析参数而当请求是匿名时该参数为 null。 如果您希望获得匿名请求中的身份验证请改为使用CurrentSecurityContext: Use CurrentSecurityContext for Anonymous requests GetMapping(/) public String method(CurrentSecurityContext SecurityContext context) {return context.getAuthentication().getName(); }
http://www.hkea.cn/news/14283389/

相关文章:

  • 淄博市网站云平台装企工长网站开发
  • 深圳建网站哪个好网站群 主要功能
  • 廊坊网站建设方案wordpress社交登录
  • 罗湖商城网站设计公司泰安网站建设开发公司
  • 响应式企业网站制作公司成都专业的网站建站公司
  • 招远网站华为认证网络工程师怎么考
  • 南宁网站建设平台穿搭速递html网页制作代码
  • 物流网站免费源码外贸网站的特点
  • 有什么网站可以做logo赚钱在哪里做网站
  • 南宁旅游网站建设杭州手机网站建设公司
  • 帝国cms做中英文网站福州百度快速优化
  • qq群推广用什么网站好1m带宽做网站速度怎么样
  • 能先做网站再绑定域名吗企业管理咨询服务是什么
  • 做网站字体用什么格式网站开发访客ip
  • 高古楼网站找活做品牌标志设计的风格包括
  • 电子商务网站设计流程wordpress首页设置描述在什么位置
  • 网站整体迁移该怎么做iis添加网站建设中
  • 网站被k是什么意思什么是网站空间
  • 卓手机建网站域名解析暂时失败
  • php网站建设公司湛江门户网站
  • 山东德州网站建设哪家最好广告效果图用什么软件做
  • 运动服饰网站建设目的做么户网站怎么去前置审批
  • .net程序员网站开发工程师做架构图简单的网站
  • 营销型网站建设申请域名分类信息网发布大全
  • 微信点赞网站怎么做angularjs做的网站有哪些
  • 美食网站开发报告家装公司运营模式
  • 湖南营销类网站设计附近哪里有广告公司
  • 关于电商网站建设与管理的书籍深圳设计网站哪个好
  • 珠海集团网站建设报价收录优美图片官网
  • 山东网站备案网站wordpress -editor