|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface RolePermissionProvider
Within interfaces of JReport security API, RolePermissionProvider is used to
provide customized permission setting of role. Except getting role permission setting
from customer's external security system, this interface also provide ability
to modify role permission setting in customer's external security system.
| Method Summary | |
|---|---|
java.util.Hashtable |
getRolePermissions(java.lang.String realmName,
java.lang.String resourcePath,
int versionNumber)
Get all roles' permission setting attached to a specified resource or version node from customer's external secuirty system. |
boolean |
isEnableEdit()
Indicates whether customer's external security system will be modified by invoking some methods in RolePermissionProvider.In common cases, invokeing setRolePermissions() should take effect on
customer's external security system, and cause modification of external security
system, this method should return true in such case. |
void |
setRolePermissions(java.lang.String realmName,
java.lang.String roleName,
java.lang.String resourcePath,
int versionNumber,
java.lang.String permissionString)
Set roles' permission setting for a specified resource or version node in customer's external secuirty system. |
| Method Detail |
|---|
java.util.Hashtable getRolePermissions(java.lang.String realmName,
java.lang.String resourcePath,
int versionNumber)
throws JRCustomerException
realmName - the realm nameresourcePath - resource path to specify a resourceversionNumber - version number of the resource, a valid version number
should be a positive integer, if versionNumber less than 1,
it means want to get permission setting attached to the resouce
which specified by resourcePath.
Hashtable contains several role/permissions pair
to represent permissions attached to specified resorce/version.
In this Hashtable object, key is role name, value is a String
object to represent permission setting for this group, this string's length is 7,
every character represent status of a specified permission, available value is
jet.cs.api.CSPermission.ALLOW and jet.cs.api.CSPermission.DENY
The structure of Hashtable is:
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
In CSPermission, value of DENY is 0, value of
ALLOW is 1, a permissionString has 7 chars and it could be like: 0110100
JRCustomerException - If an error occurs during JReport server security
system invoking this method, and the implementation think should throw this error
to JReport server security system.
void setRolePermissions(java.lang.String realmName,
java.lang.String roleName,
java.lang.String resourcePath,
int versionNumber,
java.lang.String permissionString)
throws NoSuchRoleException,
JRCustomerException
realmName - the realm nameroleName - the role name to specify a role want to set permissionsresourcePath - resource path to specify a resourceversionNumber - version number of the resource, a valid version number
should be a positive integer, if versionNumber less than 1,
it means want to set role permission for the resouce which specified
by resourcePath.permissionString - permission string to represent permissions for
this role, this string's length is 7, every character represent status
of a specified permission, available value is
jet.cs.api.CSPermission.ALLOW and jet.cs.api.CSPermission.DENY
The structure of permissionString is:
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
CSPermission.DENY | CSPermission.ALLOW
In CSPermission, value of DENY is 0, value of
ALLOW is 1, a permissionString has 7 chars and it could be like: 0110100.permissionString is null, means dont set specified role's
permission for specified resource/version node.permissionString's length is 0, means status of all permissions
is CSPermission.DENY
NoSuchRoleException - If there is no a role has specified name in
customer's external security system.
JRCustomerException - If an error occurs during JReport server security
system invoking this method, and the implementation think should throw this error
to JReport server security system.boolean isEnableEdit()
RolePermissionProvider.setRolePermissions() should take effect on
customer's external security system, and cause modification of external security
system, this method should return true in such case. If cusotmer's external
security system will not be affected by invoking setRolePermissions(),
this method should return false. isEditing() with paramter
SecurityWebAdaptor.ACTION_EDIT_ROLE_PERMISSIONS in jet.server.api.SecurityWebAdaptor
is same with this method's return value.
true if external security system will be affected by invoking
setRolePermissions(), otherwise return false.SecurityWebAdaptor
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||