对于client连接ldap server的策略,ldap3提供了4种选择,可以通过client_strategy设置Connection object应用哪种策略:
lSYNC
lASYNC
lRESTARTABLE
lREUSABLE
同步策略(SYNC, RESTARTABLE),所有的ldap操作返回True/False
异步策略(ASYNC, REUSABLE)返回一个msgid(一个数值),异步策略发送请求后不用等待响应,需要响应的时候直接使用get_response(message_id)获取结果。等待响应的超时时间可以通过get_response的timeout参数指定,默认10s。如果使用get_request=True in the get_response(),同时会返回发送的请求字典。
建立连接:
建立Server对象时使用get_info=ldap3.ALL参数,建立Connection连接之后可以获取到server信息(匿名获取),从中可以获取到域名信息,域控计算机名,ldap server支持的Extension和Control
建立Server时指定 active=True,建立连接前会先检查ldap server的可用性;active=5指定抛出 LDAPServerPoolExhaustedError异常之前重试的次数
exhaust=True : 如果ldap server不时active,server将会从pool中移除。exhaust=10:设置为数值,表示认为server 10s不可达,则认为它为offline,
When all servers in a pool are not available the strategy will wait for the number of seconds specified in ldap.
POOLING_LOOP_TI