特定のフォルダー内のディレクトリとファイルを一覧表示しようとしています。homedirectory
このフォルダーは、Windows 認証 (NTLM) によってログインし、Active Directory (プロパティ)から取得される現在のユーザー (Page.User) に依存します。
ドメイン ユーザーを使用して AD にアクセスし、フォルダーの場所を取得していますが、これは正常に機能します。
System.IO.DirectoryInfo.GetDirectories()
失敗したのは、偽装でも使用してサブフォルダーを取得することです。
偽装に使用しているコードは次のとおりです。
System.Security.Principal.WindowsImpersonationContext impersonationContext;
impersonationContext = ((System.Security.Principal.WindowsIdentity)User.Identity).Impersonate();
偽装されているユーザーがフォルダーにアクセスできることを確認しました。
これまでのところ、委任または Kerberos 認証を設定する必要があるようですが、これは本当ですか? これらはこれを達成する唯一の方法ですか?なりすましだけで十分ではないでしょうか。