職場のWindowsマシンにログインするときは、「CORP\username」を使用します。
ユーザーのSIDとユーザーがログインしたドメインコントローラーを指定して、その文字列を取得するにはどうすればよいですか?次のように、.NET3.5で追加されたDirectoryServicesAPIを使用しています。
PrincipalContext domaincontroller = new PrincipalContext(ContextType.Domain, "192.168.30.115");
UserPrincipal user = UserPrincipal.FindByIdentity(domaincontroller, IdentityType.Sid, "S-1-5-21-293182769-1777760488-2957165303-1798");
私はdomaincontrollerオブジェクトとuserオブジェクトを掘り下げて、次のようなものをたくさん見ました:
user.Name: john smith
user.DisplayName: john smith
user.UserPrincipalName: john.smith@corp.mycompany.com
user.SamAccountName: john.smith
UserPrincipleオブジェクトの私的な内臓を深く掘り下げると、「domainFlatName」と「FlatDomainName」というラベルの付いた2つのフィールドが見つかります。これらのフィールドには、必要なものが正確に含まれています(下のスクリーンショット)。これらはどういう意味ですか、またパブリックインターフェイスを介してどのようにアクセスできますか?