![Apache/Docusign - 通过主机或 IP 限制位置](https://linux22.com/image/1629538/Apache%2FDocusign%20-%20%E9%80%9A%E8%BF%87%E4%B8%BB%E6%9C%BA%E6%88%96%20IP%20%E9%99%90%E5%88%B6%E4%BD%8D%E7%BD%AE.png)
我正在尝试限制 Docusign 事件在文档完成时调用的 URL。我只想通过 Docusign 主机或 IP 授予对此 URL 的访问权限,但由于我对 Apache 的技能有限,我无法这样做。按照此文档操作https://www.docusign.com/trust/security/esignature
我尝试在我的 vhost 中添加此行:
<LocationMatch "^/souscription/api/[^/].*/callback/.*$">
Require host docusign.com docusign.net
</LocationMatch>
但是我在 apache 日志中出现这个错误:
[Wed Jul 29 12:59:09.663648 2020] [authz_host:error] [pid 32671] [client 162.248.186.11:50836] AH01753: access check of 'docusign.com docusign.net' to /souscription/api/1.0/callback/118/completed failed, reason: unable to get the remote host name
我的配置有什么问题?
答案1
重点是您指定的 Require 语句要求 Apache 反向查找 IP 以获取主机名。这可能在任何情况下都不起作用,就像您的示例中的情况一样 - 此 IP 没有反向解析。这会导致您引用的消息。
无论如何,我怀疑这是否是你想要的。如果你真的想根据客户端 IP 授予访问权限,你可以这样做:
Require ip 10.1.0.0/16
您可以在 Apache 的官方文档中找到这些内容和类似的内容:Apache 需要文档
但请注意,这种访问限制实际上可能相当无效和/或薄弱。如果可以,我建议用更强大的东西(例如 SSL 客户端证书,甚至用户名/密码)来代替它。