カスタム IRM プロテクタ

最終更新日: 2010年4月4日

適用対象: SharePoint Foundation 2010

Microsoft SharePoint Foundation 2010 の拡張可能な Information Rights Management (IRM) アーキテクチャを使用してカスタム IRM プロテクターを作成し、ユーザーがファイルをダウンロードしたときにカスタム ファイルを権限が管理された形式に変換し、ユーザーがファイルをドキュメント ライブラリ内のストレージにアップロードするときに暗号化されていないファイル形式に変換することができます。

各 IRM プロテクターは、すべてのフロントエンド Web サーバーに登録する必要があり、登録すると、ファーム内のすべてのドキュメント ライブラリで使用できるようになります。IRM プロテクターを登録するとき、プロテクターによって、権限が管理されているバージョンとの変換を行うファイルの種類が指定されます。特定のファイルの種類と関連付けることができる IRM プロテクターは 1 つだけですが、指定された IRM プロテクターは複数のファイルの種類と関連付けることができます。

ファイルの種類の権限を管理するには、ファイルの種類に関連付けられたプロテクタをインストールして、SharePoint Foundation に登録する必要があります。

ドキュメント ライブラリで IRM を有効にすると、IRM プロテクターが有効になっているすべてのファイルの種類の権限が管理されます。

特定のファイルの種類のカスタム IRM プロテクターを作成することによって、開発者は保護されたバージョンのファイル内の保護されたコンテンツ、発行ライセンス (IL)、およびエンド ユーザー ライセンス (EUL) の格納場所を管理し、ファイルの種類に基づいて保護されたドキュメントの形式を変更できます。さらに、開発者は保護されたドキュメントのベースとして使用されるドキュメント テンプレートを指定できます。たとえば、あるファイルの種類が、クライアント アプリケーションでは権限が保護されているが、そのクライアント アプリケーションの以前のバージョンでは権限が保護されていなかったとします。そこで、以前のバージョンのクライアント アプリケーションで開くことができる汎用メッセージで、ドキュメントのコンテンツは権限が管理されているので開くことができないことを通知する必要があります。この場合、カスタム IRM プロテクターを作成して、ドキュメントを保護するときに、内部に保護されたコンテンツ、IL、および EUL を格納した汎用の "ラッパー" ドキュメントを生成することができます。このラッパー ドキュメントは以前のバージョンのクライアント アプリケーションに読み込まれて、権限が管理されたコンテンツにアクセスできない理由をユーザーに示すメッセージを表示します。

統合プロテクタと自律プロテクタ

SharePoint Foundation で IRM フレームワークを使用する IRM プロテクタとして、統合プロテクタと自律プロテクタの 2 種類のプロテクタを作成できます。

統合プロテクターでは、SharePoint Foundation を使用して Windows RMS プラットフォームにアクセスし、保護されたバージョンのファイルを生成したり、権限が管理されたファイルから保護を削除したりします。自律プロテクターでは、権限が管理されたプロセス全体の構成と実行を行う必要があります。自律プロテクターでは、Windows RMS プラットフォームに直接アクセスすることも、他の権限管理プラットフォームを使用することもできます。

一般的に、Windows RMS によって提供される発行ライセンス (IL) が目的を満たす場合は、統合プロテクターを作成します。目的に合わない場合は、自律プロテクターを作成することによって、独自の IL を作成できます。

SharePoint Foundation で、保護されたコンテンツに関連付けられた Windows RMS メタデータを自動的に作成する場合は、統合プロテクターを作成します。統合プロテクターを呼び出すと、SharePoint Foundation によって、発行ライセンス (IL)、ドキュメントのコンテンツを暗号化および解読する機能、および Windows RMS で管理されたオブジェクトに関連付けられたその他のメタデータが作成されます。この場合、プロテクターは、権限が管理されたドキュメントの、ファイル形式固有のコンストラクターとして機能します。統合プロテクターでは、要求されたファイルに対してユーザーが持っている権限や、ファイルを暗号化するために使用されたキーを認識している必要はありません。統合プロテクターは、渡された権限管理情報を利用するだけです。統合プロテクターを使用するには、権限が管理されたコンテンツを表示できる Windows RMS 対応のクライアント アプリケーションが必要です。

保護されたファイルの権限を管理する方法をプロテクターで完全に制御する場合は、自律プロテクターを作成します。自律プロテクターでは権限管理プロセスが完全に制御され、任意の権限管理プラットフォームが使用されます。統合プロテクターでのプロセスとは異なり、SharePoint Foundation は、自律プロテクターを呼び出すときに、ユーザーがドキュメントに対して持っている特定の権限を渡します。自律プロテクターでは、これらの権限に基づいて、ドキュメントのキーが生成され、権限が管理されたメタデータが正しい形式で作成されます。

自律プロテクタとクライアント アプリケーションは、同じ権限管理プラットフォームを使用している必要があります。

統合プロテクターと自律プロテクターの両方を同じ SharePoint Foundation のインストール先にインストールできます。ただし、1 つのプロテクターに登録できるのは 1 つのファイルの種類だけです。

いずれの種類のプロテクタも、以下に説明する I_IrmProtector インターフェイスを実装する必要があります。

I_IrmProtector インターフェイス

各 IRM プロテクタは、I_IrmProtector インターフェイスを実装する COM コンポーネントである必要があります。このインターフェイスを実装することによって、プロテクタは、指定されたファイルの種類の権限が管理されたドキュメントを管理するために必要な次のような機能を SharePoint Foundation に提供することができます。

  • 統合プロテクタか自律プロテクタかの指定も含め、プロテクタを初期化する。

  • ファイルが既に保護されているかどうかを確認する。

  • 適切な言語を設定する。

  • 保護されたバージョン内への適切な権限管理メタデータの配置を含め、ドキュメントを保護する。

  • 適切な権限管理メタデータの SharePoint Foundation への送信を含め、ドキュメントから保護を削除する。

統合プロテクター、自律プロテクターとも I_IrmProtector インターフェイスを実装しなければなりませんが、その実装方法は異なります。それは SharePoint Foundation がプロテクターを呼び出す方法が違うからです。統合プロテクターの場合、SharePoint Foundation は I_IrmProtector.HrProtectRMS メソッド メソッドおよび I_IrmProtector.HrUnprotectRMS メソッド メソッドを呼び出します。自律プロテクターの場合は、I_IrmProtector.HrProtect メソッド メソッドおよび I_IrmProtector.HrUnprotect メソッド メソッドを SharePoint Foundation は呼び出します。これにより、SharePoint Foundation は適切な情報をそれぞれの種類のプロテクターに渡すことができます。

  • 統合プロテクタの場合、I_IrmPolicyInfoRMS クラス オブジェクトを渡します。ここに定義されたメソッドやデータは、独自の統合 IRM プロテクタが、権限を管理するファイルの暗号化や解読を行うために使います。

  • 自律プロテクターの場合は、I_IrmPolicyInfo クラス オブジェクトを渡します。これは、自律 IRM プロテクターが権限管理ファイルにアクセスするための、権限管理メタデータを表します。

カスタム IRM プロテクタをコンパイルした後、IRM プロテクタをドキュメント ライブラリで利用できるようにするには、SharePoint Foundation でプロテクタを登録する必要があります。

IRM プロテクタの登録の詳細については、「[方法] IRM プロテクタを登録する」を参照してください。

関連項目

タスク

[方法] IRM プロテクタを登録する

参照

I_IrmProtector インターフェイス

概念

SharePoint Foundation における Information Rights Management

SharePoint Foundation での IRM フレームワーク アーキテクチャ

IRM ファイルの処理