昇格された .NET アプリケーションでログオンしているユーザーの SID を取得するにはどうすればよいですか?
WindowsIdentity.GetCurrent()
もちろん、プロセスを昇格させた管理者を返すものを試しました。私が見ることができることから、これを行うにはネイティブメソッドを使用する必要があるかもしれません.誰かがよりエレガントな方法を提供できますか?
レジストリを使用するというGreg の提案を調査する:
現在ログオンしているユーザーの情報を提供する上で信頼できると思われる次のキーを見つけました。このキーには、表示名や SID などの情報が含まれます。この情報は、「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI」に保存されます。
この情報は Windows 8 で正確です。Windows 7 を確認しましたが、含まれている情報ははるかに少なく、たとえば、ログオンしているユーザー SID がありません。