java - Spring Boot中接受来自特定ip的请求

标签 java spring spring-boot server jboss

我引用本教程来限制jboss和Spring Boot应用程序中的某些IP。 http://www.mastertheboss.com/jboss-web/jbosswebserver/how-to-restrict-access-to-jboss-web-application-by-ip-or-host

但是教程尚未完成。我应该把这些代码放在哪里?还有其他方法可以做到这一点吗?

如果有人知道任何其他方法,请在此处提及。提前致谢。

最佳答案

在我看来,教程中提到的 Valve 是自定义嵌入到 Jboss 应用程序中的 tomcat 的方法。请注意,本教程确实很旧 - 从 2014 年开始,JBoss 可能从那时起就发生了变化。

我记得当时 JBoss 确实在内部包含了 Tomcat 来处理 Web 请求,所以可能有某种 Tomcat 的 server.xml

现在,还有其他方法:

  1. 将应用程序置于某些限制访问的代理后面。如果您的环境支持的话,这可能是最好的方法。

  2. 在应用程序内使用过滤器。您可以创建一个 Web 过滤器并将其注册到 Spring Boot 应用程序中,无论它是带有嵌入式服务器的 Jar 还是您计划在 JBoss 上部署的 WAR。这确实非常灵活,但另一方面它包含一些 java 编码,并且会消耗应用程序的一些资源。如果您的应用程序中没有 Spring Security 并且您不想引入 Spring Security,则可以使用此方法,否则请阅读 (3)。

  3. 类似于 2,但与 Spring Security 一起使用,内置过滤设施:here is how you can do that 。请注意,除了用于实现的实际 Java 代码之外,3 和 2 非常相似。

关于java - Spring Boot中接受来自特定ip的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60314074/

相关文章:

java - 不包含在正则表达式中

java - 如何在允许同时读取线程的同时同步 HashMap?

java - 在 Java 正则表达式中获取多个模式的重叠匹配

java - 使用 JDBC 模板的参数化 sql 查询

java - Spring Boot 2 - 在初始化 bean 之前做一些事情

java - 如何将 JSON (org.jooq.JSON) 转换为 Java 对象 (POJO)

java - 学习Java/Web小程序的推荐书籍

java - @RequestMapping未获取参数和值。Spring框架

java - 无法打开事务 : ConnectionWrapper is not visible from class loader 的 Hibernate session

java - 无法让 Proguard 混淆和 Spring Boot 一起工作