authentication order has changed from 1.4.x to 1.5.x
----------------------------------------------------

                 Key: JCR-1977
                 URL: https://issues.apache.org/jira/browse/JCR-1977
             Project: Jackrabbit Content Repository
          Issue Type: Bug
          Components: jackrabbit-core
    Affects Versions: 1.5.2, 1.5.0
         Environment: JBoss 4.0.5 + deployed Liferay 4.2.2 on any Platform
            Reporter: Thomas Fromm
            Priority: Critical


In 1.4.x inside RepositoryImpl.login(...) at first the local configuration is 
checked for configured LoginModules and after it was unsuccessful, the JAAS 
component is asked:

          AuthContext authCtx;
            LoginModuleConfig lmc = repConfig.getLoginModuleConfig();
            if (lmc == null) {
                        authCtx = new AuthContext.JAAS(repConfig.getAppName(), 
credentials);
            } else {
...

With 1.5.x this behaviour has moved to SimpleSecurityManager.init(..) and is 
changed:
        LoginModuleConfig loginModConf = config.getLoginModuleConfig();
        authCtxProvider = new AuthContextProvider(config.getAppName(), 
loginModConf);
        if (authCtxProvider.isJAAS()) {
            log.info("init: using JAAS LoginModule configuration for " + 
config.getAppName());
        } else if (authCtxProvider.isLocal()) {
...

The problem is with JBoss JAAS implemantation, that authCtxProvider.isJAAS()  
is always true.
Because for any reason, the result of 
Configuration.getAppConfigurationEntry(appName) is never empty,
when a jaas.config is specified for Liferay. Using different appName takes no 
effect, always the configuration inside the jaas.config is used.

I think still first the local configuration should be concerned, before using 
JAAS.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to