List authProviders = moduleConfig.getChildren(CONF_AUTHPROVIDER);
Iterator iter = authProviders.iterator();
authenticationProviders = new HashMap(authProviders.size());
while (iter.hasNext()) {
Configuration authProviderConfig = (Configuration)iter.next();
AuthenticationProvider authProvider = new AuthenticationProvider(authProviderConfig);
if (!authProvider.isEnabled()) continue;
authenticationProviders.put(authProvider.getName(), authProvider);
Tracing.logInfo("Added authentication Provider: name='"
+ authProvider.getName() + "' enabled='" + (authProvider.isEnabled() ? "yes" : "no") + "'.", LoginModule.class);
}
Configuration defProviderConf = moduleConfig.getChild("DefaultAuthProvider");
if (defProviderConf == null)
throw new StartupException("No DefaultAuthProvider defined. Please fix.");
defaultProviderName = defProviderConf.getAttribute("name");
if (defaultProviderName == null)
throw new StartupException("No DefaultAuthProvider defined. Please fix.");
AuthenticationProvider defaultProvider = getAuthenticationProvider(defaultProviderName);
if (defaultProvider == null || !defaultProvider.isEnabled())
throw new StartupException("Defined DefaultAuthProvider::" + defaultProviderName + " not existent or not enabled. Please fix.");
Tracing.logInfo("Using default authentication provider '" + defaultProviderName + "'.", LoginModule.class);
// check attack prevention
Configuration attack_conf = moduleConfig.getChild(CONF_ATTACK);