次の方法で共有


OperationNames Class

ユーザーが SQL Server Reporting Services のアイテムで実行可能な操作のフィールド名および対応する値を表します。

名前空間: Microsoft.ReportingServices.Interfaces
アセンブリ: Microsoft.ReportingServices.Interfaces (microsoft.reportingservices.interfaces.dll 内)

構文

'宣言
Public NotInheritable Class OperationNames
public sealed class OperationNames
public ref class OperationNames sealed
public final class OperationNames
public final class OperationNames

解説

OperationNames クラスには、Reporting Services の操作名の定数文字列値を表すフィールドが含まれます。これらの操作名は、レポート サーバー データベース内の特定のアイテムの、ユーザーに関する権限の一覧を返すために、セキュリティ拡張機能によって使用されることがあります。詳細については、IAuthorizationExtension インターフェイスの GetPermissionsメソッドの説明を参照してください。

レポート サーバー Web サービス クライアント アプリケーションは、現在のユーザーの権限に基づいて機能と外観を提供するように開発できます。レポート マネージャなどのクライアント アプリケーションは、Web サービス メソッド GetPermissions に依存しており、Reporting Services の操作に対応する権限の名前のセットを返します。クライアントが GetPermissionsの呼び出しを行うと、Web サービスは、アクセスされているアイテムと要求を行っているユーザーに基づく権限のセットで応答します。ブラウザ ロールが割り当てられたユーザーの、レポート サーバー データベースのルート アイテムまたはホーム アイテムの通常の呼び出しは、次のようになります。

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

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

上記のコードは、ブラウザ ユーザーの単一の権限である Read Properties を返します。ユーザーに許可されるアクセス権では、コンテンツとプロパティを表示することはできますが、コンテンツの変更や削除を行うことはできません。さらに、ユーザーはセキュリティ ポリシーを更新することも、データ ソース情報を表示することもできません。ブラウザ ロールは、非常に制限されたロールです。

クライアントは、GetPermissions を呼び出してユーザーが持っている権限を調べることができるため、クライアント アプリケーションを各ユーザーに合わせて調整できます。レポート マネージャでは、ブラウザ ユーザーはレポートの [セキュリティのプロパティ] ページまたは [データ ソースのプロパティ] ページに対するアクセス権を持っていません。また、レポート マネージャが GetPermissions の呼び出しを行って、表示するページとタブを事前に決定するため、ブラウザ ユーザーはサイト設定や他の管理者情報を参照することもできません。クライアント アプリケーションは名前付きの権限に依存するため、セキュリティ拡張機能には IAuthorizationExtension インターフェイスの GetPermissions メソッドを実装する必要があります。

GetPermissions の実装をサポートするため、セキュリティ拡張機能 API には OperationNames クラスが用意されています。このクラスには、Reporting Services で利用可能な各権限を表す定数フィールドのセットが含まれています。GetPermissions を実装する場合は、アイテムと現在のユーザーのセキュリティ記述子を分析し、現在のユーザーのアクセス制御リストに基づく権限の一覧を返す必要があります。

継承階層

System.Object
  Microsoft.ReportingServices.Interfaces.OperationNames

スレッド セーフ

この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

プラットフォーム

開発プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

対象プラットフォーム

サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。

参照

関連項目

OperationNames Members
Microsoft.ReportingServices.Interfaces Namespace