パブリッシャー ロール

パブリッシャー ロールは、ユーザーがレポート サーバーにコンテンツを追加するためのタスクが含まれた、組み込みのロール定義です。このロールは、ユーザーの便宜を図って、あらかじめ定義されています。このロールを含むロール割り当てを作成するまで、パブリッシャー ロールは使用されません。レポート デザイナーでレポートまたはモデルを作成し、レポート サーバーにそのアイテムをパブリッシュするユーザーを対象にしています。

注記注意

アイテムをレポート サーバーにパブリッシュする権限は、信頼されたユーザーにのみ付与する必要があります。パブリッシャー ロールでは、ユーザーが任意の種類のファイルをレポート サーバーにアップロードできるような、広範囲にわたる権限が付与されます。アップロードされたレポートまたは HTML ファイルに悪意のあるスクリプトが含まれていた場合、レポートまたは HTML ドキュメントをユーザーがクリックすると、そのユーザーの資格情報で悪意のあるスクリプトが実行されることになります。レポート サーバーによって提供される資格情報を使用するようにレポートが構成されている場合、そのレポートに対するパブリッシュ権限を持つすべてのユーザーが、そのサーバーが提供する資格情報によって許可されるリソースにアクセスできます。資格情報は、データ ソースの保存された資格情報として、または Reporting Services の自動実行アカウントを使用して、レポート サーバーが提供できます。たとえば、パブリッシュ権限を持つユーザーは、既存のデータ ソースを使用して新しいデータセットを作成できます。

実行時にレポートが HTML で表示される場合、レポート定義には、HTML インジェクション攻撃を受けやすいスクリプトおよび他の要素が含まれる可能性があります。パブリッシュしたレポートに悪意のあるスクリプトが含まれていると、ユーザーがそのレポートを開いたとき、不正なスクリプトが意図せず実行されてしまう可能性があります。ユーザーが高度な権限を持っている場合、スクリプトはその権限で実行されます。

悪意のあるスクリプトをユーザーが意図せず実行してしまうリスクを軽減するには、コンテンツをパブリッシュする権限を持つユーザーの数を制限し、信頼されたソースのドキュメントおよびレポートだけがユーザーからパブリッシュされるようにします。パブリッシュするレポート定義が安全かどうか確信がない場合は、テキスト エディターで .rdl ファイルを開いてスクリプトのタグを検索してください。悪意のあるスクリプトは、式や URL (ナビゲーション アクションの URL など) に隠れていることがあります。

パブリッシャーのタスク

パブリッシャー ロールに含まれているタスクを、以下の表に示します。

タスク

説明

リンク レポートの作成

リンク レポートを作成し、レポート サーバー フォルダーにパブリッシュします。

データ ソースの管理

共有データ ソース アイテムの作成および削除、データ ソースのプロパティとコンテンツの表示および変更を行います。

フォルダーの管理

フォルダーの作成、表示、削除、およびフォルダーのプロパティの表示と変更を行います。

レポートの管理

レポートの追加と削除、レポート パラメーターの変更、レポートのプロパティの表示と変更、レポートにコンテンツを提供するデータ ソースの表示と変更、レポート定義の表示と変更、レポート レベルのセキュリティ ポリシーの設定を行います。

モデルの管理

レポート モデルの作成、表示、削除、およびレポート モデルのプロパティの表示と変更を行います。

リソースの管理

リソースの作成、変更、削除、およびリソースのプロパティの表示と変更を行います。

パブリッシャー ロールのカスタマイズ

パブリッシャー ロールは、必要に応じて変更できます。たとえば、ユーザーにリンク レポートの作成とパブリッシュを許可しない場合、"リンク レポートの作成" タスクを削除することができます。また、ユーザーが新しいアイテムの保存先を選択するときにフォルダー階層を参照できるように、"フォルダーの表示" タスクを追加できます。

レポート デザイナーからレポートをパブリッシュするユーザーは、レポート サーバーにレポートを追加するために、少なくとも "レポートの管理" タスクが必要です。ユーザーが、共有データ ソースまたは外部ファイルを使用するレポートをパブリッシュする必要がある場合、"データ ソースの管理" および "リソースの管理" も追加する必要があります。さらに、パブリッシュ処理の一環としてフォルダーを作成する機能が必要な場合は、"フォルダーの管理" も追加する必要があります。