【发布时间】:2011-02-16 07:58:44
【问题描述】:
我已经编写了一个可以为当前用户创建共享和更改权限的代码。目标是始终在共享级别允许所有人,并在 ntfs acl 级别拒绝权限。
我使用德语窗口,我注意到我只能使用“jeder”访问每个用户。在英语中,我认为是用户“每个人”或“所有人”?!无论如何,我正在寻找一种方法来获得每个用户语言独立的名称。
希望这是可能的。
【问题讨论】:
我已经编写了一个可以为当前用户创建共享和更改权限的代码。目标是始终在共享级别允许所有人,并在 ntfs acl 级别拒绝权限。
我使用德语窗口,我注意到我只能使用“jeder”访问每个用户。在英语中,我认为是用户“每个人”或“所有人”?!无论如何,我正在寻找一种方法来获得每个用户语言独立的名称。
希望这是可能的。
【问题讨论】:
英文版 Windows 使用的名称是“Everyone”。
您可以通过使用 WellKnownSidType.WorldSid 值获取用户,而无需考虑语言:
var sid = new SecurityIdentifier(WellKnownSidType.WorldSid, null);
var account = (NTAccount) sid.Translate(typeof(NTAccount));
【讨论】:
我相信这里已经回答了这样做的方法:How can I get the local group name for guests/administrators ?
这个“所有人”SID 是众所周知的 SID“S-1-1-0”(该列表可在此处获得:Well-known security identifiers in Windows operating systems)。
【讨论】: