You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by en...@apache.org on 2011/11/30 04:05:54 UTC
svn commit: r1208229 - in /sling/trunk/bundles/jcr:
contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/
jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/
Author: enorman
Date: Wed Nov 30 03:05:52 2011
New Revision: 1208229
URL: http://svn.apache.org/viewvc?rev=1208229&view=rev
Log:
SLING-2308 Remove user password digesting from sling
Modified:
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentImporter.java
sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/JcrContentHelper.java
sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/AbstractUserPostServlet.java
sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java
sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java
Modified: sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java?rev=1208229&r1=1208228&r2=1208229&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java (original)
+++ sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/ContentLoaderService.java Wed Nov 30 03:05:52 2011
@@ -18,10 +18,7 @@
*/
package org.apache.sling.jcr.contentloader.internal;
-import java.io.UnsupportedEncodingException;
-import java.security.NoSuchAlgorithmException;
import java.util.Calendar;
-import java.util.Dictionary;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -69,16 +66,6 @@ public class ContentLoaderService implem
public static final String BUNDLE_CONTENT_NODE = "/var/sling/bundle-content";
- /**
- * To be used for the encryption. E.g. for passwords in
- * {@link javax.jcr.SimpleCredentials#getPassword()} SimpleCredentials}
- *
- * @scr.property valueRef="DEFAULT_PASSWORD_DIGEST_ALGORITHM"
- */
- private static final String PROP_PASSWORD_DIGEST_ALGORITHM = "password.digest.algorithm";
- private static final String DEFAULT_PASSWORD_DIGEST_ALGORITHM = "sha1";
- private String passwordDigestAlgoritm = null;
-
/** default log */
final Logger log = LoggerFactory.getLogger(getClass());
@@ -215,27 +202,6 @@ public class ContentLoaderService implem
}
}
- /**
- * Digest the given password using the configured digest algorithm
- *
- * @param pwd the value to digest
- * @return the digested value
- * @throws IllegalArgumentException
- */
- public String digestPassword(String pwd) throws IllegalArgumentException {
- try {
- StringBuffer password = new StringBuffer();
- password.append("{").append(passwordDigestAlgoritm).append("}");
- password.append(DefaultContentCreator.digest(passwordDigestAlgoritm,
- pwd.getBytes("UTF-8")));
- return password.toString();
- } catch (NoSuchAlgorithmException e) {
- throw new IllegalArgumentException(e.toString());
- } catch (UnsupportedEncodingException e) {
- throw new IllegalArgumentException(e.toString());
- }
- }
-
// ---------- SCR Integration ---------------------------------------------
/** Activates this component, called by SCR before registering as a service */
@@ -245,14 +211,6 @@ public class ContentLoaderService implem
componentContext.getBundleContext().addBundleListener(this);
- Dictionary<?, ?> props = componentContext.getProperties();
- Object propValue = props.get(PROP_PASSWORD_DIGEST_ALGORITHM);
- if (propValue instanceof String) {
- passwordDigestAlgoritm = (String) propValue;
- } else {
- passwordDigestAlgoritm = DEFAULT_PASSWORD_DIGEST_ALGORITHM;
- }
-
Session session = null;
try {
session = this.getSession();
@@ -307,7 +265,6 @@ public class ContentLoaderService implem
this.initialContentLoader.dispose();
this.initialContentLoader = null;
}
- passwordDigestAlgoritm = null;
}
// ---------- internal helper ----------------------------------------------
Modified: sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java?rev=1208229&r1=1208228&r2=1208229&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java (original)
+++ sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentCreator.java Wed Nov 30 03:05:52 2011
@@ -842,9 +842,8 @@ public class DefaultContentCreator imple
Authorizable authorizable = userManager.getAuthorizable(name);
if (authorizable == null) {
//principal does not exist yet, so create it
- String digestedPassword = jcrContentHelper.digestPassword(password);
User user = userManager.createUser(name,
- digestedPassword,
+ password,
new Principal() {
public String getName() {
return name;
Modified: sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentImporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentImporter.java?rev=1208229&r1=1208228&r2=1208229&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentImporter.java (original)
+++ sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/DefaultContentImporter.java Wed Nov 30 03:05:52 2011
@@ -22,10 +22,7 @@ import static javax.jcr.ImportUUIDBehavi
import java.io.IOException;
import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
-import java.util.Dictionary;
import java.util.List;
import javax.jcr.InvalidSerializedDataException;
@@ -37,7 +34,6 @@ import org.apache.sling.commons.mime.Mim
import org.apache.sling.jcr.contentloader.ContentImportListener;
import org.apache.sling.jcr.contentloader.ContentImporter;
import org.apache.sling.jcr.contentloader.ImportOptions;
-import org.osgi.service.component.ComponentContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -68,17 +64,6 @@ public class DefaultContentImporter exte
*/
private MimeTypeService mimeTypeService;
- /**
- * To be used for the encryption. E.g. for passwords in
- * {@link javax.jcr.SimpleCredentials#getPassword()} SimpleCredentials}
- *
- * @scr.property valueRef="DEFAULT_PASSWORD_DIGEST_ALGORITHM"
- */
- private static final String PROP_PASSWORD_DIGEST_ALGORITHM = "password.digest.algorithm";
- private static final String DEFAULT_PASSWORD_DIGEST_ALGORITHM = "sha1";
- private String passwordDigestAlgoritm = null;
-
-
/* (non-Javadoc)
* @see org.apache.sling.jcr.contentloader.ContentImporter#importContent(javax.jcr.Node, java.lang.String, java.io.InputStream, org.apache.sling.jcr.contentloader.ImportOptions, org.apache.sling.jcr.contentloader.ContentImportListener)
*/
@@ -215,23 +200,6 @@ public class DefaultContentImporter exte
// ---------- JcrContentHelper implementation ---------------------------------------------
/* (non-Javadoc)
- * @see org.apache.sling.jcr.contentloader.internal.JcrContentHelper#digestPassword(java.lang.String)
- */
- public String digestPassword(String pwd) throws IllegalArgumentException {
- try {
- StringBuffer password = new StringBuffer();
- password.append("{").append(passwordDigestAlgoritm).append("}");
- password.append(DefaultContentCreator.digest(passwordDigestAlgoritm,
- pwd.getBytes("UTF-8")));
- return password.toString();
- } catch (NoSuchAlgorithmException e) {
- throw new IllegalArgumentException(e.toString());
- } catch (UnsupportedEncodingException e) {
- throw new IllegalArgumentException(e.toString());
- }
- }
-
- /* (non-Javadoc)
* @see org.apache.sling.jcr.contentloader.internal.JcrContentHelper#getMimeType(java.lang.String)
*/
public String getMimeType(String name) {
@@ -241,23 +209,4 @@ public class DefaultContentImporter exte
return (mts != null) ? mts.getMimeType(name) : null;
}
-
- // ---------- SCR Integration ---------------------------------------------
-
- /** Activates this component, called by SCR before registering as a service */
- protected void activate(ComponentContext componentContext) {
- Dictionary<?, ?> props = componentContext.getProperties();
- Object propValue = props.get(PROP_PASSWORD_DIGEST_ALGORITHM);
- if (propValue instanceof String) {
- passwordDigestAlgoritm = (String) propValue;
- } else {
- passwordDigestAlgoritm = DEFAULT_PASSWORD_DIGEST_ALGORITHM;
- }
- }
-
- /** Deativates this component, called by SCR to take out of service */
- protected void deactivate(ComponentContext componentContext) {
- passwordDigestAlgoritm = null;
- }
-
}
Modified: sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/JcrContentHelper.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/JcrContentHelper.java?rev=1208229&r1=1208228&r2=1208229&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/JcrContentHelper.java (original)
+++ sling/trunk/bundles/jcr/contentloader/src/main/java/org/apache/sling/jcr/contentloader/internal/JcrContentHelper.java Wed Nov 30 03:05:52 2011
@@ -31,13 +31,4 @@ public interface JcrContentHelper {
*/
String getMimeType(String name);
- /**
- * Digest the given password using the configured digest algorithm
- *
- * @param pwd the password to digest
- * @return digested password
- * @throws IllegalArgumentException
- */
- String digestPassword(String pwd) throws IllegalArgumentException;
-
}
Modified: sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/AbstractUserPostServlet.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/AbstractUserPostServlet.java?rev=1208229&r1=1208228&r2=1208229&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/AbstractUserPostServlet.java (original)
+++ sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/AbstractUserPostServlet.java Wed Nov 30 03:05:52 2011
@@ -16,12 +16,7 @@
*/
package org.apache.sling.jackrabbit.usermanager.impl.post;
-import java.io.UnsupportedEncodingException;
-import java.security.NoSuchAlgorithmException;
-import java.util.Dictionary;
-
import org.apache.felix.scr.annotations.Component;
-import org.apache.jackrabbit.util.Text;
import org.osgi.service.component.ComponentContext;
/**
@@ -30,70 +25,16 @@ import org.osgi.service.component.Compon
@Component (componentAbstract=true)
public abstract class AbstractUserPostServlet extends
AbstractAuthorizablePostServlet {
- private static final long serialVersionUID = -8401210711297654453L;
-
- /**
- * To be used for the encryption. E.g. for passwords in
- * {@link javax.jcr.SimpleCredentials#getPassword()} SimpleCredentials}
- *
- * @scr.property valueRef="DEFAULT_PASSWORD_DIGEST_ALGORITHM"
- */
- private static final String PROP_PASSWORD_DIGEST_ALGORITHM = "password.digest.algorithm";
-
- private static final String DEFAULT_PASSWORD_DIGEST_ALGORITHM = "sha1";
- private String passwordDigestAlgoritm = null;
+ private static final long serialVersionUID = 8292047684552692610L;
- // ---------- SCR Integration ----------------------------------------------
+ // ---------- SCR Integration ----------------------------------------------
- protected void activate(ComponentContext context) {
+ protected void activate(ComponentContext context) {
super.activate(context);
-
- Dictionary<?, ?> props = context.getProperties();
-
- Object propValue = props.get(PROP_PASSWORD_DIGEST_ALGORITHM);
- if (propValue instanceof String) {
- passwordDigestAlgoritm = (String) propValue;
- } else {
- passwordDigestAlgoritm = DEFAULT_PASSWORD_DIGEST_ALGORITHM;
- }
}
protected void deactivate(ComponentContext context) {
super.deactivate(context);
- passwordDigestAlgoritm = null;
}
-
- /**
- * Digest the given password using the configured digest algorithm
- *
- * @param pwd the value to digest
- * @return the digested value
- * @throws IllegalArgumentException
- */
- protected String digestPassword(String pwd) throws IllegalArgumentException {
- return digestPassword(pwd, passwordDigestAlgoritm);
- }
-
- /**
- * Digest the given password using the given digest algorithm
- *
- * @param pwd the value to digest
- * @param digest the digest algorithm to use for digesting
- * @return the digested value
- * @throws IllegalArgumentException
- */
- protected String digestPassword(String pwd, String digest) throws IllegalArgumentException {
- try {
- StringBuffer password = new StringBuffer();
- password.append("{").append(digest).append("}");
- password.append(Text.digest(digest, pwd.getBytes("UTF-8")));
- return password.toString();
- } catch (NoSuchAlgorithmException e) {
- throw new IllegalArgumentException(e.toString());
- } catch (UnsupportedEncodingException e) {
- throw new IllegalArgumentException(e.toString());
- }
- }
-
}
Modified: sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java?rev=1208229&r1=1208228&r2=1208229&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java (original)
+++ sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java Wed Nov 30 03:05:52 2011
@@ -233,7 +233,7 @@ public class ChangeUserPasswordServlet e
}
try {
- ((User) authorizable).changePassword(digestPassword(newPassword));
+ ((User) authorizable).changePassword(newPassword);
String userPath = AuthorizableResourceProvider.SYSTEM_USER_MANAGER_GROUP_PREFIX
+ user.getID();
Modified: sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java?rev=1208229&r1=1208228&r2=1208229&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java (original)
+++ sling/trunk/bundles/jcr/jackrabbit-usermanager/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java Wed Nov 30 03:05:52 2011
@@ -293,7 +293,7 @@ public class CreateUserServlet extends A
"A principal already exists with the requested name: "
+ name);
} else {
- user = userManager.createUser(name, digestPassword(password));
+ user = userManager.createUser(name, password);
String userPath = AuthorizableResourceProvider.SYSTEM_USER_MANAGER_USER_PREFIX
+ user.getID();