This is an automated email from the ASF dual-hosted git repository.

enorman pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-jcr-jackrabbit-usermanager.git


The following commit(s) were added to refs/heads/master by this push:
     new 31f4bc3  SLING-9809 Remove loginAdministrative() usage from 
o.a.s.jcr.jackrabbit.usermanager
31f4bc3 is described below

commit 31f4bc3bceb06af8591f34a7be90e9778c01cefb
Author: Eric Norman <[email protected]>
AuthorDate: Sat Oct 10 17:48:47 2020 -0700

    SLING-9809 Remove loginAdministrative() usage from
    o.a.s.jcr.jackrabbit.usermanager
---
 pom.xml                                                    |  6 ++++++
 .../usermanager/impl/post/ChangeUserPasswordServlet.java   |  2 +-
 .../usermanager/impl/post/CreateUserServlet.java           |  2 +-
 .../jackrabbit/usermanager/it/UserManagerTestSupport.java  | 14 ++++++++++++++
 4 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/pom.xml b/pom.xml
index 6b2c905..828c719 100644
--- a/pom.xml
+++ b/pom.xml
@@ -134,6 +134,12 @@
         </dependency>
         <dependency>
             <groupId>org.apache.sling</groupId>
+            <artifactId>org.apache.sling.jcr.api</artifactId>
+            <version>2.3.0</version>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.sling</groupId>
             <artifactId>org.apache.sling.jcr.base</artifactId>
             <version>2.0.6</version>
             <scope>provided</scope>
diff --git 
a/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java
 
b/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java
index 639e4a8..8a20afa 100644
--- 
a/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java
+++ 
b/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/ChangeUserPasswordServlet.java
@@ -297,7 +297,7 @@ public class ChangeUserPasswordServlet extends 
AbstractAuthorizablePostServlet i
                     //   do the work on their behalf as a service user
                     Session svcSession = null;
                     try {
-                        svcSession = repository.loginAdministrative(null);
+                        svcSession = repository.loginService(null, null);
                         UserManager um = 
AccessControlUtil.getUserManager(svcSession);
                         User user2 = (User) um.getAuthorizable(name);
                         user2.changePassword(newPassword, oldPassword);
diff --git 
a/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java
 
b/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java
index 8b5ab29..34285c1 100644
--- 
a/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java
+++ 
b/src/main/java/org/apache/sling/jackrabbit/usermanager/impl/post/CreateUserServlet.java
@@ -151,7 +151,7 @@ public class CreateUserServlet extends 
AbstractAuthorizablePostServlet implement
      * Returns an administrative session to the default workspace.
      */
     private Session getSession() throws RepositoryException {
-        return repository.loginAdministrative(null);
+        return repository.loginService(null, null);
     }
 
     /**
diff --git 
a/src/test/java/org/apache/sling/jcr/jackrabbit/usermanager/it/UserManagerTestSupport.java
 
b/src/test/java/org/apache/sling/jcr/jackrabbit/usermanager/it/UserManagerTestSupport.java
index 11c1440..5eb1138 100644
--- 
a/src/test/java/org/apache/sling/jcr/jackrabbit/usermanager/it/UserManagerTestSupport.java
+++ 
b/src/test/java/org/apache/sling/jcr/jackrabbit/usermanager/it/UserManagerTestSupport.java
@@ -26,6 +26,7 @@ import static org.ops4j.pax.exam.CoreOptions.composite;
 import static org.ops4j.pax.exam.CoreOptions.junitBundles;
 import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
 import static org.ops4j.pax.exam.CoreOptions.vmOption;
+import static 
org.ops4j.pax.exam.cm.ConfigurationAdminOptions.factoryConfiguration;
 
 import java.util.Dictionary;
 import java.util.Enumeration;
@@ -84,6 +85,19 @@ public abstract class UserManagerTestSupport extends 
TestSupport {
             optionalRemoteDebug(),
             quickstart(),
             sling(),
+            // SLING-9809 - add server user for the 
o.a.s.jcr.jackrabbit.usermanager bundle
+            
factoryConfiguration("org.apache.sling.jcr.repoinit.RepositoryInitializer")
+                .put("scripts", new String[] {
+                        "create service user sling-jcr-usermanager with path 
system/sling\n" +
+                        "\n" +
+                        "set ACL for sling-jcr-usermanager\n" +
+                        "    allow 
jcr:read,jcr:readAccessControl,jcr:modifyAccessControl,rep:write,rep:userManagement
 on /home\n" +
+                        "end"})
+                .asOption(),
+            
factoryConfiguration("org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended")
+                .put("user.mapping", new 
String[]{"org.apache.sling.jcr.jackrabbit.usermanager=sling-jcr-usermanager"})
+                .asOption(),
+            
             // Sling JCR UserManager
             testBundle("bundle.filename"),
             
mavenBundle().groupId("org.apache.sling").artifactId("org.apache.sling.jcr.jackrabbit.accessmanager").versionAsInProject(),

Reply via email to