0

server1 で 2 つの 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 に答える