Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何跳过控制器特定方法的spring身份验证_Java_Spring_Spring Mvc_Spring Security - Fatal编程技术网

Java 如何跳过控制器特定方法的spring身份验证

Java 如何跳过控制器特定方法的spring身份验证,java,spring,spring-mvc,spring-security,Java,Spring,Spring Mvc,Spring Security,如何在SpringMVC中跳过特定方法的身份验证。我的spring\u security.xml文件包含: <http auto-config="true" use-expressions="true"> <intercept-url pattern="/logout" access="permitAll"/> <intercept-url pattern="/login" access="permitAll"/> <

如何在SpringMVC中跳过特定方法的身份验证。我的
spring\u security.xml
文件包含:

<http auto-config="true" use-expressions="true">
      <intercept-url pattern="/logout" access="permitAll"/>
      <intercept-url pattern="/login" access="permitAll"/>
      <intercept-url pattern="/**" access="hasRole('ROLE_USER')"/>
      <logout logout-success-url="/logoutPage" logout-url="/logout" />
      <form-login authentication-failure-url="/login?auth=fail"
          login-page="/login"
          login-processing-url="/loginPage" 
          password-parameter="password"
          username-parameter="username"
      />
</http>
<global-method-security secured-annotations="enabled" pre-post-annotations="enabled" />

我用的东西不管用。谢谢。

你不能<代码>截取url在控制器注释之前进行评估

但是,您可以通过在xml中添加以下内容来解决此问题:



@PreAuthorize(“permitAll”)
没有任何意义,因为它基本上是禁止操作的。

spring security中有两个级别的安全性:

  • 拦截URL
    元素管理的基于URL的安全性
  • 基于方法的安全性主要通过
    预授权
    注释进行管理

您可以将两者混合使用,方法安全性可以用于非常精细的规则,特别是ACL,并且可以应用于服务或模型方法,但不能用于覆盖基于URL的限制。

尝试使用类似的方法

<http pattern="/data/info**" security="none"/>  

但是他们的注释不是可以用来代替xml定义的吗?因为我有很多方法需要
permitAll
你可以用注释代替xml,但是你不能用注释覆盖xml中定义的规则。
<http pattern="/data/info**" security="none"/>