Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

OperationNames Class

Contains the field names and corresponding values for operations that users can perform on items in SQL Server Reporting Services.

System.Object
  Microsoft.ReportingServices.Interfaces.OperationNames

Namespace:  Microsoft.ReportingServices.Interfaces
Assemblies:   Microsoft.ReportingServices.SharePoint.UI.WebParts (in Microsoft.ReportingServices.SharePoint.UI.WebParts.dll)
  Microsoft.ReportingServices.Interfaces (in Microsoft.ReportingServices.Interfaces.dll)
public sealed class OperationNames

The OperationNames type exposes the following members.

  NameDescription
Public methodOperationNamesInitializes a new instance of the OperationNames class.
Top
  NameDescription
Public methodEquals (Inherited from Object.)
Public methodGetHashCode (Inherited from Object.)
Public methodGetType (Inherited from Object.)
Public methodToString (Inherited from Object.)
Top
  NameDescription
Public fieldStatic memberExecuteReportDefinitionSpecifies the “Execute Report Definition” operation.
Public fieldStatic memberOperCancelJobsSpecifies the operation "Cancel Jobs".
Public fieldStatic memberOperCreateAnySubscriptionSpecifies the operation "Create Any Subscription".
Public fieldStatic memberOperCreateDatasourceSpecifies the operation "Create Data Source".
Public fieldStatic memberOperCreateFolderSpecifies the operation "Create Folder".
Public fieldStatic memberOperCreateLinkSpecifies the operation "Create Link".
Public fieldStatic memberOperCreateModelSpecifies the operation “Create Model”.
Public fieldStatic memberOperCreateReportSpecifies the operation "Create Report".
Public fieldStatic memberOperCreateResourceSpecifies the operation "Create Resource".
Public fieldStatic memberOperCreateRolesSpecifies the operation "Create Roles".
Public fieldStatic memberOperCreateSchedulesSpecifies the operation "Create Schedules".
Public fieldStatic memberOperCreateSnapshotSpecifies the operation "Create Report History".
Public fieldStatic memberOperCreateSubscriptionSpecifies the operation "Create Subscription".
Public fieldStatic memberOperDeleteSpecifies the operation "Delete".
Public fieldStatic memberOperDeleteAnySubscriptionSpecifies the operation "Delete Any Subscription".
Public fieldStatic memberOperDeleteHistorySpecifies the operation "Delete Report History".
Public fieldStatic memberOperDeleteRolesSpecifies the operation "Delete Roles".
Public fieldStatic memberOperDeleteSchedulesSpecifies the operation "Delete Schedules".
Public fieldStatic memberOperDeleteSubscriptionSpecifies the operation "Delete Subscription".
Public fieldStatic memberOperExecuteSpecifies the operation "Execute".
Public fieldStatic memberOperExecuteAndViewSpecifies the operation "Execute and View".
Public fieldStatic memberOperGenerateEventsSpecifies the operation "Generate Events".
Public fieldStatic memberOperListHistorySpecifies the operation "List Report History".
Public fieldStatic memberOperListJobsSpecifies the operation "List Jobs".
Public fieldStatic memberOperManageSharedSchedulesSpecifies the operation "Manage Shared Schedules".
Public fieldStatic memberOperReadAnySubscriptionSpecifies the operation "Read Any Subscription".
Public fieldStatic memberOperReadAuthorizationPolicySpecifies the operation "Read Security Policies".
Public fieldStatic memberOperReadContentSpecifies the operation "Read Content".
Public fieldStatic memberOperReadDatasourcesSpecifies the operation "Read Data Sources".
Public fieldStatic memberOperReadModelItemSecurityPoliciesSpecifies the operation “Read Model Item Security Policies”.
Public fieldStatic memberOperReadParametersSpecifies the operation "Read Parameters".
Public fieldStatic memberOperReadPolicySpecifies the operation "Read Policy".
Public fieldStatic memberOperReadPropertiesSpecifies the operation "Read Properties".
Public fieldStatic memberOperReadReportDefinitionSpecifies the operation "Read Report Definition".
Public fieldStatic memberOperReadRolePropertiesSpecifies the operation "Read Role Properties".
Public fieldStatic memberOperReadSchedulesSpecifies the operation "Read Schedules".
Public fieldStatic memberOperReadSubscriptionSpecifies the operation "Read Subscription".
Public fieldStatic memberOperReadSystemPropertiesSpecifies the operation "Read System Properties".
Public fieldStatic memberOperReadSystemSecurityPolicySpecifies the operation "Read System Security Policies".
Public fieldStatic memberOperUpdateAnySubscriptionSpecifies the operation "Update Any Subscription".
Public fieldStatic memberOperUpdateContentSpecifies the operation "Update Content".
Public fieldStatic memberOperUpdateDatasourcesSpecifies the operation "Update Data Sources".
Public fieldStatic memberOperUpdateDeleteAuthorizationPolicySpecifies the operation "Update Security Policies".
Public fieldStatic memberOperUpdateModelItemSecurityPoliciesSpecifies the operation “Update Model Item Security Policies”.
Public fieldStatic memberOperUpdateParametersSpecifies the operation "Update Parameters".
Public fieldStatic memberOperUpdatePolicySpecifies the operation "Update Policy".
Public fieldStatic memberOperUpdatePropertiesSpecifies the operation "Update Properties".
Public fieldStatic memberOperUpdateReportDefinitionSpecifies the operation "Update Report Definition".
Public fieldStatic memberOperUpdateRolePropertiesSpecifies the operation "Update Role Properties".
Public fieldStatic memberOperUpdateSchedulesSpecifies the operation "Update Schedules".
Public fieldStatic memberOperUpdateSubscriptionSpecifies the operation "Update Subscription".
Public fieldStatic memberOperUpdateSystemPropertiesSpecifies the operation "Update System Properties".
Public fieldStatic memberOperUpdateSystemSecurityPolicySpecifies the operation "Update System Security Policies."
Top

The OperationNames class contains fields that represent the constant string values for operation names in Reporting Services. These operation names can be used by your security extension to return a list of permissions for a user of a given item in the report server database. For more information, see the GetPermissions method of the IAuthorizationExtension interface.

You can develop Report Server Web service client applications in such a way as to provide functionality and appearance based on the permissions of the current user. Client applications, such as Report Manager, rely on the Web service method GetPermissions to return a set of permission names that correspond to operations in Reporting Services. When a client makes a call to GetPermissions, the Web service responds with a set of permissions based on the item being accessed and the user making the request. A typical call to the root or Home item in the report server database for a user that is assigned the Browser Role might look like the following:

// C# Web service code
string[] permissions = rs.GetPermissions("/");

foreach (string p in permissions)
{
   Console.WriteLine(p);
}

The above code returns a single permission for Browser users: Read Properties. The user is granted access to view the contents and properties, but not to modify or delete the contents. Nor is the user allowed to update security policies or view data source information. The Browser role is a very restrictive role.

Because clients can call GetPermissions in order to discover what permissions the user has, a client application can be tailored for each user. In Report Manager, Browser users do not have access to the Security Properties or Data Source Properties pages for a report. Nor is a Browser user permitted to see site settings or other administrator information, because Report Manager makes a call to GetPermissions and determines ahead of time which pages and tabs to display. Because of a client application's reliance on named permissions, your security extension must implement the GetPermissions method of the IAuthorizationExtension interface.

To support your implementation of GetPermissions, the security extension API provides you with the OperationNames class, which contains a set of constant fields representing each of the available permissions in Reporting Services. When you implement GetPermissions, you should analyze the security descriptor for the item and the current user and return a list of permissions based on the access control list for the current user.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.