package io.cattle.platform.iaas.api.auth.integration.ldap.OpenLDAP; import io.cattle.platform.iaas.api.auth.SecurityConstants; import io.cattle.platform.iaas.api.auth.integration.interfaces.Configurable; import io.cattle.platform.iaas.api.auth.integration.interfaces.Provider; import org.apache.commons.lang3.StringUtils; public abstract class OpenLDAPConfigurable implements Configurable, Provider { @Override public boolean isConfigured() { boolean allProps = StringUtils.isNotBlank(OpenLDAPConstants.USER_LOGIN_FIELD.get()) && StringUtils.isNotBlank(String.valueOf(OpenLDAPConstants.LDAP_PORT.get())) && StringUtils.isNotBlank(OpenLDAPConstants.LDAP_SERVER.get()) && StringUtils.isNotBlank(OpenLDAPConstants.SERVICE_ACCOUNT_USER.get()) && StringUtils.isNotBlank(OpenLDAPConstants.SERVICE_ACCOUNT_PASSWORD.get()) && StringUtils.isNotBlank(OpenLDAPConstants.USER_SEARCH_FIELD.get()) && StringUtils.isNotBlank(OpenLDAPConstants.USER_OBJECT_CLASS.get()) && StringUtils.isNotBlank(OpenLDAPConstants.USER_NAME_FIELD.get()) && StringUtils.isNotBlank(OpenLDAPConstants.GROUP_SEARCH_FIELD.get()) && StringUtils.isNotBlank(OpenLDAPConstants.GROUP_OBJECT_CLASS.get()) && StringUtils.isNotBlank(OpenLDAPConstants.GROUP_NAME_FIELD.get()) && StringUtils.isNotBlank(OpenLDAPConstants.USER_MEMBER_ATTRIBUTE.get()) && StringUtils.isNotBlank(OpenLDAPConstants.GROUP_MEMBER_MAPPING_ATTRIBUTE.get()) && StringUtils.isNotBlank(OpenLDAPConstants.LDAP_DOMAIN.get()); return StringUtils.equalsIgnoreCase(SecurityConstants.AUTH_PROVIDER.get(), OpenLDAPConstants.CONFIG) && allProps; } @Override public String providerType() { return OpenLDAPConstants.CONFIG; } public Boolean getEnabled(){ return isConfigured(); } }