다음을 통해 공유


OperationNames 클래스

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

네임스페이스:  Microsoft.ReportingServices.Interfaces
어셈블리:   Microsoft.ReportingServices.Interfaces.dll의 Microsoft.ReportingServices.Interfaces
  Microsoft.ReportingServices.SharePoint.UI.WebParts.dll의 Microsoft.ReportingServices.SharePoint.UI.WebParts

구문

‘선언
Public NotInheritable Class OperationNames
‘사용 방법
Dim instance As OperationNames
public sealed class OperationNames
public ref class OperationNames sealed
[<SealedAttribute>]
type OperationNames =  class end
public final class OperationNames

주의

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.

상속 계층 구조

System. . :: . .Object
  Microsoft.ReportingServices.Interfaces..::..OperationNames

스레드로부터의 안전성

이 형식의 모든 공용 static(Visual Basic에서는 Shared) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전성이 보장되지 않습니다.