Disable unused keyring
authorMathieu Baudier <mbaudier@argeo.org>
Sat, 17 Sep 2022 05:18:44 +0000 (07:18 +0200)
committerMathieu Baudier <mbaudier@argeo.org>
Sat, 17 Sep 2022 05:18:44 +0000 (07:18 +0200)
jcr/org.argeo.cms.jcr/src/org/argeo/cms/jcr/internal/CmsJcrDeployment.java
org.argeo.cms/src/org/argeo/cms/auth/UserAdminLoginModule.java

index ca25ddbdfd086fcf387ece13a62cb1cc9ccbfdd1..35800f8953a50f23812771cf6b912c7441013c02 100644 (file)
@@ -21,7 +21,6 @@ import java.util.Set;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
-import javax.security.auth.callback.CallbackHandler;
 import javax.servlet.Servlet;
 
 import org.apache.jackrabbit.commons.cnd.CndImporter;
@@ -35,12 +34,9 @@ import org.argeo.cms.jcr.internal.servlet.CmsRemotingServlet;
 import org.argeo.cms.jcr.internal.servlet.CmsWebDavServlet;
 import org.argeo.cms.jcr.internal.servlet.JcrHttpUtils;
 import org.argeo.cms.osgi.DataModelNamespace;
-import org.argeo.cms.security.CryptoKeyring;
-import org.argeo.cms.security.Keyring;
 import org.argeo.jcr.Jcr;
 import org.argeo.jcr.JcrException;
 import org.argeo.jcr.JcrUtils;
-import org.argeo.util.LangUtils;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
@@ -50,7 +46,6 @@ import org.osgi.framework.ServiceReference;
 import org.osgi.framework.wiring.BundleCapability;
 import org.osgi.framework.wiring.BundleWire;
 import org.osgi.framework.wiring.BundleWiring;
-import org.osgi.service.cm.ManagedService;
 import org.osgi.service.http.whiteboard.HttpWhiteboardConstants;
 import org.osgi.util.tracker.ServiceTracker;
 
@@ -246,21 +241,21 @@ public class CmsJcrDeployment {
                registerRepositoryServlets(CmsConstants.EGO_REPOSITORY, egoRepository);
 
                // Keyring only if Argeo extensions are available
-               if (argeoDataModelExtensionsAvailable) {
-                       new ServiceTracker<CallbackHandler, CallbackHandler>(bc, CallbackHandler.class, null) {
-
-                               @Override
-                               public CallbackHandler addingService(ServiceReference<CallbackHandler> reference) {
-                                       NodeKeyRing nodeKeyring = new NodeKeyRing(egoRepository);
-                                       CallbackHandler callbackHandler = bc.getService(reference);
-                                       nodeKeyring.setDefaultCallbackHandler(callbackHandler);
-                                       bc.registerService(LangUtils.names(Keyring.class, CryptoKeyring.class, ManagedService.class),
-                                                       nodeKeyring, LangUtils.dict(Constants.SERVICE_PID, CmsConstants.NODE_KEYRING_PID));
-                                       return callbackHandler;
-                               }
-
-                       }.open();
-               }
+//             if (argeoDataModelExtensionsAvailable) {
+//                     new ServiceTracker<CallbackHandler, CallbackHandler>(bc, CallbackHandler.class, null) {
+//
+//                             @Override
+//                             public CallbackHandler addingService(ServiceReference<CallbackHandler> reference) {
+//                                     NodeKeyRing nodeKeyring = new NodeKeyRing(egoRepository);
+//                                     CallbackHandler callbackHandler = bc.getService(reference);
+//                                     nodeKeyring.setDefaultCallbackHandler(callbackHandler);
+//                                     bc.registerService(LangUtils.names(Keyring.class, CryptoKeyring.class, ManagedService.class),
+//                                                     nodeKeyring, LangUtils.dict(Constants.SERVICE_PID, CmsConstants.NODE_KEYRING_PID));
+//                                     return callbackHandler;
+//                             }
+//
+//                     }.open();
+//             }
        }
 
        /** Session is logged out. */
index 4c9d094802026535e7525e543eab1494af113f9c..dd65755382ce727cc935374b87fdff52bace1841 100644 (file)
@@ -27,14 +27,12 @@ import javax.security.auth.spi.LoginModule;
 import org.argeo.api.cms.CmsConstants;
 import org.argeo.api.cms.CmsLog;
 import org.argeo.cms.internal.runtime.CmsContextImpl;
-import org.argeo.cms.security.CryptoKeyring;
 import org.argeo.osgi.useradmin.AuthenticatingUser;
 import org.argeo.osgi.useradmin.TokenUtils;
 import org.argeo.util.directory.ldap.IpaUtils;
 import org.argeo.util.naming.LdapAttrs;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.FrameworkUtil;
-import org.osgi.framework.ServiceReference;
 import org.osgi.service.useradmin.Authorization;
 import org.osgi.service.useradmin.Group;
 import org.osgi.service.useradmin.User;
@@ -248,28 +246,28 @@ public class UserAdminLoginModule implements LoginModule {
                CmsAuthUtils.addAuthorization(subject, authorization);
 
                // Unlock keyring (underlying login to the JCR repository)
-               char[] password = (char[]) sharedState.get(CmsAuthUtils.SHARED_STATE_PWD);
-               if (password != null) {
-                       ServiceReference<CryptoKeyring> keyringSr = bc.getServiceReference(CryptoKeyring.class);
-                       if (keyringSr != null) {
-                               CryptoKeyring keyring = bc.getService(keyringSr);
-                               Subject.doAs(subject, new PrivilegedAction<Void>() {
-
-                                       @Override
-                                       public Void run() {
-                                               try {
-                                                       keyring.unlock(password);
-                                               } catch (Exception e) {
-                                                       e.printStackTrace();
-                                                       log.warn("Could not unlock keyring with the password provided by " + authorization.getName()
-                                                                       + ": " + e.getMessage());
-                                               }
-                                               return null;
-                                       }
-
-                               });
-                       }
-               }
+//             char[] password = (char[]) sharedState.get(CmsAuthUtils.SHARED_STATE_PWD);
+//             if (password != null) {
+//                     ServiceReference<CryptoKeyring> keyringSr = bc.getServiceReference(CryptoKeyring.class);
+//                     if (keyringSr != null) {
+//                             CryptoKeyring keyring = bc.getService(keyringSr);
+//                             Subject.doAs(subject, new PrivilegedAction<Void>() {
+//
+//                                     @Override
+//                                     public Void run() {
+//                                             try {
+//                                                     keyring.unlock(password);
+//                                             } catch (Exception e) {
+//                                                     e.printStackTrace();
+//                                                     log.warn("Could not unlock keyring with the password provided by " + authorization.getName()
+//                                                                     + ": " + e.getMessage());
+//                                             }
+//                                             return null;
+//                                     }
+//
+//                             });
+//                     }
+//             }
 
                // Register CmsSession with initial subject
                CmsAuthUtils.registerSessionAuthorization(request, subject, authorization, locale);