LDAP tries to bind the URI configuration option when RGW starts. The
default value is an example used to show the form of the URI and is
not itself valid. The default value is used, unless overrideen, and
can cause delays in start-up in some situations. The example is now
provided in the description and the default is the empty string.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
(cherry picked from commit
236f1dfa9ae507940a53301f31da7974456c82fe)
Conflicts:
src/rgw/librgw.cc
- changes here were in rgw_appmain.cc in main branch
- name: rgw_ldap_uri
type: str
level: advanced
- desc: Space-separated list of LDAP servers in URI format.
- default: ldaps://<ldap.your.domain>
+ desc: Space-separated list of LDAP servers in URI format, e.g., "ldaps://<ldap.your.domain>".
+ default:
services:
- rgw
with_legacy: true
store->ctx()->_conf->rgw_ldap_dnattr;
std::string ldap_bindpw = parse_rgw_ldap_bindpw(store->ctx());
- ldh = new rgw::LDAPHelper(ldap_uri, ldap_binddn, ldap_bindpw.c_str(),
- ldap_searchdn, ldap_searchfilter, ldap_dnattr);
- ldh->init();
- ldh->bind();
+ if (! ldap_uri.empty()) {
+ ldh = new rgw::LDAPHelper(ldap_uri, ldap_binddn, ldap_bindpw.c_str(),
+ ldap_searchdn, ldap_searchfilter, ldap_dnattr);
+ ldh->init();
+ ldh->bind();
+ }
rgw_log_usage_init(g_ceph_context, store);