User Management

User management in our project is done by /apps/dvdrental/dvdrental/src/main/java/com/dvdrental/impl/CreateUserServlet.java

See the sequence here,

User_registration


See in this class how CreateUserServlet is map

/**
 * @scr.component metatype="false"
 * @scr.service interface="javax.servlet.Servlet"
 * @scr.property name="sling.servlet.paths" values="/bin/register"
 */
public class CreateUserServlet extends SlingAllMethodsServlet {
}

Actual user creation is done by Jackrabbit API.

import org.apache.jackrabbit.api.security.user.UserManager;
import org.apache.jackrabbit.api.JackrabbitSession;
import org.apache.jackrabbit.api.security.user.User;

session = (JackrabbitSession) repository.loginAdministrative(null);
UserManager uMgr = session.getUserManager();
uMgr.createUser(userName, password);

Based on type of group selected and assigned to user

org.apache.jackrabbit.api.security.user.Group group = (org.apache.jackrabbit.api.security.user.Group) uMgr.getAuthorizable(groupName);
group.addMember(user);

In crx it looks like this,

CRX_User_Management




Comments