web-dev-qa-db-ja.com

IIS 7.5 on Win server 2008 r2 useAppPoolCredentials

IIS 7.5で新しいWebサイトのWindows認証を設定しようとしています。サイトでWindows認証モジュールを有効にし、他のすべての認証タイプ(匿名、基本など)を無効にしました。サイトのアプリプールは、SPNヘッダーとホストヘッダーが適切に設定されたカスタムIDで実行されます。サイトでホストされているコンテンツ(テキストファイルなど)にブラウザー経由でアクセスしようとすると、401.2エラーが発生します。 。 この提案 に従い、useAppPoolCredentials属性をapplicationHost.configに追加すると、を使用してリソースにアクセスできます。 Windows認証。

次に、属性を削除し、applicationHost.configを保存して、変更を効果的に元に戻しましたが、リソースにアクセスできます。誰かが私がこの行動を理解するのを手伝ってくれる?

また、Winサーバー2008R2でのIIS 7.5の特定のインストールでは、サイト(またはアプリケーション)のデフォルト構成を変更するとIISサイト/アプリケーションのルートでWeb.configファイルを自動的に生成します。applicationHost.configを直接更新する代わりに、これを有効にする設定はありますか?

[〜#〜] edit [〜#〜]ブラウザは応答をキャッシュしていたため、変更を元に戻したり、ファイルを保存したりしても違いはないようです。だから私が今持っている唯一の質問はWeb.configの生成に関連しています

5
Abhijeet Patel

構成の変更がweb.configではなくサイトのapplicationHost.configに永続化されるようにする方法に関する、2番目の質問に関しては、これは機能の委任を介して制御できます。

IIS Managerのマシンノードに移動すると、「機能の委任」という名前のアイコンが表示されます。

enter image description here

これを起動するとIIS "applet"]、構成をweb.configに委任できる機能のリストが表示されます。

読み取り/書き込みとマークされた設定では、通常、設定がweb.configファイルに書き込まれます。 読み取り専用とマークされた設定は、通常、設定がapplicationHost.configに書き込まれ、web.configファイルで上書きすることはできません。

その際、<windowsAuthentication>構成をweb.configファイルに委任できます。

マイナーな落とし穴:

すべてのアプレットが、構成可能なすべての設定を表示するわけではありません。このような状況の良い例は、<windowsAuthentication>useAppPoolCredentials属性です。 詳細設定の下でも、認証アプレットには表示されません。

ただし、Configuration Editorを使用して、この値(およびその他のほとんどすべて)を取得できます。 IIS managerの左側のペインでWebサイトのノードに移動すると、Managementの下にこのアイコンが表示されます。 :

enter image description here

構成エディターを起動すると、さまざまな設定のツリーを含むドロップダウンリストが表示されます。

enter image description here

/system.webServer/security/authentication/windowsAuthenticationノードを選択すると、変更可能な設定の全範囲が表示されます。ここで、関心のある設定を確認できます(useAppPoolCredentials):

enter image description here

次のFrom:ドロップダウンリストから、Webサイトの値をweb.configまたはapplicationHost.configのどちらで構成するかを選択できます。構成セクションツリーのドロップダウンへ:

enter image description here

セクションがweb.config読み取り/書き込みとして委任されていない場合は、次のように表示されます。

enter image description here

この特定の機能がロックされ、すべての設定がグレー表示されて無効になり、この機能の子設定もロックアウトされていることを示す南京錠があるというアラートが表示されます。

最後に、サイトバインディング、アプリケーションプール、仮想ディレクトリなど、すべての設定を委任できるわけではありません。

3
Kev