# provider slapd config -- for testing
# $OpenLDAP$
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
##
## Copyright 1998-2026 The OpenLDAP Foundation.
## All rights reserved.
##
## Redistribution and use in source and binary forms, with or without
## modification, are permitted only as authorized by the OpenLDAP
## Public License.
##
## A copy of this license is available in the file LICENSE in the
## top-level directory of the distribution or, alternatively, at
## <http://www.OpenLDAP.org/license.html>.

#ucdata-path	./ucdata
include		@SCHEMADIR@/core.schema
include		@SCHEMADIR@/cosine.schema
include		@SCHEMADIR@/inetorgperson.schema
include		@SCHEMADIR@/openldap.schema
include		@SCHEMADIR@/nis.schema
pidfile		@TESTDIR@/slapd.1.pid
argsfile	@TESTDIR@/slapd.1.args

#mod#modulepath	../servers/slapd/back-@BACKEND@/
#mod#moduleload	back_@BACKEND@.la
#ldapmod#modulepath ../servers/slapd/back-ldap/
#ldapmod#moduleload back_ldap.la

#######################################################################
# database definitions
#######################################################################

authz-regexp	"^uid=([^,]+),.*" "uid=$1,ou=People,dc=example,dc=com"

#
# normal installations should protect root dse,
# cn=monitor, cn=schema, and cn=config
#

access to attrs=userpassword
	by self =wx
	by anonymous =x

access to *
	by * read

# groups branch
database        ldap
suffix          "ou=Groups,dc=example,dc=com"
subordinate
uri             "@URI3@"
# FIXME: doesn't work with authz=native
#sasl#idassert-bind	bindmethod=sasl authcid=proxy credentials=proxy @SASL_MECH@ mode=self
#nosasl#idassert-bind	bindmethod=simple binddn="uid=proxy,ou=Groups,dc=example,dc=com" credentials=proxy mode=self

# people branch
database        ldap
suffix          "ou=People,dc=example,dc=com"
subordinate
uri             "@URI2@"
# FIXME: doesn't work with authz=native
#sasl#idassert-bind	bindmethod=sasl authcid=proxy credentials=proxy @SASL_MECH@ mode=self
#nosasl#idassert-bind	bindmethod=simple binddn="uid=proxy,ou=People,dc=example,dc=com" credentials=proxy mode=self

# root
database        @BACKEND@
suffix          "dc=example,dc=com"
rootdn		"cn=Manager,dc=example,dc=com"
rootpw		secret
#~null~#directory	@TESTDIR@/db.1.a
#indexdb#index		objectClass	eq
#indexdb#index		cn,sn,uid	pres,eq,sub

database	monitor
