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)
- 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
const string &ldap_dnattr = cct->_conf->rgw_ldap_dnattr;
std::string ldap_bindpw = parse_rgw_ldap_bindpw(cct);
+ if (ldap_uri.empty()) {
+ derr << "LDAP not started since no server URIs were provided in the configuration." << dendl;
+ return;
+ }
+
ldh.reset(new rgw::LDAPHelper(ldap_uri, ldap_binddn,
ldap_bindpw.c_str(), ldap_searchdn, ldap_searchfilter, ldap_dnattr));
ldh->init();
fe->stop();
}
- ldh.reset(nullptr); // deletes
+ ldh.reset(nullptr); // deletes ldap helper if it was created
rgw_log_usage_finalize();
delete olog;