mirror of https://github.com/dexidp/dex.git
8 changed files with 555 additions and 603 deletions
@ -0,0 +1,447 @@ |
|||||||
|
dn: ou=TestQuery,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestQuery |
||||||
|
|
||||||
|
dn: ou=People,ou=TestQuery,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestQuery,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=TestQuery,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
mail: johndoe@example.com |
||||||
|
userpassword: bar |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestQueryWithEmailSuffix,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestQueryWithEmailSuffix |
||||||
|
|
||||||
|
dn: ou=People,ou=TestQueryWithEmailSuffix,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestQueryWithEmailSuffix,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=TestQueryWithEmailSuffix,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
userpassword: bar |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestUserFilter |
||||||
|
|
||||||
|
dn: ou=Seattle,ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Seattle |
||||||
|
|
||||||
|
dn: ou=Portland,ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Portland |
||||||
|
|
||||||
|
dn: ou=People,ou=Seattle,ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: ou=People,ou=Portland,ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=Seattle,ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=Portland,ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoefromportland@example.com |
||||||
|
userpassword: baz |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=Seattle,ou=TestUserFilter,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
mail: johndoe@example.com |
||||||
|
userpassword: bar |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestGroupQuery,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestGroupQuery |
||||||
|
|
||||||
|
dn: ou=People,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
mail: johndoe@example.com |
||||||
|
userpassword: bar |
||||||
|
|
||||||
|
# Group definitions. |
||||||
|
|
||||||
|
dn: ou=Groups,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: cn=admins,ou=Groups,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: admins |
||||||
|
member: cn=john,ou=People,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
member: cn=jane,ou=People,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=developers,ou=Groups,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: developers |
||||||
|
member: cn=jane,ou=People,ou=TestGroupQuery,dc=example,dc=org |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestGroupsOnUserEntity |
||||||
|
|
||||||
|
dn: ou=People,ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
# Groups are enumerated as part of the user entity instead of the members being |
||||||
|
# a list on the group entity. |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
departmentNumber: 1000 |
||||||
|
departmentNumber: 1001 |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
mail: johndoe@example.com |
||||||
|
userpassword: bar |
||||||
|
departmentNumber: 1000 |
||||||
|
departmentNumber: 1002 |
||||||
|
|
||||||
|
# Group definitions. Notice that they don't have any "member" field. |
||||||
|
|
||||||
|
dn: ou=Groups,ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: cn=admins,ou=Groups,ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: posixGroup |
||||||
|
cn: admins |
||||||
|
gidNumber: 1000 |
||||||
|
|
||||||
|
dn: cn=developers,ou=Groups,ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: posixGroup |
||||||
|
cn: developers |
||||||
|
gidNumber: 1001 |
||||||
|
|
||||||
|
dn: cn=designers,ou=Groups,ou=TestGroupsOnUserEntity,dc=example,dc=org |
||||||
|
objectClass: posixGroup |
||||||
|
cn: designers |
||||||
|
gidNumber: 1002 |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestGroupFilter |
||||||
|
|
||||||
|
dn: ou=People,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
mail: johndoe@example.com |
||||||
|
userpassword: bar |
||||||
|
|
||||||
|
# Group definitions. |
||||||
|
|
||||||
|
dn: ou=Seattle,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Seattle |
||||||
|
|
||||||
|
dn: ou=Portland,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Portland |
||||||
|
|
||||||
|
dn: ou=Groups,ou=Seattle,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: ou=Groups,ou=Portland,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: cn=qa,ou=Groups,ou=Portland,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: qa |
||||||
|
member: cn=john,ou=People,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=admins,ou=Groups,ou=Seattle,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: admins |
||||||
|
member: cn=john,ou=People,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
member: cn=jane,ou=People,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=developers,ou=Groups,ou=Seattle,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: developers |
||||||
|
member: cn=jane,ou=People,ou=TestGroupFilter,dc=example,dc=org |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestGroupToUserMatchers |
||||||
|
|
||||||
|
dn: ou=People,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
uid: janedoe |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
uid: johndoe |
||||||
|
mail: johndoe@example.com |
||||||
|
userpassword: bar |
||||||
|
|
||||||
|
# Group definitions. |
||||||
|
|
||||||
|
dn: ou=Seattle,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Seattle |
||||||
|
|
||||||
|
dn: ou=Portland,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Portland |
||||||
|
|
||||||
|
dn: ou=Groups,ou=Seattle,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: ou=UnixGroups,ou=Seattle,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: UnixGroups |
||||||
|
|
||||||
|
dn: ou=Groups,ou=Portland,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: ou=UnixGroups,ou=Portland,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: UnixGroups |
||||||
|
|
||||||
|
dn: cn=qa,ou=Groups,ou=Portland,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: qa |
||||||
|
member: cn=john,ou=People,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=logger,ou=UnixGroups,ou=Portland,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: posixGroup |
||||||
|
gidNumber: 1000 |
||||||
|
cn: logger |
||||||
|
memberUid: johndoe |
||||||
|
|
||||||
|
dn: cn=admins,ou=Groups,ou=Seattle,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: admins |
||||||
|
member: cn=john,ou=People,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
member: cn=jane,ou=People,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=developers,ou=Groups,ou=Seattle,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: developers |
||||||
|
member: cn=jane,ou=People,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=frontend,ou=UnixGroups,ou=Seattle,ou=TestGroupToUserMatchers,dc=example,dc=org |
||||||
|
objectClass: posixGroup |
||||||
|
gidNumber: 1001 |
||||||
|
cn: frontend |
||||||
|
memberUid: janedoe |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestDeprecatedGroupToUserMatcher |
||||||
|
|
||||||
|
dn: ou=People,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
dn: cn=john,ou=People,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: john |
||||||
|
mail: johndoe@example.com |
||||||
|
userpassword: bar |
||||||
|
|
||||||
|
# Group definitions. |
||||||
|
|
||||||
|
dn: ou=Seattle,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Seattle |
||||||
|
|
||||||
|
dn: ou=Portland,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Portland |
||||||
|
|
||||||
|
dn: ou=Groups,ou=Seattle,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: ou=Groups,ou=Portland,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: Groups |
||||||
|
|
||||||
|
dn: cn=qa,ou=Groups,ou=Portland,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: qa |
||||||
|
member: cn=john,ou=People,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=admins,ou=Groups,ou=Seattle,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: admins |
||||||
|
member: cn=john,ou=People,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
member: cn=jane,ou=People,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
|
||||||
|
dn: cn=developers,ou=Groups,ou=Seattle,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
objectClass: groupOfNames |
||||||
|
cn: developers |
||||||
|
member: cn=jane,ou=People,ou=TestDeprecatedGroupToUserMatcher,dc=example,dc=org |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestStartTLS,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestStartTLS |
||||||
|
|
||||||
|
dn: ou=People,ou=TestStartTLS,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestStartTLS,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestInsecureSkipVerify,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestInsecureSkipVerify |
||||||
|
|
||||||
|
dn: ou=People,ou=TestInsecureSkipVerify,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestInsecureSkipVerify,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
|
|
||||||
|
######################################################################## |
||||||
|
|
||||||
|
dn: ou=TestLDAPS,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: TestLDAPS |
||||||
|
|
||||||
|
dn: ou=People,ou=TestLDAPS,dc=example,dc=org |
||||||
|
objectClass: organizationalUnit |
||||||
|
ou: People |
||||||
|
|
||||||
|
dn: cn=jane,ou=People,ou=TestLDAPS,dc=example,dc=org |
||||||
|
objectClass: person |
||||||
|
objectClass: inetOrgPerson |
||||||
|
sn: doe |
||||||
|
cn: jane |
||||||
|
mail: janedoe@example.com |
||||||
|
userpassword: foo |
||||||
@ -0,0 +1,18 @@ |
|||||||
|
version: "3.8" |
||||||
|
|
||||||
|
services: |
||||||
|
ldap: |
||||||
|
image: osixia/openldap:1.4.0 |
||||||
|
# Copying is required because the entrypoint modifies the *.ldif files. |
||||||
|
# For verbose output, use: command: ["--copy-service", "--loglevel", "debug"] |
||||||
|
command: ["--copy-service"] |
||||||
|
environment: |
||||||
|
LDAP_BASE_DN: "dc=example,dc=org" |
||||||
|
LDAP_TLS: "true" |
||||||
|
LDAP_TLS_VERIFY_CLIENT: try |
||||||
|
ports: |
||||||
|
- 389:389 |
||||||
|
- 636:636 |
||||||
|
volumes: |
||||||
|
- ./connector/ldap/testdata/certs:/container/service/slapd/assets/certs |
||||||
|
- ./connector/ldap/testdata/schema.ldif:/container/service/slapd/assets/config/bootstrap/ldif/99-schema.ldif |
||||||
Loading…
Reference in new issue