如何通过C#创建GMSA帐户

时间:2019-03-25 14:47:59

标签: c# gmsa

我尝试查找c#代码示例,以了解如何创建AD服务帐户,但运气不高。任何人都可以提供创建AD服务帐户的示例代码吗?

我尝试使用UserPrincipal在名称的末尾加上$,但是运气不高。访问被拒绝的错误(无法在根MyDomain或CN下创建)

// Domain Context to use specific LDAP path.
domainContext = new PrincipalContext(ContextType.Domain, domainContext.ConnectedServer, "CN=Managed Service Accounts,dc=mydomain");
UserPrincipal userAccount = new UserPrincipal(domainContext)
{
  DisplayName = userName,
  SamAccountName = $"{userName}$",
  Description = description
};
userAccount.Save();

1 个答案:

答案 0 :(得分:0)

来晚了,但我想我可以回答。您需要通过logoncli.dll使用NetAddServiceAccount函数。即使添加了我认为合适的类型填充程序,我也无法使其在PowerShell中工作,但我只是遇到了一个看起来可行的模块。

https://github.com/beatcracker/Powershell-Misc/blob/master/Use-ServiceAccount.ps1

该脚本中用于类型定义的C#代码应具有您自己实现它所需的一切。