java - 在 Spring 安全性中允许除一个之外的所有 URL

标签 java spring spring-security

我只想保护一个 URL,同时允许匿名访问其他所有内容。

我在互联网上看到的 Java 配置示例似乎都表明您需要明确地 permitAll 每个 URL,并为需要的 URL 提供适当的 hasRole被保护。就我而言,这会创建一个非常笨拙的 java 代码,每次我向应用程序添加新 URL 时都会修改它。有没有我可以使用的更简单的 java 配置。

还要注意,在我的情况下,我保护的 URL 是一个子资源,比如 employee/me,我想要 employee/list 等., 可以匿名访问。

最佳答案

如果您使用 Java 配置,您可以在 configure 方法中使用类似以下内容:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
            .authorizeRequests()
                .antMatchers("/employee/me").authenticated()
                .antMatchers("/**").permitAll();
}

关于java - 在 Spring 安全性中允许除一个之外的所有 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36382970/

相关文章:

java - Spring 安全: Multiple HTTP Config not working

java - Hibernate 4 复合 id NonUniqueObjectException

spring - 让 Spring 意识到 Jersey 过滤器

java - 在 Tomcat7 上部署 Web 应用程序时出现空指针异常

java - 用于合并 java bean 的工具

java - Maven Spring Boot 应用程序卡住

java - Webfont 提供在表单帖子上下载

java - Spring OAuth2 为每个请求生成访问 token 到 token 端点

JavaFX Applet 网页刷新和关闭通知

java - 使用 hibernate 连接数据库时出错