Rework to use docker-compose
Signed-off-by: Martin Heide <martin.heide@faro.com>
This commit is contained in:
		
							
								
								
									
										44
									
								
								examples/ldap/config-ldap.ldif
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								examples/ldap/config-ldap.ldif
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,44 @@
 | 
			
		||||
# Already included in default config of Docker image osixia/openldap:1.4.0.
 | 
			
		||||
#
 | 
			
		||||
# dn: dc=example,dc=org
 | 
			
		||||
# objectClass: dcObject
 | 
			
		||||
# objectClass: organization
 | 
			
		||||
# o: Example Company
 | 
			
		||||
# dc: example
 | 
			
		||||
 | 
			
		||||
dn: ou=People,dc=example,dc=org
 | 
			
		||||
objectClass: organizationalUnit
 | 
			
		||||
ou: People
 | 
			
		||||
 | 
			
		||||
dn: cn=jane,ou=People,dc=example,dc=org
 | 
			
		||||
objectClass: person
 | 
			
		||||
objectClass: inetOrgPerson
 | 
			
		||||
sn: doe
 | 
			
		||||
cn: jane
 | 
			
		||||
mail: janedoe@example.com
 | 
			
		||||
userpassword: foo
 | 
			
		||||
 | 
			
		||||
dn: cn=john,ou=People,dc=example,dc=org
 | 
			
		||||
objectClass: person
 | 
			
		||||
objectClass: inetOrgPerson
 | 
			
		||||
sn: doe
 | 
			
		||||
cn: john
 | 
			
		||||
mail: johndoe@example.com
 | 
			
		||||
userpassword: bar
 | 
			
		||||
 | 
			
		||||
# Group definitions.
 | 
			
		||||
 | 
			
		||||
dn: ou=Groups,dc=example,dc=org
 | 
			
		||||
objectClass: organizationalUnit
 | 
			
		||||
ou: Groups
 | 
			
		||||
 | 
			
		||||
dn: cn=admins,ou=Groups,dc=example,dc=org
 | 
			
		||||
objectClass: groupOfNames
 | 
			
		||||
cn: admins
 | 
			
		||||
member: cn=john,ou=People,dc=example,dc=org
 | 
			
		||||
member: cn=jane,ou=People,dc=example,dc=org
 | 
			
		||||
 | 
			
		||||
dn: cn=developers,ou=Groups,dc=example,dc=org
 | 
			
		||||
objectClass: groupOfNames
 | 
			
		||||
cn: developers
 | 
			
		||||
member: cn=jane,ou=People,dc=example,dc=org
 | 
			
		||||
							
								
								
									
										54
									
								
								examples/ldap/config-ldap.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								examples/ldap/config-ldap.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
			
		||||
issuer: http://127.0.0.1:5556/dex
 | 
			
		||||
storage:
 | 
			
		||||
  type: sqlite3
 | 
			
		||||
  config:
 | 
			
		||||
    file: examples/dex.db
 | 
			
		||||
web:
 | 
			
		||||
  http: 0.0.0.0:5556
 | 
			
		||||
 | 
			
		||||
connectors:
 | 
			
		||||
- type: ldap
 | 
			
		||||
  name: OpenLDAP
 | 
			
		||||
  id: ldap
 | 
			
		||||
  config:
 | 
			
		||||
    host: localhost:389
 | 
			
		||||
 | 
			
		||||
    # No TLS for this setup.
 | 
			
		||||
    insecureNoSSL: true
 | 
			
		||||
 | 
			
		||||
    # This would normally be a read-only user.
 | 
			
		||||
    bindDN: cn=admin,dc=example,dc=org
 | 
			
		||||
    bindPW: admin
 | 
			
		||||
 | 
			
		||||
    usernamePrompt: Email Address
 | 
			
		||||
 | 
			
		||||
    userSearch:
 | 
			
		||||
      baseDN: ou=People,dc=example,dc=org
 | 
			
		||||
      filter: "(objectClass=person)"
 | 
			
		||||
      username: mail
 | 
			
		||||
      # "DN" (case sensitive) is a special attribute name. It indicates that
 | 
			
		||||
      # this value should be taken from the entity's DN not an attribute on
 | 
			
		||||
      # the entity.
 | 
			
		||||
      idAttr: DN
 | 
			
		||||
      emailAttr: mail
 | 
			
		||||
      nameAttr: cn
 | 
			
		||||
 | 
			
		||||
    groupSearch:
 | 
			
		||||
      baseDN: ou=Groups,dc=example,dc=org
 | 
			
		||||
      filter: "(objectClass=groupOfNames)"
 | 
			
		||||
 | 
			
		||||
      userMatchers:
 | 
			
		||||
        # A user is a member of a group when their DN matches
 | 
			
		||||
        # the value of a "member" attribute on the group entity.
 | 
			
		||||
      - userAttr: DN
 | 
			
		||||
        groupAttr: member
 | 
			
		||||
 | 
			
		||||
      # The group name should be the "cn" value.
 | 
			
		||||
      nameAttr: cn
 | 
			
		||||
 | 
			
		||||
staticClients:
 | 
			
		||||
- id: example-app
 | 
			
		||||
  redirectURIs:
 | 
			
		||||
  - 'http://127.0.0.1:5555/callback'
 | 
			
		||||
  name: 'Example App'
 | 
			
		||||
  secret: ZXhhbXBsZS1hcHAtc2VjcmV0
 | 
			
		||||
							
								
								
									
										17
									
								
								examples/ldap/docker-compose.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								examples/ldap/docker-compose.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
version: "3"
 | 
			
		||||
 | 
			
		||||
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"]
 | 
			
		||||
    volumes:
 | 
			
		||||
    # https://github.com/osixia/docker-openldap#seed-ldap-database-with-ldif
 | 
			
		||||
    # Option 1: Add additional seed file by mounting to    /container/service/slapd/assets/config/bootstrap/ldif/custom/
 | 
			
		||||
    # Option 2: Overwrite default seed file by mounting to /container/service/slapd/assets/config/bootstrap/ldif/
 | 
			
		||||
    - ./config-ldap.ldif:/container/service/slapd/assets/config/bootstrap/ldif/custom/config-ldap.ldif
 | 
			
		||||
    ports:
 | 
			
		||||
    - 389:389
 | 
			
		||||
    - 636:636
 | 
			
		||||
		Reference in New Issue
	
	Block a user