X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fauth%2FAnonymousLoginModule.java;h=82873ad019db954f57059f60b8048d8c30a1d9ae;hb=e4a5502f49e2a2c35d16bbc96efdffead1362a76;hp=19c0d60edff4f892ec1170775bd28f452628b847;hpb=6d206b9052689ffa880cd4593bfefa704dc0dd46;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/auth/AnonymousLoginModule.java b/org.argeo.cms/src/org/argeo/cms/auth/AnonymousLoginModule.java index 19c0d60ed..82873ad01 100644 --- a/org.argeo.cms/src/org/argeo/cms/auth/AnonymousLoginModule.java +++ b/org.argeo.cms/src/org/argeo/cms/auth/AnonymousLoginModule.java @@ -7,25 +7,21 @@ import javax.security.auth.Subject; import javax.security.auth.callback.CallbackHandler; import javax.security.auth.login.LoginException; import javax.security.auth.spi.LoginModule; -import javax.servlet.http.HttpServletRequest; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.argeo.cms.CmsException; -import org.osgi.framework.BundleContext; -import org.osgi.framework.FrameworkUtil; +import org.argeo.api.cms.CmsLog; +import org.argeo.cms.internal.runtime.CmsContextImpl; import org.osgi.service.useradmin.Authorization; import org.osgi.service.useradmin.UserAdmin; /** Anonymous CMS user */ public class AnonymousLoginModule implements LoginModule { - private final static Log log = LogFactory.getLog(AnonymousLoginModule.class); + private final static CmsLog log = CmsLog.getLog(AnonymousLoginModule.class); private Subject subject; private Map sharedState = null; // private state - private BundleContext bc; +// private BundleContext bc; @SuppressWarnings("unchecked") @Override @@ -33,12 +29,12 @@ public class AnonymousLoginModule implements LoginModule { Map options) { this.subject = subject; this.sharedState = (Map) sharedState; - try { - bc = FrameworkUtil.getBundle(AnonymousLoginModule.class).getBundleContext(); - assert bc != null; - } catch (Exception e) { - throw new CmsException("Cannot initialize login module", e); - } +// try { +// bc = FrameworkUtil.getBundle(AnonymousLoginModule.class).getBundleContext(); +// assert bc != null; +// } catch (Exception e) { +// throw new IllegalStateException("Cannot initialize login module", e); +// } } @Override @@ -48,13 +44,13 @@ public class AnonymousLoginModule implements LoginModule { @Override public boolean commit() throws LoginException { - UserAdmin userAdmin = bc.getService(bc.getServiceReference(UserAdmin.class)); + UserAdmin userAdmin = CmsContextImpl.getCmsContext().getUserAdmin(); Authorization authorization = userAdmin.getAuthorization(null); - HttpServletRequest request = (HttpServletRequest) sharedState.get(CmsAuthUtils.SHARED_STATE_HTTP_REQUEST); + RemoteAuthRequest request = (RemoteAuthRequest) sharedState.get(CmsAuthUtils.SHARED_STATE_HTTP_REQUEST); Locale locale = Locale.getDefault(); if (request != null) locale = request.getLocale(); - CmsAuthUtils.addAuthorization(subject, authorization, locale, request); + CmsAuthUtils.addAuthorization(subject, authorization); CmsAuthUtils.registerSessionAuthorization(request, subject, authorization, locale); if (log.isTraceEnabled()) log.trace("Anonymous logged in to CMS: " + subject); @@ -63,7 +59,6 @@ public class AnonymousLoginModule implements LoginModule { @Override public boolean abort() throws LoginException { - // authorization = null; return true; }