public abstract class AbstractPermissionConfig extends DumpableObject implements PermissionConfig
ServerConfigFile.PERMISSION. User and group
permissions are defined in different lists whereas group permissions are only checked
if a requested user permission was not found.
Note that group permissions only take effect, if a GroupMembershipResolver instance
was installed using setGroupMemberResolver(GroupMembershipResolver).| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
accessibleObjectKey |
static java.lang.String |
groupNameKey |
static java.lang.String |
groupPermissionsTable |
static java.lang.String |
permissionConfigType |
static java.lang.String |
permissionKey |
static java.lang.String |
userNameKey |
static java.lang.String |
userPermissionsTable |
| Constructor and Description |
|---|
AbstractPermissionConfig() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
addGroupPermission(GroupPermissionEntry entry) |
boolean |
addUserPermission(UserPermissionEntry entry) |
void |
checkUserPermission(UserId userId,
PermissionControlled obj,
EspritPermission permission)
Same as
PermissionConfig.hasUserPermission(UserId, PermissionControlled, EspritPermission) but throws an exception
if the permission was not granted. |
void |
clear()
Clears both user and group permissions
|
void |
clearGroupPermissions() |
void |
clearUserPermissions() |
java.util.List<GroupPermissionEntry> |
findGroupPermissionsFor(Group group) |
GroupPermissionEntry |
findGroupPermissionsFor(Group group,
PermissionDefinition permDef) |
java.util.List<UserPermissionEntry> |
findUserPermissionsFor(UserId userId) |
UserPermissionEntry |
findUserPermissionsFor(UserId userId,
PermissionDefinition permDef) |
java.util.List<GroupPermissionEntry> |
getGroupPermissions() |
java.util.List<UserPermissionEntry> |
getUserPermissions() |
boolean |
hasGroupPermission(Group group,
PermissionControlled obj,
EspritPermission permission)
Tells whether the given group has the given permission on the given object.
|
boolean |
hasGroupPermission(Group group,
PermissionDefinition obj,
EspritPermission permission)
Tells whether the given group has the given permission on the given object.
|
boolean |
hasUserPermission(UserId userId,
PermissionControlled obj,
EspritPermission permission)
Tells whether the given user has the given permission on the given object.
|
boolean |
hasUserPermission(UserId userId,
PermissionDefinition obj,
EspritPermission permission)
Tells whether the given user has the given permission on the given object.
|
void |
read(ApplicationContext ctx,
java.io.File inputFile) |
int |
removeGroupPermissionsFor(java.lang.String groupName)
Removes all permissions of this group
|
int |
removeGroupPermissionsFor(java.lang.String groupName,
PermissionDefinition obj) |
int |
removeUserPermissionsFor(java.lang.String userName)
Removes all permissions of this user
|
int |
removeUserPermissionsFor(java.lang.String userName,
PermissionDefinition obj)
Removes all permissions of this user that were assigned to the given object
|
void |
setGroupMemberResolver(GroupMembershipResolver groupResolver)
|
boolean |
setGroupPermissions(Group group,
PermissionDefinition obj,
EspritPermission... permissions)
Adds a new permission, whereas a
PermissionEntry is created from the given arguments. |
boolean |
setUserPermissions(UserId userId,
PermissionDefinition permDef,
EspritPermission... permissions)
Adds a new permission, whereas a
PermissionEntry is created from the given arguments. |
DumpString |
toDumpString(DumpString s)
This method allows subclasses to add values to the existing DumpString of the superclass.
|
ToString |
toString(ToString s)
This method allows subclasses to add values to the existing ToString of the superclass.
|
void |
write(ApplicationContext ctx,
java.io.File outputFile) |
configureDumpHeadlineLength, configureDumpMaxElementsPrinted, copyDumpStringValues, copyToStringValues, createDumpHeader, toDumpString, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waittoDumpString, toStringpublic static final java.lang.String permissionConfigType
public static final java.lang.String userPermissionsTable
public static final java.lang.String groupPermissionsTable
public static final java.lang.String groupNameKey
public static final java.lang.String userNameKey
public static final java.lang.String accessibleObjectKey
public static final java.lang.String permissionKey
public final void setGroupMemberResolver(GroupMembershipResolver groupResolver)
Group of a UserId.
If this instance is not set, no check for group-permissions will take place.setGroupMemberResolver in interface PermissionConfigpublic final java.util.List<UserPermissionEntry> getUserPermissions()
public final boolean addUserPermission(UserPermissionEntry entry)
public final boolean setUserPermissions(UserId userId, PermissionDefinition permDef, EspritPermission... permissions)
PermissionConfigPermissionEntry is created from the given arguments.setUserPermissions in interface PermissionConfigpublic final java.util.List<UserPermissionEntry> findUserPermissionsFor(UserId userId)
public final UserPermissionEntry findUserPermissionsFor(UserId userId, PermissionDefinition permDef)
public final boolean hasUserPermission(UserId userId, PermissionControlled obj, EspritPermission permission)
PermissionConfighasUserPermission in interface PermissionConfigPermissionConfig.checkUserPermission(UserId, PermissionControlled, EspritPermission)public final boolean hasUserPermission(UserId userId, PermissionDefinition obj, EspritPermission permission)
PermissionConfighasUserPermission in interface PermissionConfigpublic final void checkUserPermission(UserId userId, PermissionControlled obj, EspritPermission permission) throws PermissionException
PermissionConfigPermissionConfig.hasUserPermission(UserId, PermissionControlled, EspritPermission) but throws an exception
if the permission was not granted.checkUserPermission in interface PermissionConfigPermissionExceptionpublic final int removeUserPermissionsFor(java.lang.String userName,
PermissionDefinition obj)
public final int removeUserPermissionsFor(java.lang.String userName)
public final void clearUserPermissions()
public final java.util.List<GroupPermissionEntry> getGroupPermissions()
public final boolean addGroupPermission(GroupPermissionEntry entry)
public final boolean setGroupPermissions(Group group, PermissionDefinition obj, EspritPermission... permissions)
PermissionConfigPermissionEntry is created from the given arguments.setGroupPermissions in interface PermissionConfigpublic final java.util.List<GroupPermissionEntry> findGroupPermissionsFor(Group group)
public final GroupPermissionEntry findGroupPermissionsFor(Group group, PermissionDefinition permDef)
public final boolean hasGroupPermission(Group group, PermissionControlled obj, EspritPermission permission)
PermissionConfighasGroupPermission in interface PermissionConfigpublic final boolean hasGroupPermission(Group group, PermissionDefinition obj, EspritPermission permission)
PermissionConfighasGroupPermission in interface PermissionConfigpublic final int removeGroupPermissionsFor(java.lang.String groupName,
PermissionDefinition obj)
public final int removeGroupPermissionsFor(java.lang.String groupName)
public final void clearGroupPermissions()
public final void clear()
public final void read(ApplicationContext ctx, java.io.File inputFile) throws java.lang.Exception
java.lang.Exceptionpublic final void write(ApplicationContext ctx, java.io.File outputFile) throws java.lang.Exception
java.lang.Exceptionpublic ToString toString(ToString s)
DumpabletoString in interface DumpabletoString in class DumpableObjectpublic DumpString toDumpString(DumpString s)
DumpabletoDumpString in interface DumpabletoDumpString in class DumpableObjectCopyright © 2014 EsprIT-Systems. All Rights Reserved.