IISの認証方法によって Active Directory への接続に違いが出るか試してみました。
今回は、Virtual ドメインのドメインコントローラを Webサーバにしました。サーバ名は win2008testdc です。
認証方法は次の3サイトで確認しました。(クリックすると新しいウィンドウで拡大図が表示されます。)
○Default Web Site Windows 認証:無効、匿名認証:有効(特定のユーザ:IUSER)
○DirectoryTestWeb Windows 認証:有効、匿名認証:無効
○DirectoryTestWeb2 Windows 認証:無効、匿名認証:有効(アプリケーション プール ID)
DirectoryTestWeb2 サイトは匿名認証で匿名ユーザを アプリケーション プール IDにしているので、NETWORK SERVICE でのアクセスになります。
物理パスは3つとも同じです。なので、DirectoryTestWeb にはホスト名「testweb」を、DirectoryTestWeb2 にはホスト名「testweb2」を指定しています。
そのため、DNSサーバの前方参照ゾーンに win2008testdc のエイリアスとしてこれらのホスト名を追加しています。
物理パスのアクセス権は、Administrators:フルコントロール、Users:読み取りと実行 です。
ユーザ:Koyama は Domain Admins グループのメンバです。
画面上部にログオンユーザを表示するようにして Active Directory に接続するページにアクセスしてみました。
結果的にはどれもちゃんと Active Directory に接続できました。(クリックすると新しいウィンドウで拡大図が表示されます。)
IUSER も NETWORK SERVICE も なんでページ自体にアクセスできているかはよくわかってません・・・
アクセス権が Administrators:フルコントロール、Users:読み取りと実行 だけなのに。
Request.LogonUserIdentity オブジェクトを確認すると、IsAuthenticated は False になってて(まぁ当然)、IsAnonymous も False になってました。
そして Groups の中に Authenticated Users(のSID)がありました。
デフォルトで Authenticated Users は Users グループのメンバになってるからアクセスできるのかなぁと思ったんですが、Users グループのメンバから外してもアクセスできてしまう・・・なんでやろ。