クイックスタート: Active Directory Rights Management Server (AD RMS) の保護

このクイックスタートでは、MIP SDK を使用して Active Directory Rights Management Server (AD RMS) のサポートを実装する方法について説明します。

Note

このクイックスタートで説明する手順は、File SDK は C# または C++ にのみ、Protection SDK は C++ にのみ適用されます。

前提条件

まだ実施していない場合は、必ず次の作業を行ってください。

サービス探索

SDK により、UPN またはメール アドレス サフィックスを使用して、FileEngineSettings または ProtectionEngineSettings を介して提供される mip::Identity に基づいてサービス検出が行われます。 最初に、ドメイン階層で MDE の _rmsdisco が検索されます。 プロセスの詳細については、「AD RMS モバイル デバイス拡張機能の DNS SRV レコードの指定」を確認してください。 その DNS SRV レコードが見つからない場合は、既定でサービスの場所として Azure Information Protection サービスが使用されます。

AD RMS を使用するように C# で File SDK を構成する

アプリケーションで Active Directory 認証ライブラリ (ADAL) と C# の File SDK を使用している場合は、2 つの小さな変更が必要です。 FileEngineSettings オブジェクトと AuthenticationContext コンストラクターは、AD RMS および Active Directory フェデレーション サービス (ADFS) で機能するように更新する必要があります。

モバイル デバイス拡張機能の DNS SRV レコードをデプロイし、ユーザー プリンシパル名またはメール アドレスを渡す予定がある場合は、ID を使用する手順に従います

ID で AD RMS を使用するようにファイル エンジン設定を更新する

MDE の DNS SRV レコードが発行され、Microsoft.InformationProtection.Identity がエンジン設定の一部として提供されている場合、必要なコード変更は、FileEngineSettings.ProtectionOnlyEngine = true の設定のみです。 AD RMS 保護エンドポイントに対してラベル付け (ポリシー) 操作がサポートされていないため、このプロパティを設定する必要があります。

// Configure FileEngineSettings as protection only engine.
var engineSettings = new FileEngineSettings("", authDelegate, "", "en-US")
{
     // Provide the identity for service discovery.
     Identity = identity,
     // Set ProtectionOnlyEngine to true for AD RMS as labeling isn't supported
     ProtectionOnlyEngine = true
};

認証デリゲートを更新する

.NET アプリケーションで ADAL を使用している場合は、機関の検証を無効にするために Microsoft.InformationProtection.AuthDelegate 実装を変更する必要があります。 AuthenticationContext コンストラクターの validateAuthorityfalse に設定して、機関の検証を無効にします。

AuthenticationContext authContext = new AuthenticationContext(authority, false, tokenCache);

AD RMS を使用するように C++ で File SDK を構成する

モバイル デバイス拡張機能の DNS SRV レコードをデプロイし、ユーザー プリンシパル名またはメール アドレスを渡す予定がある場合は、ID を使用する手順に従います

ID で AD RMS を使用するように FileEngine::Settings を更新する

MDE の DNS SRV レコードが発行され、mip::IdentityFileEngine::Settings で提供されている場合、唯一のアクションは、エンジンを保護専用エンジンに設定することです。

FileEngine::Settings engineSettings(mip::Identity(mUsername), "");
engineSettings.SetProtectionOnlyEngine = true;

AD RMS を使用するように C++ で Protection SDK を構成する

モバイル デバイス拡張機能の DNS SRV レコードをデプロイし、ユーザー プリンシパル名またはメール アドレスを渡す予定がある場合は、ID を使用する手順に従います

ID で AD RMS を使用するように ProtectionEngine::Settings を更新する

モバイルデバイス拡張機能の DNS SRV レコードが発行され、ID が ProtectionEngine::Settings で提供されている場合、AD RMS を使用するために追加のコード変更は必要ありません。 サービス検出により AD RMS エンドポイントが検出され、保護操作に使用されます。

ProtectionEngine::Settings engineSettings(mip::Identity(mUsername), authDelegate, "");

ラベル参照を削除またはコメントする

クイックスタート ガイドの 1 つでアプリケーションをビルドすると、fileEngine.SensitivityLabels または engine->ListSensitivityLabels(); の形式でラベルへの参照がアプリケーションに含まれるのがわかります。 アプリケーションは保護専用に設定されているため、これらのコード ブロックを実行すると例外が発生するので、コメントアウトまたは削除する必要があります。

次のステップ

AD RMS のサポートを変更したので、アプリケーションから、AD RMS サービスを保護プロバイダーとして使用して保護専用の操作を実行できるようになりました。