【问题标题】:nginx as a reverse proxy to limit http verb accessnginx 作为反向代理来限制 http 动词访问
【发布时间】:2010-01-27 22:18:42
【问题描述】:

所以我有一个使用 CouchDB 作为后端的应用程序。 Couch 还没有真正的安全/用户模型,默认情况下任何人都可以做任何事情(包括删除记录甚至整个数据库)。但是,如果我们将访问权限限制为仅 GET 请求,我们会更加安全。

我希望我可以将 nginx 作为反向代理放在前面,但是我找不到一个选项可以让您根据传入的动词过滤请求。Pound 这样做了,所以我正在考虑走这条路,但是我们已经广泛使用了 nginx,不必在混合中添加其他技术会很好。任何人都知道是否有一个选项可以让这种情况发生?

我什至会接受 Apache 中的 mod_proxy 选项。有什么想法吗?

【问题讨论】:

    标签: rest proxy nginx couchdb


    【解决方案1】:

    尝试改用 limit_except 指令。最好避免使用if,因为if is evil

    limit_except GET {
      deny   all;
    }
    

    Reference

    【讨论】:

      【解决方案2】:

      您可以通过 $request_method 变量访问 HTTP 请求类型。所以:

      location / {
        if ($request_method = 'GET') {
          proxy_pass couchdb_backend;
        }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-10-27
        • 2017-07-05
        • 2021-06-17
        • 2011-10-20
        • 1970-01-01
        • 1970-01-01
        • 2017-06-29
        相关资源
        最近更新 更多