Skip to content

Instantly share code, notes, and snippets.

@kenpb
Created July 11, 2022 06:37
Show Gist options
  • Save kenpb/e31f59c528b35190f4b7b05e7d0096b9 to your computer and use it in GitHub Desktop.
Save kenpb/e31f59c528b35190f4b7b05e7d0096b9 to your computer and use it in GitHub Desktop.
Mock users with minimal AD compatibility using ldif and http://github.com/kwart/ldap-server check https://hub.docker.com/r/kenpb/ldap-ad-it
#########################################################
# MICROSOFT SCHEMA for sAMAccountName and memberOf
# these two attributes are not defined in Apache Directory Server
#########################################################
dn: cn=microsoft, ou=schema
objectclass: metaSchema
objectclass: top
cn: microsoft
dn: ou=attributetypes, cn=microsoft, ou=schema
objectclass: organizationalUnit
objectclass: top
ou: attributetypes
dn: m-oid=1.2.840.113556.1.4.221, ou=attributetypes, cn=microsoft, ou=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.4.221
m-name: sAMAccountName
m-equality: caseIgnoreMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15
m-singleValue: TRUE
dn: m-oid=1.2.840.113556.1.4.656, ou=attributetypes, cn=microsoft, ou=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.4.656
m-name: userPrincipalName
m-equality: caseIgnoreMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15
m-singleValue: TRUE
dn: m-oid=1.2.840.113556.1.4.803, ou=attributetypes, cn=microsoft, ou=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.4.803
m-name: userAccountControl
m-equality: caseIgnoreMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.27
m-singleValue: TRUE
dn: m-oid=1.2.840.113556.1.4.90, ou=attributetypes, cn=microsoft, ou=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.4.90
m-name: unicodePwd
m-equality: octetStringMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.40
m-singleValue: TRUE
dn: m-oid=1.2.840.113556.1.4.222, ou=attributetypes, cn=microsoft, ou=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.4.222
m-name: memberOf
m-equality: caseIgnoreMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15
m-singleValue: FALSE
dn: m-oid=1.2.840.113556.1.4.223, ou=attributetypes, cn=microsoft, ou=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.4.223
m-name: objectCategory
m-equality: caseIgnoreMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15
m-singleValue: TRUE
dn: m-oid=1.2.840.113556.1.4.224, ou=attributetypes, cn=microsoft, ou=schema
objectclass: metaAttributeType
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.4.224
m-name: employeeId
m-equality: caseIgnoreMatch
m-syntax: 1.3.6.1.4.1.1466.115.121.1.15
m-singleValue: TRUE
dn: ou=objectclasses, cn=microsoft, ou=schema
objectclass: organizationalUnit
objectclass: top
ou: objectClasses
dn: m-oid=1.2.840.113556.1.5.6, ou=objectclasses, cn=microsoft, ou=schema
objectclass: metaObjectClass
objectclass: metaTop
objectclass: top
m-oid: 1.2.840.113556.1.5.6
m-name: securityPrincipal
m-supObjectClass: top
m-typeObjectClass: AUXILIARY
m-must: cn
m-must: sAMAccountName
m-must: objectCategory
m-may: memberOf
dn: m-oid=2.5.6.6.2, ou=objectclasses, cn=microsoft, ou=schema
objectclass: metaObjectClass
objectclass: metaTop
objectclass: top
m-oid: 2.5.6.6.2
m-name: msPerson
m-supObjectClass: top
m-typeObjectClass: AUXILIARY
m-may: sn
m-may: userPassword
dn: m-oid=2.5.6.7.2, ou=objectclasses, cn=microsoft, ou=schema
objectclass: metaObjectClass
objectclass: metaTop
objectclass: msPerson
objectclass: top
m-oid: 2.5.6.7.2
m-name: msOrganisationalPerson
m-supObjectClass: msPerson
m-typeObjectClass: AUXILIARY
m-may: initials
m-may: givenName
m-may: mail
m-may: title
dn: m-oid=1.2.840.113556.1.5.9, ou=objectclasses, cn=microsoft, ou=schema
objectclass: metaObjectClass
objectclass: metaTop
objectclass: msOrganisationalPerson
objectclass: top
m-oid: 1.2.840.113556.1.5.9
m-name: user
m-supObjectClass: msOrganisationalPerson
m-typeObjectClass: AUXILIARY
m-must: cn
m-must: sAMAccountName
m-must: objectCategory
m-may: userAccountControl
m-may: userPrincipalName
m-may: mail
m-may: unicodePwd
m-may: employeeId
############
# Domain
############
dn: dc=example,dc=local
dc: example
objectClass: top
objectClass: domain
dn: ou=users,dc=example,dc=local
objectClass: organizationalUnit
objectClass: top
ou: users
dn: uid=admin,ou=users,dc=example,dc=local
objectClass: top
objectClass: person
objectClass: inetOrgPerson
objectClass: securityPrincipal
objectClass: user
objectCategory: User
cn: Admin User
sn: Richardson
givenName: Kevin
uid: admin
sAMAccountName: admin
userPrincipalName: admin@example.local
userAccountControl: 0
userPassword: secret
memberOf: admin
mail: admin@example.local
employeeId: 102220333
displayName: Kevin Richardson
dn: uid=test1,ou=users,dc=example,dc=local
objectClass: top
objectClass: person
objectClass: inetOrgPerson
objectClass: securityPrincipal
objectClass: user
objectCategory: User
cn: Test User 1
sn: Cooper
givenName: Anton
initials: I
uid: test1
sAMAccountName: test1
userPrincipalName: test1@example.local
userAccountControl: 0
userPassword: secret
mail: test1@example.local
employeeId: 202220333
displayName: Anton Cooper
dn: uid=test2,ou=users,dc=example,dc=local
objectClass: top
objectClass: person
objectClass: inetOrgPerson
objectClass: securityPrincipal
objectClass: user
objectCategory: User
cn: Test User 2
sn: Bloggs
givenName: Joe
initials: C
uid: test2
sAMAccountName: test2
userPrincipalName: test2@example.local
userAccountControl: 0
userPassword: secret
mail: test2@example.local
employeeId: 402220333
displayName: Joe Bloggs
dn: ou=roles,dc=example,dc=local
objectclass: top
objectclass: organizationalUnit
ou: roles
dn: cn=admin,ou=roles,dc=example,dc=local
objectClass: top
objectClass: groupOfNames
cn: admin
member: uid=test1,ou=users,dc=example,dc=local
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment