c# - 如何在 C# 中创建属于 Domain Admins 组的 AD 用户
问题描述
我正在开发一个 C# 项目,该项目会自动创建新的 Active Directory 用户并让他们访问 AD 服务器。
我使用以下代码创建了一个普通用户,但由于该用户不属于域管理员,因此无法访问服务器。
Domain domain = Domain.GetCurrentDomain();
PrincipalContext context = new PrincipalContext(ContextType.Domain);
UserPrincipal principal = new UserPrincipal(context);
principal.Name = name;
principal.UserPrincipalName = name + "@" + domain.Name;
principal.SamAccountName = name;
principal.Enabled = true;
principal.SetPassword(password);
principal.PasswordNeverExpires = true;
principal.Save();
有没有办法在代码中包含新用户属于哪个组?或者在创建帐户后,将用户添加到 Domain Admins 组可能是另一种解决方案,但我也不知道如何做到这一点。任何意见,将不胜感激。
解决方案
您只需要找到组并添加您创建的用户。像这样:
var group = GroupPrincipal.FindByIdentity(context, "Domain Admins");
group.Members.Add(principal);
group.Save();
代码必须使用可以将某人添加到Domain Admins
组的凭据运行,这可能是域管理员帐户本身。
推荐阅读
- react-native - 无法导入剪贴板
- python - 我正在尝试使用提到的代码找到可点击/不可点击的墨水并在控制台中打印它
- angularjs - 过滤并自动选择下拉 angularjs
- azure - 如何在 Azure VM 上的 IIS 中创建 TenantEncryptionCert?
- c# - 如何在 Unity 中将相机视图旋转回正常状态?
- python - 一种从切片无用的对象中选择特定索引的方法
- java - 将json转换为java,其中字段为接口类型
- python - 获取 json 中所有嵌套键的列表
- angular - Angular 应用程序中的 Kerberos 身份验证,后端采用 RESTful 服务的形式
- android - 跨平台应用访问平台组件,无需 PhoneGap