我有一台服务器(Windows Server 2012),安装了Windows AD(Active Directory),并用作我维护的应用程序的一部分。 大多数情况下,我的应用程序会以编程的方式pipe理这个服务器,添加,编辑和删除用户。 但是偶尔我想手工修改,例如我想添加一个用户。
通常我通过MMC使用“Active Directory用户和计算机”pipe理单元。 但是,当我尝试通过这个应用程序创build用户时,我遇到了一个有趣的问题:
Windows迫使我追加一个后缀匹配我的AD实例的名称。
如果我通过“Active Directorypipe理中心”尝试相同的事情,我也有类似的问题:
由于某些原因,Windows不允许我创build没有这个强制性后缀的用户。 但是,当我以编程方式创build用户时,我似乎没有这个问题。 我使用的应用程序取决于没有后缀的用户。
如何解决AD在UI中的需求(添加一个空白后缀的用户)?
为什么AD在前端甚至有这样的需求,但是在以编程方式添加用户时却不这样做?
AD中的所有用户都有一个UPN后缀,不pipe你是否明确地添加它。 当您通过代码创build用户时, 可能会根据域的FQDN自动创builduserPrincipalName属性。 但是根据下面的jscott的评论,它实际上并不是必需的。
但是,您正在使用的应用程序不可能要求用户没有后缀。 这可能只是查询后缀不存在的属性(如sAMAccountName)。