仅使用域和用户名创建WindowsIdentity
我正在构建一个使用当前用户的WindowsIdentity获取用户信息的站点。 我从中得到的主要信息是ssid。
我为当前用户执行此操作,如下所示
IntPtr logonToken = WindowsIdentity.GetCurrent().Token; WindowsIdentity windowsId = new WindowsIdentity(logonToken); string ssid = windowsId.User.ToString();
我现在需要做的是,并且失败了,就是获取域中存在的任意用户名的ssid。
我尝试了WindowsIdentity(字符串),但这给了我一个SecurityException
提供的名称不是正确形成的帐户名称。
你是如何格式化校长的? 通常它们采用user@domain.ext
的forms,因此如果您的AD在例如example.com
上提供主体解析,则用户主体名称(UPN)可能如下所示: joe.bloggs@example.com
。 WindowsIdentity(string)
构造函数接受UPN,而不是旧的格式用户名EXAMPLE\joe.bloggs