首页 > 解决方案 > 在 Spring Boot 中接受来自特定 ip 的请求

问题描述

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

但是教程并不完整。我应该把这些代码放在哪里?有没有其他方法可以做到这一点?

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

标签: javaspringspring-bootserverjboss

解决方案


我会通过以下方式解决这个问题:

  1. 如果接受连接的 IP 可能发生变化,我会配置像 nginx 这样的反向代理。这意味着如果 IP 地址发生更改,您不必重新部署或重新启动应用程序。有关如何配置的详细信息,请参阅本指南nginxhttps ://docs.nginx.com/nginx/admin-guide/security-controls/controlling-access-proxied-tcp/

  2. 否则我会参考这篇文章:https ://access.redhat.com/solutions/18412描述以下配置WEB-INF/jboss-web.xml

   <valve>
      <class-name>org.apache.catalina.valves.RemoteAddrValve</class-name>
      <param>
          <param-name>allow</param-name>
          <param-value>127.0.0.1,127.0.0.2</param-value>
      </param>
   </valve>
</jboss-web>

推荐阅读