##############################################################
#  LDAP/ACTIVE DIRECTORY USER PLUGIN SETTINGS
#
# Any of these directives that are required, are only required if the
# userplugin parameter is set to ldap.

# LDAP host name/IP address
# Optional, default = localhost
ldap_host = localhost

# LDAP port
# Optional, default = 389
# Use 636 for ldaps
ldap_port = 389

# LDAP protocol
# Optional, default = ldap
# use 'ldaps' for SSL encryption. Make sure /etc/ldap/ldap.conf is
# configured correctly with TLS_CACERT
ldap_protocol = ldap

# The charset that strings are stored in on the LDAP server. Normally this
# is utf-8, but this can differ according to your setup. The charset specified
# here must be supported by your iconv(1) setup. See iconv -l for all charset
ldap_server_charset = utf-8

# The DN of the user to bind as for normal operations (not used for
# authentication if ldap_authentication_method is set to "bind"
# Optional, default = empty (anonymous bind)
# The userPassword attribute must be readable for this user if the
# ldap_authentication_method option is set to password.
ldap_bind_user =

# LDAP bind password
# Optional, default = empty (no password)
ldap_bind_passwd = 

# The timeout for network operations in seconds
ldap_network_timeout = 30

# Search for users starting from this DN
# Required
ldap_user_search_base = cn=users,dc=zarafa,dc=com

# Search method to find a user, can be: base, one or sub
# Default: sub
ldap_user_scope = sub

# Search for users using this LDAP filter.  See ldap_search(3) or RFC
# 2254 for details on the filter syntax.
# Optional, default = empty (match everything)
# For active directory, use:
#   (&(objectClass=person)(objectCategory=CN=Person,CN=Schema,CN=Configuration,DC=zarafa,DC=com))
# For LDAP with posix users, use:
#   (objectClass=posixAccount)
ldap_user_search_filter = (objectClass=posixAccount)

# unique user id for find the user
# Required
# For active directory, use:
#    objectSid
# For LDAP with posixAccount, use:
#    uidNumber
ldap_user_unique_attribute = uidNumber

# Type of unique user id
# default: text
# For active directory, use:
#		binary
# For LDAP with posix user, use:
#		text
ldap_user_unique_attribute_type = text

# Search for groups starting from this DN
# Required
ldap_group_search_base = cn=groups,dc=zarafa,dc=com

# Search method to find a group, can be: base, one or sub
# Default: sub
ldap_group_scope = sub

# Search for groups using this LDAP filter.  See ldap_search(3) for
# details on the filter syntax.
# Optional, default = empty (match everything)
# For active directory, use:
#   (objectClass=group)
# For LDAP with posix groups, use:
#   (objectClass=posixGroup)
ldap_group_search_filter = (objectClass=posixGroup)

# unique group id for find the group
# Required
# For active directory, use:
#    objectSid
# For LDAP with posix group, use:
#    gidNumber
ldap_group_unique_attribute = gidNumber

# Type of unique group id
# default: text
# For active directory, use:
#		binary
# For LDAP with posix group, use:
#		text
ldap_group_unique_attribute_type = text

# Optional, default = cn
# For active directory, use:
#   displayName
# For LDAP with posix user, use:
#   cn
ldap_fullname_attribute = cn

# Optional, default = uid
# Active directory: sAMAccountName
# LDAP: uid
ldap_loginname_attribute = uid

# Optional, default = userPassword
# Active directory: unicodePwd
# LDAP: userPassword
ldap_password_attribute = userPassword

# Optional, default = mail
# Active directory: mail
# LDAP: mail
ldap_emailaddress_attribute = mail

# Optional, default = userCertificate
# Active directory: userCertificate
# LDAP: userCertificate
ldap_user_certificate_attribute = userCertificate

# Whether the user is an admin.  The field is interpreted as a
# boolean, 0 and false (case insensitive) meaning no, all other values
# yes.
# Optional, default = zarafaAdmin
# Active directory: zarafaAdmin
# LDAP: zarafaAdmin
ldap_isadmin_attribute = zarafaAdmin

# Whether a user is a non-active user. This means that the user will
# not count towards your user count, but the user will also not be
# able to log in
# Optional, default = empty
# Active directory: zarafaSharedStoreOnly
# LDAP: zarafaSharedStoreOnly
ldap_nonactive_attribute =

# If set to bind, users are authenticated by trying to bind to the
# LDAP tree using their username + password.  Otherwise, the
# ldap_password_attribute is requested and checked.
# Optional, default = bind
# Choices: bind, password
# Active directory: bind
# LDAP: password
ldap_authentication_method = bind

# Optional, default = cn
# Active directory: cn
# LDAP: cn
ldap_groupname_attribute = cn

# Optional, default = member
# Active directory: member
# LDAP: member
ldap_groupmembers_attribute = member

# Optional, default = text
# Active directory: dn
# LDAP: text
ldap_groupmembers_attribute_type = text

# The attribute of the user which is listed in ldap_groupmember_attribute
# Empty default, using ldap_user_unique_attribute
ldap_groupmembers_relation_attribute =

# Optional
# The attribute which indicates which users are allowed
# to send on bahalf of the selected user
ldap_user_sendas_attribute = zarafaSendAsPrivilege

# Optional, default = text
ldap_user_sendas_attribute_type = text

# The attribute of the user which is listed in the
# ldap_company_view_attribute
# Empty default, using ldap_user_unique_attribute
ldap_user_sendas_relation_attribute =

# unique company id for find the company
# Default: ou
ldap_company_unique_attribute = ou

# Optional, default = text
# Active directory: dn
# LDAP: text
ldap_company_unique_attribute_type = text

# Search for companies starting from this DN
# Required
ldap_company_search_base = dc=zarafa,dc=com

# Search method to find a company, can be: base, one or sub
# Default: sub
ldap_company_scope = sub

# Search for companies using this LDAP filter.  See ldap_search(3) or RFC
# 2254 for details on the filter syntax.
# Optional, default = empty (match everything)
# For active directory, use:
#   (&(objectClass=organizationalUnit)(objectCategory=CN=Organization,CN=Schema,CN=Configuration,DC=zarafa,DC=com))
# For LDAP with posix users, use:
#   (objectClass=organizationalUnit)
ldap_company_search_filter = (objectClass=organizationalUnit)

# Optional, default = cn
# Active directory: cn
# LDAP: cn
ldap_companyname_attribute = cn

# Optional
# The attribute which indicates which companies are allowed
# to view the members of the selected company
ldap_company_view_attribute = zarafaViewPrivilege

# Optional, default = text
ldap_company_view_attribute_type = text

# The attribute of the company which is listed in the
# ldap_company_view_attribute
# Empty default, using ldap_company_unique_attribute
ldap_company_view_relation_attribute =

# Optional
# The attribute which indicates which users from different companies
# are administrator over the selected company.
ldap_company_admin_attribute = zarafaAdminPrivilege

# Optional, default = text
# Active directory: dn
# LDAP: text
ldap_company_admin_attribute_type = text

# The attribute of the company which is listed in the
# ldap_company_admin_attribute
# Empty default, using ldap_user_unique_attribute
ldap_company_admin_relation_attribute = 

# The attribute which indicates which user is the system administrator
# for the specified company.
ldap_company_system_admin_attribute = zarafaSystemAdmin

# Optional, default = text
# Active directory: dn
# LDAP: text
ldap_company_system_admin_attribute_type = text

# The attribute of the company which is listed in the
# ldap_company_system_admin attribute
# Empty default, using ldap_user_unique_attribute
ldap_company_system_admin_relation_attribute =

# Optional
# The attribute which indicates which users (besides the user who exceeds his quota)
# should also receive a warning mail when a user exceeds his quota.
ldap_quota_userwarning_recipients_attribute = zarafaQuotaUserWarningRecipients

# Optional, default = text
# Active directory: dn
# LDAP: text
ldap_quota_userwarning_recipients_attribute_type = text

# Optional, default empty
ldap_quota_userwarning_recipients_relation_attribute =

# Optional
# The attribute which indicates which users should receive a warning mail
# when a company exceeds his quota.
ldap_quota_companywarning_recipients_attribute = zarafaQuotaCompanyWarningRecipients

# Optional, default = text
# Active directory: dn
# LDAP: text
ldap_quota_companywarning_recipients_attribute_type = text

# Optional, default empty
ldap_quota_companywarning_recipients_relation_attribute=

# Whether to override the system wide quota settings
ldap_quotaoverride_attribute = zarafaQuotaOverride

ldap_warnquota_attribute = zarafaQuotaWarn
ldap_softquota_attribute = zarafaQuotaSoft
ldap_hardquota_attribute = zarafaQuotaHard

# Whether to override the system wide quota settings for all users within the company
ldap_userdefault_quotaoverride_attribute = zarafaUserDefaultQuotaOverride

ldap_userdefault_warnquota_attribute = zarafaUserDefaultQuotaWarn
ldap_userdefault_softquota_attribute = zarafaUserDefaultQuotaSoft
ldap_userdefault_hardquota_attribute = zarafaUserDefaultQuotaHard

# Mapping from the quota attributes to a number of bytes.  Qmail-LDAP
# schema uses bytes (1), ADS uses kilobytes (1024).
ldap_quota_multiplier = 1

# The attribute which contains the department name for the user
ldap_user_department_attribute = departmentNumber

# The attribute which contains the location of the user
ldap_user_location_attribute = physicalDeliveryOfficeName

# The attribute which contains the telephone number of the user
ldap_user_telephone_attribute = telephoneNumber

# The attribute which contains the fax number for the user
ldap_user_fax_attribute = facsimileTelephoneNumber

# When an object (user/group/company) is changed, this attribute will also change:
# Active directory: uSNChanged
# LDAP: modifyTimestamp
ldap_last_modification_attribute = modifyTimestamp

# LDAP object search filter. %s in this filter will be replaced with
# the object being searched.
# Default: empty
# ADS recommended: (anr=%s)
# OpenLDAP optional: (|(mail=%s*)(uid=%s*)(cn=*%s*)(fullname=*%s*)(givenname=*%s*)(lastname=*%s*)(sn=*%s*))
ldap_object_search_filter = 

# LDAP search filter limiter. Limits number of objects that are attempted in a single LDAP filter
# Default: 1000
ldap_filter_cutoff_elements = 1000

# This is the subtree entry where the addresslists are defined in the LDAP server
ldap_addresslist_search_base = cn=addresslists,dc=zarafa,dc=com

# This value can be one of three values: base, one or sub
ldap_addresslist_scope = sub

# Add a filter to the addresslist search
ldap_addresslist_search_filter = (objectClass=zarafaAddressList)

# This is the unique attribute of a addresslist which is never going
# to change, unless the addresslist is removed from LDAP. When this
# value changes, Zarafa will remove the previous addresslist from the
# database, and create a new addresslist with this unique value
ldap_addresslist_unique_attribute = cn

# This value can be 'text' or 'binary'. For OpenLDAP, only text is used.
ldap_addresslist_unique_attribute_type = text

# This is the name of the attribute on the addresslist object that
# specifies the filter to be applied for this addresslist. All users
# matching this filter AND matching the default
# ldap_user_search_filter will be included in the addresslist
ldap_addresslist_filter_attribute = zarafaFilter

# The attribute containing the name of the addresslist
ldap_addresslist_name_attribute = cn
