...
Code Block |
---|
|
// User methods
public void createUser(GenericValue userLoginString userLoginId, String password);
public void updateUser(GenericValue userLoginString userLoginId, String password);
public void deleteUser(GenericValueString userLoginuserLoginId);
// User Group methods
public String createUserGroup(String description);
public void updateUserGroup(String userGroupId, String description);
public void deleteUserGroup(String userGroupId);
// User Group Assignment methods
public Stringvoid assignUserToGroup(String userLoginId, String userGroupId);
public void deleteUserFromGroup(String userLoginId, String userGroupId);
public Stringvoid assignGroupToGroup(String childGroupId, String parentGroupId);
public void deleteGroupFromGroup(String childGroupId, String parentGroupId);
// Permission Assignment methods
public void assignUserPermission(String userLoginId, String artifactId, Permission permission);
public void deleteUserPermission(String userLoginId, String artifactId, Permission permission);
public void assignGroupPermission(String userGroupId, String artifactId, Permission permission);
public void deleteGroupPermission(String userGroupId, String artifactId, Permission permission);
// Get permissions
public AccessController getUserPermissions(GenericValue userLogin, String artifactId);
|
All methods throw java.security.GeneralSecurityException. The Permission class is from the java.security package, and the AccessController interface is similar to the AccessController class in the java.security package:
Code Block |
---|
|
package org.ofbiz.security;
public interface AccessController {
public void checkPermission(Permission permission) throws AccessControlException;
}
|
Artifacts will check permissions in two steps:
#Get an AccessController instance from Security by calling the getUserPermissions method
#Call the checkPermission method with the desired permission
Code Block |
---|
|
// An artifact update method
public void doUpdateTask(ExecutionContext context) throws AccessControlException {
Security security = context.getSecurity();
AccessController accessController = security.getUserPermissions(context.getUserLogin(), this.getArtifactId(context));
accessController.checkPermission(new UpdatePermission());
...
}
|