1

新しいマシンに移行するために、当社の Web サイトのアップグレードを任されています。私たちの Web サイトのユーザーは、ログイン ページを使用してログインします。IIS にモジュールを追加して、要求をインターセプトし、Web サイトにアクセスするための適切な Cookie とセキュリティ トークンを設定しました。以前のバージョンでは、C++ で ISAPI スクリプトを使用していましたが、新しいマシンでは機能しないため、この新しい IIS モジュールをコーディングする必要がありました。

現在、Web ユーザーは Web サーバー上の Windows アカウントにマップされ、ファイルシステム リソース (主に画像とビデオ) へのアクセスを許可または拒否しています。マッピングはデータベースにあります。

Web サイトの php ページ内には、Web 要求が処理される Windows アカウントを推測する $REMOTE_USER の記述があります。IIS はリクエストにデフォルト アカウントを割り当てますが、別の資格情報でリクエストを実行したいと考えています。つまり、ClientOne が Web サイトにログインし、NT アカウント UsrRestricted にマップされている場合、IIS のデフォルトである IUSR ではなく、UsrRestricted がショーを実行しているかのように要求を実行したいと考えています。

では、次のリクエストが実行される代わりに Windows アカウントを設定するにはどうすればよいでしょうか? 私はASP.netの偽装について読んだことがありますが、これは解決策になると思いますが、PHPのサーバーコードに引き継がれますか?

* もちろん、私は PHP と IIS の初心者であり、ヒントをいただければ幸いです。

4

1 に答える 1

3

iis 内で php を実行するために fast-cgi を使用している可能性があります。

設定することにより、クライアントの資格情報を偽装するように fast-cgi を設定できます。

fastcgi.impersonate = 1

php.iniで。

于 2012-10-31T21:23:46.537 に答える