org.apache.jetspeed.services.security
Interface PermissionManagement

All Superinterfaces:
org.apache.turbine.services.Initable, org.apache.turbine.services.Service
All Known Implementing Classes:
LDAPPermissionManagement, NoPermissionManagement, TurbinePermissionManagement

public interface PermissionManagement
extends org.apache.turbine.services.Service

The PermissionManagement interface describes contract between the portal and security provider required for Jetspeed Permission Management. This interface enables an application to be independent of the underlying permission management technology.

Version:
$Id: PermissionManagement.java,v 1.3 2004/02/23 03:58:11 jford Exp $
Author:
David Sean Taylor

Field Summary
static java.lang.String SERVICE_NAME
           
 
Method Summary
 void addPermission(Permission permission)
          Adds a Permission into permanent storage.
 Permission getPermission(java.lang.String permissionName)
          Retrieves a single Permission for a given permissionName principal.
 java.util.Iterator getPermissions()
          Retrieves all Permissions.
 java.util.Iterator getPermissions(java.lang.String rolename)
          Retrieves all Permissions for a given rolename principal.
 void grantPermission(java.lang.String roleName, java.lang.String permissionName)
          Grants a permission to a role.
 boolean hasPermission(java.lang.String roleName, java.lang.String permissionName)
          Checks for the relationship of role has a permission.
 void removePermission(java.lang.String permissionName)
          Removes a Permission from the permanent store.
 void revokePermission(java.lang.String roleName, java.lang.String permissionName)
          Revokes a permission from a role.
 void savePermission(Permission permission)
          Saves a Permission into permanent storage.
 
Methods inherited from interface org.apache.turbine.services.Service
getConfiguration, getName, getProperties, setName, setServiceBroker
 
Methods inherited from interface org.apache.turbine.services.Initable
getInit, init, init, setInitableBroker, shutdown
 

Field Detail

SERVICE_NAME

public static final java.lang.String SERVICE_NAME
See Also:
Constant Field Values
Method Detail

getPermissions

public java.util.Iterator getPermissions(java.lang.String rolename)
                                  throws JetspeedSecurityException
Retrieves all Permissions for a given rolename principal. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Parameters:
rolename - a role name identity to be retrieved.
Returns:
Iterator over all permissions associated to the role principal.
Throws:
PermissionException - when the security provider has a general failure.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

getPermissions

public java.util.Iterator getPermissions()
                                  throws JetspeedSecurityException
Retrieves all Permissions. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Returns:
Iterator over all permissions.
Throws:
PermissionException - when the security provider has a general failure.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

addPermission

public void addPermission(Permission permission)
                   throws JetspeedSecurityException
Adds a Permission into permanent storage. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Throws:
PermissionException - when the security provider has a general failure.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

savePermission

public void savePermission(Permission permission)
                    throws JetspeedSecurityException
Saves a Permission into permanent storage. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Throws:
PermissionException - when the security provider has a general failure.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

removePermission

public void removePermission(java.lang.String permissionName)
                      throws JetspeedSecurityException
Removes a Permission from the permanent store. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Parameters:
permissionName - the principal identity of the permission to be retrieved.
Throws:
PermissionException - when the security provider has a general failure.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

grantPermission

public void grantPermission(java.lang.String roleName,
                            java.lang.String permissionName)
                     throws JetspeedSecurityException
Grants a permission to a role. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Parameters:
roleName - grant a permission to this role.
permissionName - the permission to grant to the role.
Throws:
PermissionException - when the security provider has a general failure retrieving permissions.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

revokePermission

public void revokePermission(java.lang.String roleName,
                             java.lang.String permissionName)
                      throws JetspeedSecurityException
Revokes a permission from a role. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Parameters:
roleName - grant a permission to this role.
permissionName - the permission to grant to the role.
Throws:
PermissionException - when the security provider has a general failure retrieving permissions.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

hasPermission

public boolean hasPermission(java.lang.String roleName,
                             java.lang.String permissionName)
                      throws JetspeedSecurityException
Checks for the relationship of role has a permission. Returns true when the role has the given permission. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Parameters:
roleName - grant a permission to this role.
permissionName - the permission to grant to the role.
Throws:
PermissionException - when the security provider has a general failure retrieving permissions.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException

getPermission

public Permission getPermission(java.lang.String permissionName)
                         throws JetspeedSecurityException
Retrieves a single Permission for a given permissionName principal. The security service may optionally check the current user context to determine if the requestor has permission to perform this action.

Parameters:
permissionName - a permission principal identity to be retrieved.
Returns:
Permission the permission record retrieved.
Throws:
PermissionException - when the security provider has a general failure.
InsufficientPrivilegeException - when the requestor is denied due to insufficient privilege
JetspeedSecurityException


Copyright © 2000-2005 Apache Software Foundation. All Rights Reserved.