このクイックスタートでは、MIP SDK を使用して Active Directory Rights Management Server (AD RMS) のサポートを実装する方法について説明します。
注
このクイック スタートで説明する手順は、C# または C++ 用の File SDK と C++ 用の保護 SDK にのみ適用されます。
[前提条件]
まだ行っていない場合は、次の手順を実行してください。
- クイック スタート: 最初にクライアント アプリケーションの初期化 (C++) を実行し、スターター Visual Studio ソリューションを構築します。
- 完全な クイック スタート: 秘密度ラベルを一覧表示する (C++) または クイック スタート: 秘密度ラベルを一覧表示する (C#)
- モバイル デバイス拡張機能を使用して AD RMS をデプロイします。
- 必要に応じて、 AD RMS MDE の DNS SRV レコード が発行されていることを確認します。
サービスの検出
MIP SDK は、サービス URL が明示的に指定されていない場合、 FileEngine または ProtectionEngineのオンプレミス サービス エンドポイントを自動的に検出します。 UPN またはメール アドレス サフィックスを使用して、 FileEngineSettings または ProtectionEngineSettings によって提供されるユーザー ID を使用します。 最初に、ドメイン階層で MDE の_rmsdisco レコードを検索します。 そのプロセスの詳細については、 AD RMS モバイル デバイス拡張機能の DNS SRV レコードの指定に関するページを参照してください。 その DNS SRV レコードが見つからない場合、既定ではサービスの場所として Microsoft Purview Information Protection サービスが使用されます。
AD RMS を使用するように C# でファイル SDK を構成する
アプリケーションで Active Directory 認証ライブラリ (ADAL) と C# 上のファイル 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 実装を変更して機関の検証を無効にする必要があります。
validateAuthority コンストラクターのAuthenticationContextを false に設定して、権限の検証を無効にします。
AuthenticationContext authContext = new AuthenticationContext(authority, false, tokenCache);
AD RMS を使用するように C++ でファイル SDK を構成する
モバイル デバイス拡張機能の DNS SRV レコードをデプロイし、ユーザー プリンシパル名または電子メール アドレスを渡す予定の場合は、 ID を使用するための手順に従います。
ID で AD RMS を使用するように FileEngine::Settings を更新する
MDE の DNS SRV レコードが公開されていて、mip::IdentityでFileEngine::Settingsが提供されている場合、唯一のアクションは、エンジンを保護専用エンジンに設定することです。
FileEngine::Settings engineSettings(mip::Identity(mUsername), "");
engineSettings.SetProtectionOnlyEngine = true;
AD RMS を使用するための C++ での Protection SDK の構成
モバイル デバイス拡張機能の DNS SRV レコードをデプロイし、ユーザー プリンシパル名または電子メール アドレスを渡す予定の場合は、 ID を使用するための手順に従います。
AD RMS と ID を使用するように ProtectionEngine::Settings を設定する
モバイル デバイス拡張機能の DNS SRV レコードが公開されていて、 ProtectionEngine::Settingsに ID が指定されている場合、AD RMS を使用するために追加のコード変更は必要ありません。 サービス検出では、AD RMS エンドポイントが検出され、保護操作に使用されます。
ProtectionEngine::Settings engineSettings(mip::Identity(mUsername), authDelegate, "");
ラベル参照を削除またはコメントする
クイック スタート ガイドの 1 つからアプリケーションをビルドすると、アプリケーションに fileEngine.SensitivityLabels または engine->ListSensitivityLabels(); の形式でラベルへの参照があることがわかります。 アプリケーションは保護のみに設定されているため、これらのコード ブロックを実行すると例外が発生するため、コメント アウトまたは削除する必要があります。
次のステップ
AD RMS をサポートするように変更を加えたので、アプリケーションは保護プロバイダーとして AD RMS サービスを使用して保護専用の操作を実行できます。