2012-01-04 37 views
4

IIS 7.5を使用していて、既定のWebサイトに対してWindows認証を有効にしています。私はIISのAppPooolのアイデンティティとして実行するように設定して、IISのアプリケーションプールのアイデンティティに私のWebフォルダにpermissonを与えました。 ユーザーが自分のサイトにログインしてネットワーク資格情報を提供すると、そのユーザーが自分のWebフォルダにアクセスするために偽装し、アプリケーションプールIDを使用せず、ユーザーに401エラーが表示されます。 これはprocmonでも確認済みです。無効にしても偽装を使用するIIS 7.5

i also ran appcmd set config /commit:WEBROOT /section:identity /impersonate:false 

偽装が無効になっていることを確認してください。私はそれを動作させるために、読み取り/実行権限を持つWebアプリケーションフォルダにcomputername \ users idを追加する必要があります。私はここで何が欠けていますか?

+0

アプリケーションは統合パイプラインモードまたはクラシックパイプラインモードで実行していますか? –

+0

統合モード –

+0

web.configで偽装が有効になっていますか? – tardomatic

答えて

0

私はコマンドラインでこれを行う方法がわかりませんが、ここではGUIによる手順があります。

  • オープンIISマネージャ
  • サーバー
  • がアプリケーションにサイト
  • 参照]を展開し、
  • クリックして選択展開し、「基本設定...」右
  • クリック時の動作で接続方法...

このウィンドウでは、ユーザーを変更できます。

偽装には2つの形式があり、混乱の原因となっています。アプリケーションプール偽装により、アプリケーションはユーザーのコンテキストで実行されます。 Connect asは、アプリケーションプールがユーザーを使用してディスク上のリソースにアクセスするようにします。それ以外の場合は実際にユーザーのコンテキストで実行されません。

匿名認証を使用している場合は、[接続]ボックスの[認証済みユーザー]は[認証]で定義されている匿名ユーザーです。

+0

so on私はカスタムユーザーIDを提供するか、ログインしているユーザー自身を偽装する必要があるため、接続しますか?今私はそれがアプリのプールのアイデンティティと思うアプリケーションユーザーとして選択されています。 –

+0

@NatashaThapa:アプリケーションユーザーはアプリケーションプールIDを参照するのではなく、ユーザーです。したがって、アプリケーションプールの権限と一致するようにファイルにアクセスする場合は、ここでIDとして指定する必要があります。 – Guvante

関連する問題