SharePoint 2010 でコードを実行しているときにアクセス拒否エラーが発生した場合、偽装されているアカウントを特定する必要があります。
私はリソースの重複がほとんどなく、適切な質問をするための十分な基礎知識がないまま、このプロジェクトを継承しました。
ファイル共有にディレクトリを作成しようとしている SharePoint ソリューションの一部として展開された aspx ページがありますが、アクセスが拒否されたことを示す例外がキャッチされて作成できません。例外をスローするメソッドは、SPSecurity.RunWithElevatedPrivileges
(MethodName);への呼び出しを介して実行されます。作成試行の直前に次のコードを実行し、UserName
変数をログに出力すると、共有を完全に制御できるサービス アカウントが示されます。
SecurityIdentifier user = System.Security.Principal.WindowsIdentity.GetCurrent().User;
String UserName = user.Translate(typeof(System.Security.Principal.NTAccount)).Value;
作成しようとしているアカウントの名前を見つける方法と、理想的にはそれをどこで変更するかを知る必要があります-すべてのアイデアを歓迎します! ありがとう!