0

我在 server1 中运行了两个 Web 服务(即 my_public_api 和 my_private_api)。(PHP,阿帕奇)

http:// ipaddress/my_public_api -- 每个人都可以访问。

http:// ipaddress/otherfuncation/my_private_api - 只能由批准的用户或特定的 ipaddress(server2) 访问

我想为此实施一些身份验证。这可以使用 htpasswd 基本身份验证来完成吗?如果不是什么可能的方式来实现这一点。如果我使用客户端身份验证,是否只能保护我的 private_api 并让 my_public_api 可供所有人访问。

4

1 回答 1

0

我找到了一种使用 SSL 完成此任务的方法,

  1. 生成服务器和客户端证书
  2. 将生成的证书指向apache。
  3. 在 httpd.conf 中限制 api 位置/虚拟路径
  4. 分发您要授予访问权限的客户端证书。

在这里查看以了解如何设置 SSL 证书

例如:httpd.conf

<Location /mysite/private_api>
SSLRequireSSL
SSLVerifyClient require
SSLVerifyDepth 1
</Location>

在这里查看更多详情

于 2012-09-19T09:48:45.747 回答