如何像 AD 一样配置 ApacheDS LDAP

opt*_*lic 1 ldap apache-ds

我正在尝试设置 Apache DS 以在本地模拟我公司的 Active Directory。我创建了一个新分区来匹配。然后我创建了一个 ldif 文件来添加用户和组。例如

##Create the root domain
dn: dc=serverfault,dc=com
objectClass: domain
objectClass: top
dc: serverfault

##Create Users and Groups roots
dn: ou=Users,dc=serverfault,dc=com
objectClass: organizationalUnit
objectClass: top
ou: Users

dn: ou=Groups,dc=serverfault,dc=com
objectClass: organizationalUnit
objectClass: top
ou: Groups

##Add users
dn: cn=Jeff Atwood,ou=Users,dc=serverfault,dc=com
objectclass: inetOrgPerson
cn: Jeff Atwood
sn: Atwood
userPrincipalName: Jeff.Atwood@serverfault.com

dn: cn=Joel Spolsky,ou=Users,dc=serverfault,dc=com
objectclass: inetOrgPerson
cn: Joel Spolsky
sn: Spolsky
userPrincipalName: Joel.Spolsky@serverfault.com

##Add groups
dn: CN=Dev,ou=Groups,dc=serverfault,dc=com
objectClass: groupOfNames
cn: Dev
member: cn=Jeff Atwood,ou=Users,dc=serverfault,dc=com
member: cn=Joel Spolsky,ou=Users,dc=serverfault,dc=com
Run Code Online (Sandbox Code Playgroud)

但是,这失败了,因为ATTRIBUTE_TYPE for OID userprincipalname does not exist!. (如果我取出 userPrincipalName 行,一切都很好)。

它被列为 Microsoft 站点https://msdn.microsoft.com/en-us/library/ms682282(v=vs.85).aspx上的一个属性,这让我认为它没有包含在默认架构中在 ApacheDS 中。

我宁愿不使用 GUI 手动添加每个失败的属性或对象类。

有没有办法编写脚本,类似于使用 ldif?

小智 5

我知道这是旧的,但我一直在寻找类似的东西,我设法通过使用来自这个 github 项目的模式(从微软开始)模拟 Apache DS 中的 AD 组/角色:https : //github.com/dkoudela/active-目录到 openldap/tree/master/schema

我将它们导入到 Apache DS(使用架构编辑器)中,然后我就能够使用复制目标 AD 配置所需的 sAMAccountName、userPrincipalName 和 memberOf 属性创建用户。