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, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
toDumpString, toString
public 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 PermissionConfig
public final java.util.List<UserPermissionEntry> getUserPermissions()
public final boolean addUserPermission(UserPermissionEntry entry)
public final boolean setUserPermissions(UserId userId, PermissionDefinition permDef, EspritPermission... permissions)
PermissionConfig
PermissionEntry
is created from the given arguments.setUserPermissions
in interface PermissionConfig
public 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)
PermissionConfig
hasUserPermission
in interface PermissionConfig
PermissionConfig.checkUserPermission(UserId, PermissionControlled, EspritPermission)
public final boolean hasUserPermission(UserId userId, PermissionDefinition obj, EspritPermission permission)
PermissionConfig
hasUserPermission
in interface PermissionConfig
public final void checkUserPermission(UserId userId, PermissionControlled obj, EspritPermission permission) throws PermissionException
PermissionConfig
PermissionConfig.hasUserPermission(UserId, PermissionControlled, EspritPermission)
but throws an exception
if the permission was not granted.checkUserPermission
in interface PermissionConfig
PermissionException
public 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)
PermissionConfig
PermissionEntry
is created from the given arguments.setGroupPermissions
in interface PermissionConfig
public 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)
PermissionConfig
hasGroupPermission
in interface PermissionConfig
public final boolean hasGroupPermission(Group group, PermissionDefinition obj, EspritPermission permission)
PermissionConfig
hasGroupPermission
in interface PermissionConfig
public 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.Exception
public final void write(ApplicationContext ctx, java.io.File outputFile) throws java.lang.Exception
java.lang.Exception
public ToString toString(ToString s)
Dumpable
toString
in interface Dumpable
toString
in class DumpableObject
public DumpString toDumpString(DumpString s)
Dumpable
toDumpString
in interface Dumpable
toDumpString
in class DumpableObject
Copyright © 2014 EsprIT-Systems. All Rights Reserved.