com.esri.arcgis.server
Interface IPermissionsAdmin

All Superinterfaces:
Serializable
All Known Subinterfaces:
IPermissionsAdmin2
All Known Implementing Classes:
IPermissionsAdmin2Proxy, IPermissionsAdminProxy, ServerObjectAdmin

public interface IPermissionsAdmin
extends Serializable

Provides administrative access to the Permissions Store.

Description

IPermissionsAdmin provides methods to Allow and Deny operations on ArcGIS Server resources and to retrieve all principals with access to resources.

The IPermissionsAdmin interface can be obtained by a query interface with the IServerObjectAdmin interface.

A list of security model concepts is useful here.
Permissions are assigned in a Continuous Inheritance model. A child resource inherits permissions from its parent resource and the child can be changed to differ from the parent. Changing the permission on the parent for a specific user/role restores inheritance to match the parent recursively; all children will be changed to match the parent.

Remarks

The following administration functionality of the ArcGIS Server is exposed by the methods of IPermissionsAdmin :

Administer role-based ArcGIS Server security:

Get information about the ArcGIS Security mode:

When To Use

Use the IPermissionsAdmin interface when your application needs to set permissions on ArcGIS Server GIS resources for specific principals.

If your application is connecting to the server only to retrieve information about the current state of permissions on ArcGIS Server GIS resources, use the IPermissionsManager interface instead.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 void allowPermission(String principal, String resource, String operation)
          Grants permission to the specified principal to perform the given operation on the indicated resource.
 void denyPermission(String principal, String resource, String operation)
          Revokes permission from the specified principal to perform the given operation on the indicated resource.
 IEnumBSTR getAllPrincipals()
          Enumrates all princiapls in the Permissions Store.
 

Method Detail

allowPermission

void allowPermission(String principal,
                     String resource,
                     String operation)
                     throws IOException,
                            AutomationException
Grants permission to the specified principal to perform the given operation on the indicated resource.

Remarks

When using role-based security in ArcGIS Server, security for resources (GIS Services and folders containing GIS Services) is managed by allowing or denying a principal permissions for all operations on a resource.

Use the AllowPermissions method to allow a principal access to perform any operation on a specified resource. Once the allow permission has been granted it can be removed explicitly using the DenyPermissions method or implicitly through the continuous inheritance model.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
principal - The principal (in)
resource - The resource (in)
operation - The operation (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

denyPermission

void denyPermission(String principal,
                    String resource,
                    String operation)
                    throws IOException,
                           AutomationException
Revokes permission from the specified principal to perform the given operation on the indicated resource.

Remarks

When using role-based security in ArcGIS Server, security for resources (GIS Services and folders containing GIS Services) is managed by allowing or denying a principal permissions for all operations on a resource.

Use the DenyPermissions method to deny a principal access to perform any operation on a specified resource. Once the permission has been revoked it can be restored explicitly using the AllowPermissions method or implicitly through the continuous inheritance model.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
principal - The principal (in)
resource - The resource (in)
operation - The operation (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAllPrincipals

IEnumBSTR getAllPrincipals()
                           throws IOException,
                                  AutomationException
Enumrates all princiapls in the Permissions Store.

Remarks

Use the GetAllPrincipals method to return an enumeration over all the principals with allow/deny rules in the ArcGIS Server security model.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A reference to a com.esri.arcgis.system.IEnumBSTR
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.