module ActiveLDAP # Configuration # # Configuration provides the default settings required for # ActiveLDAP to work with your LDAP server. All of these # settings can be passed in at initialization time. module Configuration DEFAULT_CONFIG = {} DEFAULT_CONFIG[:host] = '127.0.0.1' DEFAULT_CONFIG[:port] = 389 DEFAULT_CONFIG[:method] = :plain # :ssl, :tls, :plain allowed DEFAULT_CONFIG[:bind_format] = "cn=%s,dc=localdomain" DEFAULT_CONFIG[:user] = ENV['USER'] DEFAULT_CONFIG[:password_block] = nil DEFAULT_CONFIG[:password] = nil DEFAULT_CONFIG[:store_password] = true DEFAULT_CONFIG[:allow_anonymous] = true DEFAULT_CONFIG[:sasl_quiet] = false DEFAULT_CONFIG[:try_sasl] = false DEFAULT_CONFIG[:retries] = 3 DEFAULT_CONFIG[:retry_wait] = 3 DEFAULT_CONFIG[:timeout] = 0 # in seconds; 0 <= Never timeout # Whether or not to retry on timeouts DEFAULT_CONFIG[:retry_on_timeout] = true # Whether to return objects by default from find/find_all DEFAULT_CONFIG[:return_objects] = false DEFAULT_CONFIG[:logger] = nil # On connect, this is overriden by the :base argument # # Set this to LDAP_SCOPE_SUBTREE if you have a LDAP tree where all # objects of the same class living in different parts of the same subtree, but # not. LDAP_SCOPE_ONELEVEL is for use when all the objects in your classes live # under one shared level (e.g. ou=People,dc=localdomain) # # This can be overriden on a per class basis in ldap_mapping :scope def Base.ldap_scope LDAP::LDAP_SCOPE_ONELEVEL end # On connect, this is overriden by the :base argument # Make the return value the string that is your LDAP base def Base.base 'dc=localdomain' end # This is optionally set to the array of objectClass names # that are minimally required for EVERY object on your LDAP server. # If you don't want one, set this to []. def Base.required_classes ['top'] end end end