gpt4 book ai didi

c# - 默认情况下,如何将新的 Windows 用户添加到用户组

转载 作者:可可西里 更新时间:2023-11-01 12:08:07 33 4
gpt4 key购买 nike

我有一段创建 Windows 用户的代码。一切正常,确实创建了用户。但是,当我尝试调用 LoadUserProfile 时,操作失败,因为用户不在用户组中。现在,我知道如何实用地将此用户添加到用户组,但我不想硬编码组名“用户”,因为它可能会根据区域设置而改变。有没有办法默认将用户添加到 Users 组(顺便说一下,runas user/add 命令已经这样做了)?


DirectoryEntry dirEntry = new DirectoryEntry("WinNT://" + domain);
DirectoryEntries entries = dirEntry.Children;
DirectoryEntry user = entries.Add(username, "User");
user.Properties["FullName"].Add("Dr Zoidberg");
user.Invoke("SetPassword", password);
user.CommitChanges();

最佳答案

Windows 和 Active Directory 有许多“众所周知的 SID”,它们是内置帐户和组的安全标识符。您可以使用众所周知的 SID 绑定(bind)到用户组,因为无论区域设置如何,它都不会改变。管理员甚至可以将用户组重命名为其他名称,但 SID 将保持不变。

众所周知的 SID 在 System.Security.Principal.WellKnownSidType 中枚举

参见 http://msdn.microsoft.com/en-us/library/system.security.principal.wellknownsidtype.aspx了解更多详情。

关于c# - 默认情况下,如何将新的 Windows 用户添加到用户组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3756051/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com