次の方法で共有


Microsoft Information Protection (MIP) ソフトウェア開発キット (SDK) のバージョン リリース履歴とサポート ポリシー

サービス

各一般提供 (GA) バージョンは、次の GA バージョンがリリースされると、その後 1 年間サポートされます。 ドキュメントには、サポートされていないバージョンに関する情報は記載されないことがあります。 修正プログラムと新機能は、最新の GA バージョンにのみ適用されます。

プレビュー バージョンを運用環境にデプロイすることはできません。 最新のプレビュー バージョンは、次の GA バージョンに含まれる新しい機能や修正内容のテストにお使いください。 最新のプレビュー バージョンのみがサポートされています。

リリース履歴

以下の情報を使用して、サポートされるリリースの新機能や変更内容をご確認ください。 最新のリリースが最初に一覧表示されます。

メジャー リリースの NuGet パッケージは NuGet でアクティブなままです。 Microsoft ダウンロード センターでは、各メジャー リリースの最新バージョンのみが保持されます。 1.4以前のバージョンは使用できません。

Note

テクニカル サポートについては、Stack Overflow Microsoft Information Protection フォーラムにアクセスするか、Microsoft サポートでサポート ケースを開いてください。

Version Link 状態 サポートの終了
1.14 https://aka.ms/mipsdkbins サポートあり TBD
1.13 https://aka.ms/mipsdkbins113 サポートあり 2024 年 10 月 27 日
1.12 https://aka.ms/mipsdkbins112 サポート対象外 2024 年 3 月 17日
1.11 https://aka.ms/mipsdkbins111 サポート対象外 2023 年 6 月 9 日
1.10 https://aka.ms/mipsdkbins110 サポート対象外 2022 年 11 月 17 日
1.9 https://aka.ms/mipsdkbins19 サポート対象外 2022 年 8 月 23 日
1.8 https://aka.ms/mipsdkbins18 サポート対象外 2022 年 4 月 29 日
1.7 https://aka.ms/mipsdkbins17 サポート対象外 2022 年 1 月 14 日
1.6 https://aka.ms/mipsdkbins16 サポート対象外 2021 年 9 月 23 日
1.5 https://aka.ms/mipsdkbins15 サポート対象外 2021 年 4 月 16 日
1.4 https://aka.ms/mipsdkbins14 サポート対象外 2021 年 3 月 2 日

バージョン 1.14.128

発売日: 2024年2月27日

ファイル SDK

  • MSGファイルを消費する際のユニコード文字に関するバグを修正しました。
  • MSGファイルでハングル文字が正しく表示されない問題を修正しました。
  • ヌル終端でない場合にストリームが正しく整列されないバグを修正。

Protection SDK

  • UTF16エンコードされたJSONプリライセンスのサポートを追加。
  • 期限切れのプリライセンスをFlightingFeature::PreLicenseValidityCheckでチェックするようにした(デフォルトはtrue)。
  • EULとプリライセンスを更新し、ラベル名とラベルの説明を公開。

ポリシー SDK

  • 中国クラウドのポリシー同期URLを更新しました。

AD RMSからRMSに移行したレガシー・テナントのアップデート

  • LoadUserCertがエラーを投げる問題を修正。
  • オフラインパブリッシングライセンスが破損し、コンテンツを復号化するために消費できない問題を修正しました。
  • レガシーテナントのプリライセンスがプロテクションSDKで受け付けられないバグを修正しました。

プラットフォームと依存関係の更新

  • URIパーサーを0.9.7に更新。
  • SQLite3を3.45.1に更新。
  • Libgsfを1.14.52に更新。

重大な変更

  • 設定ファイルのパスをapplicationPath/mipmip_config.jsonからapplicationPath/mip/mip_config.jsonに修正。 ログファイルのPIIをマスクするために設定ファイルを使用しているアプリケーションは、ファイルの場所を更新する必要があります。

バージョン 1.13.209

発売日: 2024年2月27日

ファイル SDK

  • MSGファイルを消費する際のユニコード文字に関するバグを修正しました。
  • MSGファイルでハングル文字が正しく表示されない問題を修正しました。
  • ヌル終端でない場合にストリームが正しく整列されないバグを修正。

ポリシー SDK

  • 中国クラウドのポリシー同期URLを更新しました。

Protection SDK

  • 所有者の電子メールなしでライセンスがキャッシュされる問題を修正しました。
  • UTF16エンコードされたJSONプリライセンスのサポートを追加。
  • 期限切れのプリライセンスをFlightingFeature::PreLicenseValidityCheckでチェックするようにした(デフォルトはtrue)。
  • エンド・ユーザー・ライセンス(EUL)とプリライセンスを更新し、ラベル名とラベルの説明を公開。

Active Directory Rights Management Service(AD RMS)からRights Management Service(RMS)に移行したレガシーテナント向けのアップデート

  • LoadUserCertがエラーを投げる問題を修正。
  • オフラインパブリッシングライセンスが破損し、コンテンツを復号化するために消費できない問題を修正しました。
  • レガシーテナントのプリライセンスがプロテクションSDKで受け付けられないバグを修正しました。

プラットフォームと依存関係の更新

  • OpenSSL を 1.1.1-r から 1.1.1-w に更新。
  • URIパーサーを0.9.7に更新。
  • SQLite3を3.45.1に更新。
  • Libgsfを1.14.52に更新。

重大な変更

  • 設定ファイルのパスをapplicationPath/mipmip_config.jsonからapplicationPath/mip/mip_config.jsonに修正。 ログファイル内の個人識別情報(PII)を隠すために設定ファイルを使用しているアプリケーションは、ファイルの場所を更新する必要があります。

バージョン 1.14.108

発売日2023年10月27日

ファイル SDK

  • SharePoint Online(SPO)によって暗号化された.docファイルが無効なメタデータを持つバグを修正しました。
  • 署名されたOfficeファイルやPDFファイルにラベルを付けると署名が無効になり、一部のエディタで開けなくなる問題を修正しました。
  • Messaging Application Programming Interface (MAPI)を使用して一部のファイルを.msg形式に変換する際に、.msgファイルの構築に失敗するバグを修正しました。
  • MIP ファイルの SDK サンプルで、エラーの発生時に破損した出力ファイルが削除されないバグを修正しました。
  • PDF ファイルの暗号化を解除しても、すべてのラベル メタデータが削除されない問題を修正しました。
  • 本文が空の .msg ファイルを暗号化すると例外がスローされるバグを修正しました。
  • 冒頭にコメントがある .pdf ファイルが、ネイティブに保護された .pdf ファイルではなく .pfile として保護されるバグを修正しました。
  • 非アクティブなラベルを同じラベルで更新すると例外がスローされる問題を修正しました。
  • 保護専用のファイル エンジンでポリシー操作の使用を試みたときに発生する例外を追加しました。

ポリシー SDK

  • DoD、GCC-High、中国ソブリン クラウドのグローバル エンドポイントをターゲットとするポリシー サービスの URL を変更しました。

Protection SDK

  • .msg ファイルの復号または検査に失敗しても、RMS で保護されていない添付ファイルがエラーをスローしないバグを修正しました。
  • 有効期限が 1 日未満の EUL がキャッシュされないバグを修正しました。
  • テンプレート保護の使用時に、暗号化されたアプリケーション データの保持がサポートされるようになりました。
  • シリアル化されたテンプレート データ (Windows/Linux/macOS) のプルがサポートされるようになりました。
    • 有効にするには、GetTemplatesSettings::SetFetchSerializedTemplates を使用します。
    • 取得するには、TemplateDescriptor::GetSerializedTemplate() を使用します。
  • ユーザー証明書ストアが暗号化されないバグを修正しました。
  • 署名されたアプリのデータが公開時と消費時で異なるバグを修正しました。

プラットフォームと依存関係の更新

  • FIPS 準拠のために Open SSL 3.0 にアップグレードされました。
  • 一部の監査イベントが削除される問題を修正しました。
  • 1DS キャッシュ クリーンアップの最大シャットダウン タイマーを制御するフラグを公開しました。
  • ログ ファイルで PII のマスクがサポートされるようになりました。 既定では、PII はマスクされません。
    • 設定ファイルでPIIをマスクするために、mip_config.jsonでAllowPiiをfalseに設定します。 設定ファイルは mipConfiguration->GetPath()/mip にあります。
  • 既定で Office ファイルを CBC 暗号化するようサポートが追加されました。
  • リソースのロケーション パスに関する Android の例外を修正しました。

重大な変更

  • 署名済み Office ファイルと署名済み PDF ファイルのエラー コードを Mip::FileIOError から Mip::NotSupportedError に変更しました。
  • 監査イベントのプロパティには、既定では None ではなく PII の型が格納されます。 PII が None であると想定されるカスタム監査デリゲートでは、更新が必要です。
  • 署名されたアプリ データは、発行時に DKE で保護されたドキュメントの追加エントリを返します。
  • Office ファイルでは、既定で CBC 暗号化が使用されます。 これを元に戻すには、FlightingFeature::UseCbcForOfficeFileEncryption を false に設定します。

バージョン 1.13.187

発売日2023年8月15日

バグの修正

  • MIP SDK では、Linux 上の静的にリンクされた OpenSSL のシンボルが非表示になりました。
  • 従来のアルゴリズム フラグが設定されている場合に、Office 以外の複合ファイルで AES128-ECB が使用されていたバグを修正しました。 これらのファイルは AES256-CBC を使用し、従来のアルゴリズム フラグを無視する必要があります。
  • 監査イベントの送信優先度を最高レベルに引き上げ、監査イベントをより頻繁に監査エンドポイントに送信するようにします。

バージョン 1.13.182

リリース日: 2023 年 7 月 27 日

バグの修正

  • RMS 以外のテクノロジで添付ファイルが保護されている場合に MSG ファイルから保護を削除する問題を修正しました。 例外の代わりに警告がスローされます。

バージョン 1.13.176

リリース日: 2023 年 6 月 10 日

バグの修正

  • ディスク領域の不足状態で CommitAsync() が返されない問題を修正しました。
  • SharePoint からファイルをダウンロードしたときに xlsb ファイルの FileHandler を作成できない問題を修正しました。

プラットフォームと依存関係の更新

  • Ubuntu 22.04 のサポートが追加されました。
  • Debian 11 のサポートが追加されました。
  • RedHat Enterprise Linux 9 のサポートが追加されました。
  • Ubuntu 18.04 のサポートを削除しました。
  • Debian 9 のサポートが削除されました。

バージョン 1.13.161

リリース日: 2023 年 3 月 28 日

バグの修正

  • .NET NuGet パッケージでの署名の問題を修正しました。
  • オフライン発行設定が見つからない問題 ProtectionProfileを修正しました。

バージョン 1.13.158

リリース日: 2023 年 3 月 17 日

ファイル SDK

  • MIP SDK が暗号ブロック チェーン モードで Office ファイルと Email を発行できるようにする機能フラグを追加しました。
    • UseCBCForOfficeFileEncryption を介したフライティング機能 MipConfiguration.FeatureSettingsOverride() で設定します。
  • 暗号ブロック チェーン (CBC) モードで保護された Office ファイルと Email の使用に関する問題を修正しました。 MIP SDK では、Office によって生成された CBC モードで保護されたコンテンツを使用できるようになりました。

Protection SDK

  • Protection SDK でのオフライン発行のプレビュー サポートが追加されました。
    • オフライン保護は、C++ と .NET の両方で ProtectionProfileSettings.OfflinePublishing から true に設定することで有効にできます。

重大な変更

  • 再発行用の PublishingSettings には、シリアル化された公開ライセンスか、コンストラクター内の ProtectionHandler が必要です。構築後にどちらかまたは両方を設定することはできません。
  • SetPublishingLicenseForRepublish および SetProtectionHandlerForRepublish を削除しました。
  • (ProtectionDescriptorBuilderSetLabelInfo の代わりに SetLabelId を使用します
  • mip::StorageDelegateIStorageDelegateInsertメソッドはInsertOrReplaceに置き換えられる。

クリティカル アップデート

MIP SDK 1.13では、Word、Excel、PowerPoint、Outlook、Exchange Online、SharePoint Online、およびCBCパブリッシングをオプトインしたMIP SDK対応アプリケーションによって生成された、AES256-CBCで保護されたファイルや電子メールの消費をサポートします。 アプリケーションで File SDK を使用してこれらの形式のいずれかを使用する場合は、アプリケーションを MIP SDK 1.13 に更新することが重要です。 2023 年の後半には、Microsoft 365 Apps、Exchange Online、SharePoint Online で、既定で AES256-CBC を使用した保護が開始されます。 更新されていないアプリケーションは、ファイルと Email を適切に復号化できません。

MIP SDK 1.13 は、電子コードブック (ECB) モードで AES128 を使用して Office ドキュメントとメールを発行し続けます。 MIP SDK 1.14 では、AES256-CBC の発行が既定で有効になります。 CBC 発行を事前にテストする場合は、UseCBCForOfficeFileEncryption を介して MipConfiguration.FeatureSettingsOverride() 機能フラグを有効にします。

MIP SDK 1.13 への更新に失敗したアプリケーションでは、Something bad happened: AESCryptoWriter: Failed to transform final block という例外が発生する場合があります。

バージョン 1.12.101

リリース日: 2022 年 11 月 18 日

ファイル SDK

  • ラベル名に特殊文字を含めると、Microsoft Outlook でメッセージを開くことができない可能性がある問題を修正しました。
  • 非アクティブなラベルの保護が削除されたときのバグを修正しました。
  • 共同認証が有効になっているラベルのアクセス許可を変更すると、保護されたドキュメントが開けないバグを修正しました。
  • libgsf を 1.14.50 に、LibXML2 を 2.9.14 にアップグレードしました。
  • エクストリーム・メモリー・プロファイル(XMP)をバージョン2.4.7にアップグレード

ポリシー SDK

  • ComputeActions の無効なメタデータの例外に関するバグを修正しました。

Protection SDK

  • TenantInformation のイントラネットとエクストラネット URLを取得するアクセサーを追加しました。
  • 委任ライセンスを取得するための C API を公開しました。
  • 子ラベルが削除されたときの親ラベル メタデータの不整合バグを修正しました。
  • CreateFromLicenseType の認証キャッシュ バグを修正しました。
  • GetTemplatesAsync() 呼び出し中にエンジンがクリーン アップされるとクラッシュする問題を修正しました。
  • GetLicenseRightsData を追加して、user/objectId/puid および権限を公開ライセンスから取得できるようにしました。
  • 記述子がない場合に、記述子タグをライセンスに追加できないバグを修正しました。
  • Linux での .NET クラッシュを修正しました。
  • デスク スペースの問題を修正しました。コンテンツを保護するときに MIP のディスク領域が不足すると、エラーが報告されるようになりました。
  • OpenSSL 依存関係を 1.1.1-r.1 にアップグレードしました。

プラットフォームと依存関係の更新

  • クラウドが一貫して扱われなかったバグを修正しました。
  • オフライン発行プレビュー機能のサポートを追加しました。
  • Sovereign Cloud シナリオでラッパーがテレメトリ クラウドを見つけられないバグを修正しました。
  • デバッグ ビルドの監査テレメトリから PII を削除しました。

重大な変更

  • usersWithDefaultRightsadditionalUsersAndRights の両方が空の場合は、CreateFromLicenseTypeは、BadInputError をスローします。
  • 新しいメソッドである GetLicenseRightsDataGetLicenseRightsDataAsync をクラス ProtectionEngine に追加しました。

バージョン 1.12.61

リリース日: 2022 年 6 月 9 日

ファイル SDK

  • File SDK が FileEngineSettings.DataBoundary を介したデータ境界をサポートするようになりました。
  • GetCodePageMsgInspector のバグが修正されました。
  • BodyType が常に TXTMsgInspector を返すバグを修正しました。
  • UserRolesスローされた java.util.Collections$UnmodifiableCollection can't be cast to java.util.List 例外を使用する Java ラッパーのバグを修正しました。
  • > を使用した GetDecryptedTemporaryStreamAsync()2GB のテキスト・ファイルを復号化する際のバグを修正しました。

ポリシー SDK

  • Policy SDK が PolicyEngineSettings.DataBoundary を経由したデータ境界をサポートするようになりました。
  • 特定の条件でポリシーの変更によってクラッシュが発生するバグを修正しました。
  • DKE保護のEncrypt Onlyラベルがフィルタリングされるべき時にフィルタリングされない問題を修正しました。

Protection SDK

  • プレビュー: オフライン保護のサポートを追加しました。
    • ProtectionProfile.OfflinePublishing を作成する際に ProtectionProfile を True に設定することでオフライン保護を有効にします。
    • テンプレートのキャッシュを実行するには、ProtectionEngineSettings.SetTemplateRefreshArgs(std::chrono::hours) (C++) または ProtectionEngineSettings.TemplateRefreshArgs (.NET) を設定して、テンプレート キャッシュの保護を有効にします。
  • Protection SDK が、ProtectionEngineSettings.DataBoundary を介してデータ境界をサポートできるようになりました。

重大な変更

  • FileHandler.SetLabel() API は、入力としての rpmsg ファイルをサポートしなくなりました。
  • プレーンテキストのMSGファイルをMsgInspectorに渡すと、NotSupportedErrorが発生します。
  • MsgInpectormessage.rpmsgファイルの一部である添付ファイルの復号化を試みなくなりました。
  • MsgInpectorは、もしmessage.rpmsgファイルに MSG の添付ファイルがあった場合、完全に機能するMSGファイルを返す。 これらの MSG ファイルは、FileHandler.RemoveProtection API を使用して復号化されます。
  • TelemetryDelegate および AuditDelegateWriteEvent メソッドに 2 番目のパラメーター EventContextが必要になりました。 EventContext クラスは、イベント用のターゲット クラウドとデータ境界の情報を公開します。

プラットフォームと依存関係の更新

  • 欧州連合のデータ境界を設定するための 3 つの SDK すべてに対するサポートが追加されました。
    • DataBoundaryがEUに設定されている場合、すべてのテレメトリと監査イベントはEU地域に直接流れる。
    • DataBoundary をその他リージョンに設定すると、最も近いサービス エントリー ポイントにデータが出力されます。
  • libxml2 を 2.9.13 に更新しました。
  • Android 固有のクラッシュを修正しました。
  • SDK がログ レベルを完全に尊重しない問題を修正しました

バージョン 1.11.96

リリース日: 2022 年 7 月 20 日

ファイル SDK

  • MemoryStream 大きなファイルの種類の GetDecryptedTemporaryStream のバグを修正しました。
  • スタック オーバーフロー クラッシュが原因の PDF 暗号化中のデータ損失に関するバグを修正しました。
    • OptimizePdfMemoryの場合、/Infoが内部間接オブジェクトを持つObjStmであれば、スタックオーバーフローの代わりにPDFPARSER_ERROR_FORMATを返す。
  • サポートする MIP ライブラリが Java で読み込まれなかったバグを修正しました
  • rpmsg 拡張子の末尾が、null ターミネーターである場合に、保護された MSG 添付ファイル付き MSG ファイルが破損するバグを修正しました
  • リンクの添付ファイルを含む MSG ファイルのクラッシュを修正しました
  • Windows用のAzure Information Protection(AIP)統合クライアントアプリを使用して、ラベルアプリケーションのシーケンスが正しく保持されないバグを修正しました
  • 無効なラベルを示すRemoveProtectionスローLabelDisabledError例外が指定されていたバグを修正しました
  • 入力ファイルが、templateID で保護されている場合に、DeleteLabel が無効なメタデータ例外をスローするバグを修正しました

ポリシー SDK

  • OnPolicyChanged 呼び出し中にネイティブ マップと管理対象マップ間の不一致が原因でクラッシュを起こすポリシー変更のバグを修正しました

プラットフォームと依存関係の変更

  • C# または Java インターフェイスを使用しているときにテレメトリと監査データが送信されない問題を修正しました
  • 同じベース URL を持つクラウドが一貫して処理されないバグを修正しました
  • Adobe XMP のバージョンを 6.0.0 に更新し、2.1.0 storeAtts() 関数の脆弱性に対するセキュリティ修正プログラムをプッシュしました
  • .NET の EnableAuditAndTelemetryForSovereignClouds 公開フラグ
  • vtable セキュリティ チェックを実行する制御フローの整合性によって発生するクラッシュを修正しました
    • Android はクロスライブラリ vtable チェックをサポートしていないため、これらのチェックを無効にしました
  • 無料の脆弱性の後に使用する Windows 暗号化デリゲートのバグを修正しました。 Windows で EnableFipsValidatedCryptography に設定されているアプリケーションのみに適用します
    • hashObject ベクトルがハンドルの前にクリーン アップされていたため、BcryptData のデストラクターでハンドルがクリーン アップされた際にユーズ アフター フリーを引き起こしました。

バージョン 1.11.64

リリース日: 2022 年 1 月 12 日

ファイル SDK

  • 無効なコンテンツ形式を使用している pfile にラップされた MSG ファイルのバグを修正しました。
  • Inspector クラスによって rpmsg ファイルがクラッシュするバグを修正しました。
  • SDK が 4 GB を超えるファイルを適切に圧縮できず、ファイルが破損する可能性が生じるバグを修正しました。

Protection SDK

  • iOS上のAD RMSのDNSレコードの追跡に関する問題を修正しました。

プラットフォームと依存関係の更新

  • Java サンプル アプリの log4j が更新されました。
  • Android 上の arm64 ABI の名前が arm64-v8a に変更されます

バージョン 1.11.53

リリース日: 2021 年 11 月 17 日

ファイル SDK

  • 保護された添付ファイルを伴うプレーン テキストの .MSG ファイルに対して、mip::FileHandler の IsModified() が true ではなく false を返すバグを修正しました。
  • 特定のケースで保護されていないラベルを破損するというメタデータ内の Addressing XML 書式設定問題のバグを修正しました。

ポリシー SDK

  • ポリシー同期のデッドロックを防止する機能強化が導入されました。

重大な変更

  • 以前は、ラベルが「転送不可」または「暗号化のみ」で構成され、ファイル保護アクションが構成されている場合、MIP SDKはファイル コンテンツ タイプのラベル リストにラベルを表示しませんでした。

    • この問題を修正するためにSDKが更新されました。 両方のコンテンツ タイプに適用するように構成されている場合、どちらの場合も、ラベルはフィルター処理されません。
    • この変更は、保護アクションが「暗号化」のみまたは「転送不可」であったラベルには影響しません。
    • 最後に、アクションが定義済みまたはユーザー定義の保護であるファイルを対象とするラベルには影響しません。
  • 特定のシナリオをより適切に処理するために、既存の例外を更新しました。 次のものは、以前はNetworkError::Category::FailureResponseCodeとして表示されていました

    • NetworkError::Category::ServiceUnavailable
      • 新しい例外カテゴリ (NetworkError 例外)。
      • 依存サービスが使用できない場合に返されます。
      • サービスは 503 を返します
    • NetworkError::Category::Throttled
      • 例外: NetworkError
      • 従属サービスへのリクエストが多すぎると返されます。
      • サービスは 429 を返します

プラットフォームと依存関係の更新

  • SDK の依存関係が最新バージョンに更新されました
  • すべてのMIP SDKバイナリは、AndroidとWindows用のlibxml2スタティックライブラリとlibgsfダイナミックライブラリのバージョン2.9.12を使用するように更新されています。
  • Linux のプロキシ サポートが導入されました。 プロキシを設定する方法の例を以下に示します。
export HTTP_PROXY="http://10.10.10.10:8080"

バージョン 1.10.115

リリース日 2022 年 2 月 25 日

  • 無効なコンテンツ形式を使用している pfile にラップされた MSG ファイルのバグを修正しました。
  • Inspector クラスによって rpmsg ファイルがクラッシュするバグを修正しました。
  • SDK が 4 GB を超えるファイルを適切に圧縮できず、ファイルが破損する可能性が生じるバグを修正しました。
  • その保護された MSG ファイルの検出でのバグを修正しました。 ファイルは保護されているかもしれませんが、SDKはそれらをプレーンテキストとして扱います。

バージョン 1.10.98

リリース日: 2021 年 9 月 29 日

バグの修正

  • iOS でビットコードが有効になっていないバグを修正しました

バージョン 1.10.97

リリース日: 2021 年 9 月 17 日

バグの修正

  • MSG ファイルに保護ラベルを適用するときに MSG ファイルの添付ファイルが破損したというバグを修正しました。

バージョン 1.10.93

リリース日: 2021 年 8 月 23 日

一般的な変更

  • MipConfiguration クラスが追加されました。
    • このクラスは、MipContext で以前に直接設定された構成設定を制御します。
    • デリゲート、ログ記録の場所などは、このオブジェクトの一部として設定されます。
    • 詳しくは、MipContext の概念を確認してください。
  • MipContext::Create()コンストラクタは、新しいMipConfigurationオブジェクトだけを受け入れるように変更された。
  • .Localeプロパティがnullに設定されている場合、すべてのエンジン設定のデフォルトは en-US ロケールです。
  • SDK がログ レベルの設定を完全には受け入れなかった問題を修正しました。

ファイル SDK

  • MSG ファイルへのラベルの読み取りおよび書き込みのサポートを追加しました。
  • FileHandler::IsLabeledOrProtected() で、MSG ファイルがサポートされるようになりました。
  • ファイル SDK で、保護されていない MSG ファイルでの保護された添付ファイルの暗号化解除がサポートされるようになりました。
    • この変更はファイルのみに適用され、MSGファイルやZIPファイルなどのコンテナには適用されません。
  • 新しい静的メソッド mip::FileHandler::GetFileStatus() を追加しました
    • この関数は、ファイルがラベル付けまたは保護されているかどうか、あるいは保護されたオブジェクトを含むかどうかを示す新しいオブジェクト mip::FileStatus を返します。
    • FileStatus では、IsProtectedIsLabeledContainsProtectedObjects という 3 つのプロパティを公開します。
    • ContainsProtectedObjectsは、保護された添付ファイルのあるMSGファイルに便利です。
  • 保護された添付ファイルを持つプレーンテキストのMSGファイルでFileHandler::RemoveProtection()を呼び出すと、添付ファイルの保護が解除されます。
  • ループ内で IProtectionHandler を呼び出すと IFileHandler.SetProtection() が破棄されるバグが修正されました。 IProtectionHandlerインスタンスは使用後に破棄されなくなった。

ポリシー SDK

  • コンテンツ マーキング変数 ${Event.DateTime} の既定値は UTC ではなくローカル時刻になります。
    • この変数は、フライト機能EventDateTimeTokenUseUtcを使用することで、以前のデフォルトに戻すことができます。
  • IsActivePolicyHandler 内でPolicyEngine から取得した値と同じ値を返さないバグを修正しました。

Protection SDK

  • プロテクションSDKとファイルSDKの両方で発生する、より具体的なエラータイプを追加しました。 「破壊的変更」セクションを参照してください。

重大な変更

  • 既定の監査設定を管理する新しいカスタム設定が導入されました。
    • 監査設定を設定する新しいプロパティが監査デリゲートに追加されました。
    • LabelGroupData クラスは IsAuditEnabled() メソッドを持たなくなりました。
    • ポリシーが読み込まれたら、代わりに GetEnableAuditSetting() を使用して、ポリシー内の EnableAudit 設定を取得できます。 デフォルトの監査設定はUndefinedで、旧バージョンではtrueだった。
  • ドキュメントのタイムゾーンを ComputeActions に渡して、ラベルを適用するマシンとは異なるタイムゾーンにドキュメントが存在するかのようにアクションを計算できます。
    • サービスのユーザーに代わってラベルが適用され、サーバーのローカル時刻がユーザーの時刻と必ずしも同じではない場合に便利です。
    • UTC 形式で ${Event.DateTime} を返す代わりに、タイムゾーンを表示せずに既定でローカル時刻に設定するようになりました。
  • 特定のシナリオをより適切に処理するために、既存の例外を更新しました。
    • NoPermissionsError::Category::NotPremiumLicenseUser
      • 以前は NoPermissionsError::Category::AccessDenied として表示されました
      • ライセンスのないユーザーが保護されたコンテンツを取り消そうとした場合に発生します。
    • NoPermissionsError::Category::NotOwner
      • 以前は NoPermissionsError::Category::AccessDenied として表示されました
      • ユーザーが所有しないドキュメントを取り消そうとした場合に発生します。
    • ServiceDisabledError::Extent::Tenant
      • 以前は ServiceDisabledError::Extent::User として表示されました
      • 代わりに、対象となる Azure Rights Management サービスが無効になっている場合に返されます。
    • NoPermissionsError::Category::AccessDenied
      • 以前は NetworkError::Category::FailureResponseCode として表示されました
      • ライセンスまたはオンボードの制御により、ユーザーに発行権限がない場合に返されます。
    • BadInputError::ErrorCode::DoubleKey
      • 以前は NetworkError::Category::FailureResponseCode として表示されました
      • 二重キー暗号化 (DKE) パラメーターが正しくない場合に返されます。
    • CustomerKeyUnavailableError
      • 新しい例外。
      • テナントが、Bring Your Own Key (BYOK) 用に構成されていて、キーに到達できない場合に返されます。
      • サービスは HTTP424 を返します。
    • NetworkError::Category::FunctionNotImplemented
      • 新しい例外。
      • サービスが HTTP501 (実装されていません) を返した場合に返されます。
    • 次のものは、以前はNetworkError::Category::FailureResponseCodeとして表示されていました
      • TemplateArchivedError: テンプレートIDを適用しようとしたアプリケーションはアーカイブされています。
      • LicenseNotRegisteredError: ドキュメント公開ライセンスが失効用として登録されていません。
      • NoPermissionsError::Category::UserNotFound: 指定されたユーザーがターゲット テナントに存在しません。
      • NoPermissionsError::Category::InvalidEmail: 無効な電子メール アドレスが指定されました。
      • NoPermissionsError::Category::AccessDenied: 指定されたIDは、RMS によって認識されるプリンシパルではないか、有効な委任者ではありません。
      • BadInputError::ErrorCode::LicenseNotTrusted: 指定された発行ライセンスは、信頼された発行元からのものではありません。 (C API では該当しません)
      • BadInputError::ErrorCode::ParameterParsing: さまざまな XML、JSON、または他の解析の問題によって返されます (C API では該当しません)

プラットフォームと依存関係の更新

  • Debian 10 のサポートが追加されました。
  • Ubuntu 20.04 のサポートが追加されました。

バージョン 1.9.90

リリース日: 2021 年 7 月 7 日

一般的な変更

  • 32 ビットの Windows でレガシ ドキュメントを暗号化解除できないというファイル SDK のバグを修正しました。
  • iOS ビルドでビットコードを有効にします。
  • OpenSSL 1.1.1k を使用するよう Ubuntu 16.04 を更新しました。
  • サード パーティの電子情報開示ツールによって以前に処理された MSG ファイルの暗号化解除に関する問題を修正しました。

バージョン 1.9.78

リリース日: 2021 年 4 月 29 日

一般的な変更

  • 開発者がエラーを関連付けるカスタム シナリオ ID を提供できる新しいパラメーターが追加されました。
    • サービス側のエラーを診断するためにサポート ケースが必要な場合は、このシナリオ ID がトラブルシューティングに役立つことがあります。
    • ファイル SDK: FileHandler の作成の際に、FileExecutionState を介して applicationScenarioID を設定します
    • 保護 SDK: さまざまな API で、シナリオ ID の引き渡しがサポートされるようになりました。
      • mip::ProtectionCommonSettings(mApplicationScenarioId)
      • mip::GetTemplatesSettings::CreateGetTemplatesSettings()->SetApplicationScenarioId()
      • mip::ProtectionHandler::PublishingSettings()->SetApplicationScenarioId()
      • mip::ProtectionHandler::ConsumptionSettings()->SetApplicationScenarioId()
      • mip::PolicyEngine::SetSessionId()
  • Workload 列挙型および同意チェックが追加されました。
    • HasWorkloadConsent()GetWorkloadConsent()FileEngine および PolicyEngine に追加されました。
  • ポリシー SDK .NET ラッパーに同期 API が追加されました: AddEngine()ListEngines()DeleteEngine()UnloadEngine()
  • ProtectionProfile::Settings::AddRedirectionUri() を介して保護要求をリダイレクトするサポートが追加されました
  • LoggerDelegate を使用してカスタム コンテキスト データをログに書き込むロガー コンテキストが追加されました。
    • この API は、サービス内のエラー イベントを 1 つの操作またはイベントに関連付けるのに役立ちます。
    • 次の API では、ロガー コンテキストの提供がサポートされています:
      • LoggerDelegate::WriteToLogWithContext
      • TaskDispatcherDelegate::DispatchTask または ExecuteTaskOnIndependentThread
      • FileEngine::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
      • FileProfile::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
      • ProtectionEngine::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
      • ProtectionProfile::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
      • PolicyEngine::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
      • PolicyProfile::Settings::SetLoggerContext(const std::shared_ptr<void>& loggerContext)
      • FileHandler::IsProtected()
      • FileHandler::IsLabeledOrProtected()
      • FileHanlder::GetSerializedPublishingLicense()
      • PolicyHandler::IsLabeled()

プラットフォームと依存関係の更新

  • CentOS 8 のサポートが追加されました
  • iOS フレームワークのサポートが追加されました
  • OpenSSL がバージョン 1.1.1k に更新されました
  • SQLite が 3.34.1 に更新されました

重大な変更

  • AIP Analytics 有効なテナントに対する既定の監査の動作が変更されました。 AIP Analytics 機能のサービス側コンポーネントの構成に加えて、感度ラベル ポリシーで EnableAudit プロパティを true に設定することが必須になりまた。
    • Set-LabelPolicy -Identity Global -AdvancedSettings @{EnableAudit="True"}
    • 高度なポリシー設定の詳細については、このドキュメントの記事を確認してください。
  • 関数 GetApplicationScenarioId()FileExecutionState に追加されました。
  • ContentFormat 列挙型が削除されました。
  • 文字列/エラー コードを介して以前に NetworkError に公開された一連のエラーのカテゴリで、特定のエラーが追加されました。
    • NoPermissionsError::Category::UserNotFound
    • NoPermissionsError::Category::AccessDenied
    • NoPermissionsError::Category::AccessExpired
    • NoPermissionsError::Category::UserNotFound
  • Microsoft.RightsManagement.Exceptions.UnknownTenantExceptionが投げられたサービスはNetwork ErrorではなくServiceDisabledErrorとして表示されるようになった。

バグの修正

  • mip::FileHandler::IsLabeledOrProtected() を呼び出す際のメモリ リークを修正しました。
  • FileHandler::InspectAsync() が間違ったオブザーバーを呼び出して障害が生じるバグを修正しました。
  • SDK が共同編集 (DOC、PPT、XLS) をサポートしていない Office 形式に共同作成ラベル形式を適用しようとしたバグを修正しました。
  • FileEngine の廃棄に関連した .NET ラッパーでのクラッシュを修正しました。 ネイティブ PolicyEngine オブジェクトは一定期間存在していたため、ポリシーを更新しようとすると、クラッシュが発生します。
  • SiteID プロパティの欠落のために、古いバージョンの AIP によって適用されたラベルを SDK が無視するバグを修正しました。

バージョン 1.8.97

リリース日: 2021 年 2 月 24 日

  • 子ラベルが適切にフィルター処理されず、要求されていない場合でもすべての種類のラベルが含まれるバグを修正しました。
  • ラベル メタデータが不完全な場合に、ラベルが RemoveProtection() に維持されないというバグを修正しました。

バージョン 1.8.94

リリース日: 2021 年 2 月 8 日

  • C++ プロジェクト用のデバッグ構成がリリース バイナリをデプロイする NuGet パッケージのバグを修正しました。 バージョン 1.8.86 は、ネイティブ C++ アプリでクラッシュする可能性があります。 必ず 1.8.94 以降に更新してください。
  • ポリシー エンジンで保護を取り除く必要があったバグを修正しました。
    • ポリシー エンジンを読み込むことができず、ラベル メタデータが存在する場合、保護が取り除かれると、ポリシー エンジンは破棄されます。
  • ファイルが別の保護されたラベルに変更された場合に空の labelInfo.xml が生成されたバグを修正しました。

バージョン 1.8.86

リリース日: 2021 年 1 月 13 日

一般的な変更

  • ARM での Mac のサポートが追加されました。
  • Mac 用のすべての dylib ファイルが署名されます。
  • すべてのクラウドは、3つのソフトウェア開発キット(SDK)で完全にサポートされています。
  • TelemetryConfiguration の名前を DiagnosticConfiguration に変更します。
  • MipContext ではなく DiagnosticConfiguration を受け入れるよう、TelemetryConfiguration が更新されました。
  • 新しい AuditDelegate が公開されました。
  • バージョン1.9では、いくつかのカスタム設定の名前が変更され、削除されました。 これらのカスタム設定は引き続き、バージョン 1.8 の更新プログラムの名前と並行して機能します。
新しい名前 古い名前
is_debug_audit is_debug_telemetry
is_audit_disabled is_built_in_audit_disabled

ファイル SDK

  • 二重キー暗号化を使用したユーザー定義ラベルのサポートが追加されました。
  • MSG ファイルの本文エンコード タイプを公開するための MsgInspector.BodyType という API が追加されました。
  • ユーザー定義のアクセス許可を持つ二重キー暗号化をサポートするための API が追加されました。
  • mip::FileHandler のフラグが追加されました。これにより、呼び出し元は監査検出イベントの送信を無効にできます。 これにより、ClassifyAsync() API を使用すると重複する検出イベントが発生するというシナリオが修正されます。
  • 次のようなバグを修正しました。
    • XPS ファイルの保護の設定に失敗する。
    • SharePoint Online からアップロード/ダウンロードし、カスタム アクセス許可を削除した後は、ファイルを開くことができません。
    • RemoveProtection() 関数は、message.rpmsg 入力を受け入れていました。 MSG ファイルのみが受け入れられるようになりました。
    • 保護されていないファイルを追跡するか、失効させようとしたときに発生したクラッシュ。

ポリシー SDK

  • Microsoft Office と SharePoint オンラインのラベル付きドキュメント間の一貫性を確保するために、既定のメタデータ プロパティから ActionId が削除されました。
  • Azure Purview 固有のラベルのサポートが追加されました。
  • それぞれのデリゲートを使用してテレメトリと監査の両方をオーバーライドする機能が追加されました。
    • 監査デリゲートは、AIP 監査イベントを AIP Analytics 以外の宛先に、または AIP Analytics に加えて送信する機能を提供します。
  • mip::PolicyHandler のフラグが追加されました。これにより、呼び出し元は監査検出イベントの送信を検出できます。 これにより、ClassifyAsync() API を使用すると重複する検出イベントが発生するというシナリオが修正されます。
  • 特定のシナリオで暗号化されたポリシー データベースを開くことができなかったバグを修正しました。
  • 開発者が既定の MIP SDK 監査パイプラインをオーバーライドし、独自のインフラストラクチャにイベントを送信できるようにする新しい AuditDelegate が公開されています。
  • mip::ClassifierUniqueIdsAndContentFormats および GetContentFormat() は、std::string ではなく mip::ContentFormat を返すようになりました。 この変更は、.NET ラッパーと Java ラッパーでレプリケートされます。
  • ContentFormat.DefaultContentFormat.File になりました。

Protection SDK

  • true の場合に Active Directory Rights Management サービス クラスターへの接続を禁止する ProtectionEngineSettings.SetAllowCloudServiceOnly プロパティが追加されました。 クラウド環境のみが使用されます。
  • 委任ライセンスを取得するためのサポートが追加されました。
    • 委任ライセンスを使用すると、サービスはユーザーに代わってコンテンツのライセンスを取得できます。
    • これにより、サービスに対して追加の呼び出しを行わずに、サービスが権限のデータを表示し、ユーザーの代わりに暗号化解除できるようになります。

Java ラッパー (パブリック プレビュー)

  • Java ラッパーの追跡と取り消しのサポートが追加されました。
  • Java ラッパーにストリーム サポートが追加されました

C API

  • MIP_FLIGHTING_FEATURE_KEEP_PDF_LINEARIZATION フラグが C API から削除されました。

バージョン 1.7.147

ファイル SDK

  • .PBIXファイルフォーマットのマイナーバグ修正。

バージョン 1.7.145

リリース日: 2020 年 11 月 13 日

一般的な変更

  • NuGet パッケージが更新され、常にではなく更新時にのみ依存関係がコピーされるようになりました。
  • .NET でのデバッグ構成では、ネイティブ ライブラリのリリース バージョンが使用されます。 .NET ソリューションをデバッグ モードでリモート サーバーに配置するお客様は、VC++ デバッグ ランタイムをインストールする必要がありましたが、これは簡単ではありませんでした。 ネイティブ ライブラリにデバッグを進める必要がある場合は、SDK の再頒布可能パッケージから DLL をプロジェクト フォルダー (https://ala.ms/mipsdkbins) にコピーしてください
  • .NET Core プロジェクトに対して警告を生成するバグを修正しました。

バージョン 1.7.133

リリース日: 2020 年 9 月 23 日

一般的な SDK の変更

  • パブリック プレビューは、Windows と Ubuntu 18.04 上の Java で使用できます。
  • .NET Core が Windows でサポートされるようになりました。
  • Ubuntu 18.04 での .NET Core のパブリック プレビューのサポート。
  • ストレージ キャッシュの種類が OnDiskEncrypted. に設定されている場合に、キーストアのローカル ログ記録が向上しました
  • .Net ラッパーで機能フライトが有効になりました
  • SDK テレメトリ動作を 1.6 以前に戻しました。 最小テレメトリにのみオプトインした場合、使用状況イベントの最小セットが送信されるようになりました。

ファイル SDK

  • MSGInspector での UTF-16/UTF-8 本文変換を修正しました。
  • ファイル SDK によって保護されるファイルの最大ファイル サイズの既定値を 6 GB に設定します。
    • 使用可能なメモリ内に少なくともファイル サイズのメモリを必要とする大きなファイルの暗号化解除のための変更が行われました。
    • カスタム設定 max_file_size_for_protection によってオーバーライドできます。
  • 線形補間された PDF のサポートが追加されました。
  • 変更イベントで LastModifiedDate が更新されなかったバグを修正しました。
  • 保護された PDF の作成でのメモリ リークを修正しました。
  • ファイル SDK は追跡ファイルの失効をサポートします。
  • FileEngine::Settings::SetLabelFilter は非推奨です。代わりに ConfigureFunctionality を使用してください。

ポリシー SDK

  • ポリシー SDK は、暗号化のみのラベル付けアクションをサポートするようになりました。
  • キャッシュされたエンジンから mip::Identity が正しく読み込まれなかったバグを修正しました。
  • 分類 API において、分類 GUID の比較で大文字と小文字が区別されるバグを修正しました。
  • 新しいフィールドを追加して監査イベントを強化しました。

Protection SDK

  • キャッシュされたエンジンから mip::Identity が正しく読み込まれなかったバグを修正しました。
  • 新しく作成された発行ライセンスの暗黙的な登録を追加しました。
  • Office ファイル内の DKE をサポートするために使用される暗号化アルゴリズムのサポートを追加しました。
  • documentId および owner パラメーターがオプションになりました。

C API

  • 不足している ID API と DKE API が追加されました。
  • すべての SDK にわたって、プロファイルからエンジンへ AuthDelegate を移動しました。
  • C 用のポリシー SDK サンプルを発行する
  • MIP_CC_CreateProtectionEngineSettingsWithIdentity は非推奨です。代わりに MIP_CC_CreateProtectionEngineSettingsWithIdentityAndAuthCallback を使用してください。
  • MIP_CC_CreateProtectionEngineSettingsWithEngineId は非推奨です。代わりに MIP_CC_CreateProtectionEngineSettingsWithEngineIdAndAuthCallback を使用してください。
  • MIP_CC_CreateProtectionProfileSettings シグネチャが変更されました。
  • MIP_CC_CreatePolicyEngineSettingsWithIdentityは非推奨であるため、MIP_CC_CreatePolicyEngineSettingsWithIdentityAndAuthCallbackを使用すること。
  • MIP_CC_CreatePolicyEngineSettingsWithEngineIdは非推奨であるため、MIP_CC_CreatePolicyEngineSettingsWithEngineIdAndAuthCallbackを使用すること。
  • MIP_CC_PolicyEngineSettings_SetLabelFilterは非推奨であるため、MIP_CC_PolicyEngineSettings_ConfigureFunctionalityを使用すること。
  • MIP_CC_CreatePolicyProfileSettings シグネチャが変更されました。

重大な変更

共通

  • TelemetryConfiguration::isTelemetryOptedOutisMinimalTelemetryEnabled に変更されました。

C API

  • mip_cc_document_stateは新しい値で更新されるmip_cc_metadata_version_formatcontentMetadataVersionFormat

バージョン 1.6.103

リリース日: 2020 年 4 月 16 日

一般的な SDK の変更

  • ADRMS 以外のすべての HTTP 通信に TLS 1.2 が適用されます。
  • iOS/macOS HTTP 実装を NSURLConnection から NSURLSession に移行しました。
  • Aria SDK から 1DS SDK に iOS テレメトリ コンポーネントを移行しました。
  • テレメトリ コンポーネントで、iOS、macOS、Linux で MIP の HttpDelegate が使用されるようになりました。 (以前は win32 のみ。)
  • C API のタイプの安全性が向上しました。
  • C++、C#、および Java API で AuthDelegate をプロファイルからエンジンに移動しました。
  • AuthDelegate を Profile::Settings のコンストラクターから Engine::Settings に移動しました。
  • ポリシー同期が失敗した理由に関する詳細情報を提供するために、Category を NoPolicyError に追加しました。
  • PolicyEngine::GetTenantId メソッドを追加しました。
  • すべてのクラウドの明示的なサポートを追加しました。
    • ターゲット クラウドを設定する新しい Engine::Settings::SetCloud メソッド (GCC High、21-Vianet など)。
    • 認識されたクラウドでは、既存の Engine::Settings::SetCloudEndpointBaseUrl メソッド呼び出しは不要になります。
  • iOS バイナリのビットコードを有効にしました。

ファイル SDK

  • IFileHandler::InspectAsync を C# および Java ラッパーに追加しました
  • アプリケーションがトークン キャッシュをウォームアップするために、ポリシー トークンの取得をトリガーする FileProfile::AcquirePolicyAuthToken を使用した新しいサポート。
  • MsgInspector::GetAttachments は、vector<shared_ptr<MsgAttachmentData>> の代わりに vector<unique_ptr<MsgAttachmentData>> を返します
  • TelemetryConfiguration::isOptedOut の設定で、テレメトリが完全に無効にされるようになりました。 以前は、一連の最小テレメトリが送信されました。

ポリシー SDK

  • アプリケーションが PolicyProfile::AcquireAuthToken を介してトークン キャッシュをウォームアップできるように、トークンの取得をトリガーする新しいサポート。
  • Hold Your Own Key(HYOK)ラベルはデフォルトでフィルタリングされています。
  • 削除されたラベルに関連付けられているメタデータは削除されるようになりました。
  • キャッシュされたラベル ポリシーと感度ポリシーの間に不一致がある場合は、ポリシー キャッシュがクリアされます。
  • バージョン管理されたメタデータの新しいサポート:
    • ファイル形式では、ラベル メタデータの場所/形式を改訂できます。 その場合、アプリケーションは MIP にすべてのメタデータを提供する必要があります。MIP は、どのメタデータが "true" であるのかを判断します。
    • ContentLabel::GetExtendedProperties は、vector<MetadataEntry> の代わりに vector<pair<string, string>> を返すようになりました。
    • MetadataAction::GetMetadataToAdd は、vector<MetadataEntry> の代わりに vector<pair<string, string>> を返すようになりました。
    • ExecutionState::GetContentMetadata は、vector<MetadataEntry> の代わりに vector<pair<string, string>> を返す必要があります。
    • ExecutionState::GetContentMetadataVersion は、アプリケーションが現在のファイル形式 (通常は 0) に対して認識するメタデータの最高バージョンを返す必要があります。
    • PolicyEngine::GetWxpMetadataVersion は、テナント管理者によって構成される Office ドキュメントのメタデータ バージョンを返します (0 = 既定値、1 = 共同認証が有効な形式)。
    • C API での同等の変更:
      • MIP_CC_ContentLabel_GetExtendedProperties
      • MIP_CC_MetadataAction_GetMetadataToAdd
      • mip_cc_metadata_callback
      • mip_cc_document_state
      • MIP_CC_PolicyEngine_GetWxpMetadataVersion
  • TelemetryConfiguration::isOptedOut の設定で、テレメトリが完全に無効にされるようになりました。 以前は、一連の最小テレメトリが送信されました。

Protection SDK

  • ドキュメント追跡の登録と失効のための新しいサポート。
  • 発行時に事前ライセンスを生成するための新しいサポート。
  • 保護サービスによって使用されるパブリック Microsoft TLS 証明書が公開されました。
    • GetMsftCert および GetMsftCertPEM
    • アプリケーションが HttpDelegate インターフェイスをオーバーライドする場合は、この CA によって発行されたサーバー証明書を信頼する必要があります。
    • この要件は、2020 年後半に削除される予定です。

バージョン 1.5.124

リリース日: 2020 年 3 月 2 日

一般的な SDK の変更

  • Java API (Windows のみ)
  • 非同期 MIP タスクの取り消し
    • すべての非同期呼び出しは、Cancel() メソッドを使用して mip::AsyncControl オブジェクトを返します
  • 遅延読み込みに依存するバイナリ
  • 必要に応じて、特定のテレメトリ/監査プロパティをマスクする
    • mip::TelemetryConfiguration::maskedProperties を介して構成可能
  • 改善された例外:
    • すべてのエラーには、説明文字列にアクション可能な関連付け ID が含まれます
    • ネットワーク エラーには 'Category'、'BaseUrl'、'RequestId'、および 'StatusCode' フィールドがあります
  • 改善された C API の結果/エラーの詳細

ファイル SDK

  • ファイルにラベルが付けられているか保護されているかを、ネットワークフリーで確認する
    • mip::FileHandler::IsLabeledOrProtected()
    • 偽陽性の軽微なリスク (ファイルにゾンビ ラベル メタデータが含まれている場合など)
  • 特定の種類の保護に関連付けられているラベルをフィルター処理する
    • mip::FileEngine::Settings::SetLabelFilter() を介して構成可能
  • ポリシー データをファイル SDK に公開する
    • mip::FileEngine::GetPolicyDataXml()

ポリシー SDK

  • ウォーターマーク/ヘッダー/フッター アクションの動的コンテンツ マーキング:
    • ${Item.Label}、${Item.Name}、${User.Name}、${Event.DateTime} などのフィールドは、MIP によって自動的に設定されます
    • 動的コンテンツ マーキングによって使用されるユーザーフレンドリな "name" フィールドを使って mip::Identity を構成できます
    • mip::PolicyEngine::Settings::SetVariableTextMarkingType() を介して構成可能
  • コンテンツにラベルが付いているかどうかをネットワークフリーで確認する
    • mip::PolicyHandler::IsLabeled()
    • 偽陽性の軽微なリスク (コンテンツにゾンビ ラベル メタデータが含まれている場合など)
  • ラベル ポリシー キャッシュ TTL
    • デフォルト値: 30 日。
    • mip::PolicyProfile::SetCustomSettings() を介して構成可能
  • 破壊的変更
    • PolicyEngine.Settings.LabelFilter が、列挙型のリストから null 可能なビットフィールドへ更新されました。

Protection SDK

  • プレライセンス
    • 以前に取得したユーザー証明書に加えて、暗号化されたコンテンツと共にプレライセンスが存在する場合、コンテンツをオフラインで暗号化解除できます
    • mip::ProtectionHandler::ConsumptionSettings は、プレライセンスを使用して構成できます
    • mip::ProtectionEngine::LoadUserCert|Async() は、mip::ProtectionProfile のキャッシュ ポリシーに従って格納されているユーザー証明書をフェッチします
  • サーバー固有の機能チェック
    • ユーザーのテナントが "暗号化のみ" の機能 (Azure RMS でのみ利用可能) をサポートしているかどうかを確認します
    • mip::ProtectionEngine::IsFeatureSupported()
  • RMS テンプレートを取得するときの詳細情報がより豊富になりました
  • 破壊的変更
    • mip::ProtectionEngine::GetTemplates()vector<shared_ptr<string>> の戻り値が、vector<shared_ptr<mip::TemplateDescriptor>> (C++) で置き換えられました
    • mip::ProtectionEngine::Observer::OnGetTemplatesSuccess() のコールバック shared_ptr<vector<string>> パラメーターが、vector<shared_ptr<mip::TemplateDescriptor>> (C++) で置き換えられました
    • IProtectionEngine.GetTemplates|Async() の戻り値 List<string> が、List<TemplateDescriptor> で置き換えられました。 (C#)
    • MIP_CC_ProtectionEngine_GetTemplates() の mip_cc_guid* パラメーターが、mip_cc_template_descriptor* (C API) で置き換えられました

C API

  • 破壊的変更: mip_cc_error* パラメーターを含むようにほとんどの関数が更新されました。NULL にすることができます

エラー/例外の更新

  • エラー処理の概要:
    • AccessDeniedError: ユーザーにコンテンツへのアクセス権が付与されていません
      • NoAuthTokenError: アプリは認証トークンを提供しませんでした
      • NoPermissionsError: ユーザーに特定のコンテンツへの権限が付与されていませんが、参照元または所有者が使用可能です
      • ServiceDisabledError: ユーザー/デバイス/プラットフォーム/テナントに対してサービスが無効になっています
    • AdhocProtectionRequiredError: ラベルを設定する前に、アドホック保護を設定する必要があります
    • BadInputError: ユーザー/アプリからの無効な入力
      • InsufficientBufferError: ユーザー/アプリからの無効なバッファー入力
      • LabelDisabledError: ラベル ID は認識されますが、使用することはできません
      • LabelNotFoundError: ラベル ID が認識できません
      • TemplateNotFoundError: テンプレート ID が認識できません
    • ConsentDeniedError: ユーザー/アプリからの同意を必要とする操作に同意されませんでした
    • DeprecatedApiError: このAPIは非推奨です
    • FileIOError: ファイルの読み取り/書き込みに失敗しました
    • InternalError: 予期しない内部障害
    • NetworkError
      • ProxyAuthenticationError: プロキシ認証が必要です
      • Category=BadResponse: サーバーが読み取り不能な HTTP 応答を返しました (再試行は成功する可能性があります)
      • Category=Cancelled: 操作がユーザーまたはアプリによって取り消されたため、HTTP 接続を確立できませんでした (再試行はおそらく成功します)
      • Category=FailureResponseCode: サーバーが汎用エラー応答を返しました (再試行は成功する可能性があります)
      • Category=NoConnection: HTTP 接続を確立できませんでした (再試行は成功する可能性があります)
      • Category=Offline: アプリケーションがオフライン モードであるため、HTTP 接続を確立できませんでした (再試行は成功しません)
      • Category=Proxy: プロキシの問題のため、HTTP 接続を確立できませんでした (再試行はおそらく成功しません)
      • Category=SSL: SSL の問題のため、HTTP 接続を確立できませんでした (再試行はおそらく成功しません)
      • Category=Throttled: サーバーが "調整された" 応答を返しました (バックオフ/再試行はおそらく成功します)
      • Category=Timeout: タイムアウト後に HTTP 接続を確立できませんでした (再試行はおそらく成功します)
      • Category=UnexpectedResponse: サーバーから予期しないデータが返されました (再試行は成功する可能性があります)
    • NoPolicyError: テナントまたはユーザーがラベル用に構成されていません
    • NotSupportedError: 操作は現在の状態ではサポートされていません
    • OperationCancelledError: 操作が取り消されました
    • PrivilegedRequiredError: 割り当て方法 = 権限でない限り、ラベルは変更できません
  • 変更点
    • 使用されていない PolicySyncError を削除しました。 NetworkError で置き換えられました
    • 使用されていない TransientNetworkError を削除しました。 NetworkError カテゴリで置き換えられました

バージョン 1.4.0

リリース日: 2019 年 11 月 6 日

このバージョンでは、.NET パッケージ (Microsoft.InformationProtection.File) にある保護 SDK のサポートが導入されています。

SDK の変更

  • パフォーマンスの向上とバグの修正
  • StorageType 列挙型を CacheStorageType に名前変更しました
  • Android は、gnustl ではなく libc++ にリンクします
  • 以前に非推奨とされた API を削除しました
    • File/Policy/Profile::Settings は、MipContext で初期化する必要があります
    • File/Policy/Profile::Settings のパス、アプリケーション情報、ロガー デリゲート、テレメトリ、およびログ レベルの getter/setter が削除されました。 これらのプロパティは MipContext によって管理されます
  • Apple プラットフォームでのスタティック ライブラリのサポートの強化
    • モノリシック スタティック ライブラリ
      • libmip_file_sdk_static.a
      • libmip_upe_sdk_static.a
      • libmip_protection_sdk_static.a
      • libmip_upe_and_protection_sdk_static.a
    • 別個のライブラリに抽出されたサードパーティの依存関係
      • libsqlite3.a
      • libssl.a
  • mip_telemetry.dll が削除されました (mip_core.dll にマージ)

ファイル SDK

  • RPMSG
    • 暗号化
    • String8 暗号化解除のサポートを追加しました
  • 構成可能な PFILE 拡張機能の動作 (既定、{extension}.PFILE、または P{extension})
    • ProtectionSettings::SetPFileExtensionBehavior

ポリシー SDK

  • 完全な C API
  • 保護に関連付けられたラベルのフィルター処理を構成する
    • PolicyEngine::Settigns::SetLabelFilter()

Protection SDK

  • 以前に非推奨とされた API を削除しました
    • ProtectionEngine::CreateProtectionHandlerFromDescriptor[Async] を削除しました (ProtectionEngine::CreateProtectionHandlerForPublishing[Async] を使用します)
    • ProtectionEngine::CreateProtectionHandlerFromPublishingLicense[Async] を削除しました (ProtectionEngine::CreateProtectionHandlerForConsumption[Async] を使用します)
  • 完全な C# API
  • 完全な C API
    • v1.3 C API プレビューからの C API 正規化の変更:
      • mip_cc_storage_type の名前が mip_cc_cache_storage_type に変更されました
      • MIP_CC_AddProtectionProfileEngine の名前が MIP_CC_ProtectionProfile_AddEngine に変更されました
      • MIP_CC_CreateProtectionEngineSettingsForExistingEngine の名前が MIP_CC_CreateProtectionEngineSettingsWithEng に変更されました
      • MIP_CC_CreateProtectionEngineSettingsForNewEngine の名前が MIP_CC_CreateProtectionEngineSettingsWithIdentity に変更されました
      • MIP_CC_SetProtectionProfileSettingsHttpDelegate の名前が MIP_CC_ProtectionProfileSettings_SetHttpDelegate に変更されました
      • MIP_CC_CreateProtectionHandlerForConsumption の名前が MIP_CC_ProtectionEngine_CreateProtectionHandlerForConsumption に変更されました
      • MIP_CC_CreateProtectionHandlerForPublishing の名前が MIP_CC_ProtectionEngine_CreateProtectionHandlerForPublishing に変更されました
      • MIP_CC_GetProtectionEngineId の名前が MIP_CC_ProtectionEngine_GetEngineId に変更されました
      • MIP_CC_GetProtectionEngineTemplates の名前が MIP_CC_ProtectionEngine_GetTemplates に変更されました
      • MIP_CC_GetProtectionEngineTemplatesSize の名前が MIP_CC_ProtectionEngine_GetTemplatesSize に変更されました
      • MIP_CC_SetTelemetryConfigurationHttpDelegate の名前が MIP_CC_TelemetryConfiguration_SetHttpDelegate に変更されました
      • MIP_CC_SetTelemetryConfigurationHostName の名前が MIP_CC_TelemetryConfiguration_SetHostName に変更されました
      • MIP_CC_SetTelemetryConfigurationIsLocalCachingEnabled の名前が MIP_CC_TelemetryConfiguration_SetIsLocalCachingEnabled に変更されました
      • MIP_CC_SetTelemetryConfigurationIsNetworkDetectionEnabled の名前が MIP_CC_TelemetryConfiguration_SetIsNetworkDetectionEnabled に変更されました
      • MIP_CC_SetTelemetryConfigurationIsTelemetryOptedOut の名前が MIP_CC_TelemetryConfiguration_SetIsTelemetryOptedOut に変更されました
      • MIP_CC_SetTelemetryConfigurationLibraryName の名前が MIP_CC_TelemetryConfiguration_SetLibraryName に変更されました
      • MIP_CC_ProtectionEngine_GetRightsForLabelIdSize が削除され、コンマ区切りの文字列バッファーの代わりに mip_cc_string_list を設定するように MIP_CC_ProtectionEngine_GetRightsForLabelId が更新されました
      • MIP_CC_ProtectionHandler_GetRightsSize が削除され、コンマ区切りの文字列バッファーの代わりに mip_cc_string_list を設定するように MIP_CC_ProtectionHandler_GetRights が更新されました
      • MIP_CC_ProtectionEngine_GetEngineIdSize が追加され、mip_cc_guid の代わりに文字列を設定するように MIP_CC_ProtectionEngine_GetEngineId が更新されました
      • MIP_CC_CreateProtectionDescriptorFromUserRights は、'mip_cc_dictionary' ではなく 'mip_cc_dictionary-' パラメーターを取るようになりました
      • MIP_CC_ProtectionEngineSettings_SetCustomSettings は、'mip_cc_dictionary' ではなく 'mip_cc_dictionary-' パラメーターを取るようになりました
      • MIP_CC_ProtectionProfileSettings_SetCustomSettings は、'mip_cc_dictionary' ではなく 'mip_cc_dictionary-' パラメーターを取るようになりました
      • MIP_CC_TelemetryConfiguration_SetCustomSettings は、'mip_cc_dictionary' ではなく 'mip_cc_dictionary-' パラメーターを取るようになりました
      • MIP_CC_CreateMipContext は、'isOfflineOnly' および 'loggerDelegateOverride' パラメーターを取ります

バージョン 1.3.0

リリース日: 2019 年 8 月 22 日

新機能

  • mip::MipContext は、新しい最上位レベルのオブジェクトです。
  • 保護された MSG ファイルの暗号化解除がサポートされるようになりました。
  • message.rpmsg ファイルの検査は、mip::FileInspectormip::FileHandler::InspectAsync() を介してサポートされます。
  • 必要に応じて、ディスク上のキャッシュを暗号化できるようになりました。
  • 保護 SDK では、中国のクラウドのお客様がサポートされるようになりました。
  • Android の ARM64 サポート。
  • iOS の ARM64e サポート。
  • エンドユーザー ライセンス (EUL) キャッシュを無効にできるようになりました。
  • mip::FileEngine::EnablePFile を介して.pfile 暗号化を無効にできます
  • HTTP 呼び出しの数を減らすことで保護操作のパフォーマンスが向上しました
  • mip::Identity から委任された ID の詳細を削除し、代わりに DelegatedUserEmailmip::FileEngine::Settingsmip::ProtectionSettingsmip::PolicyEngine::Settings、および mip::ProtectionHandlerPublishingSettingsConsumptionSettings に追加しました。
  • 以前には LabelId を返していた関数が、mip::Label オブジェクトを返すようになりました。

変更点

  • 以前のバージョンでは、mip::ReleaseAllResources を呼び出す必要がありました。 バージョン 1.3 では、これを mip::MipContext::~MipContext または mip::MipContext::Shutdown で置き換えます。
  • ActionSource および mip::LabelingOptions から mip::ExecutionState::GetNewLabelActionSource が削除されました
  • mip::ProtectionEngine::CreateProtectionHandlerFromDescriptormip::ProtectionEngine::CreateProtectionHandlerForPublishing で置き換えられました。
  • mip::ProtectionEngine::CreateProtectionHandlerFromPublishingLicensemip::ProtectionEngine::CreateProtectionHandlerForConsumption で置き換えられました。
  • mip::PublishingLicenseContext の名前が mip::PublishingLicenseInfo に変更され、未加工のシリアル化されたバイトの代わりに、豊富なフィールドを含むように更新されました。
  • mip::PublishingLicenseInfo には、発行ライセンス (PL) を解析した後の MIP に関連するデータが含まれています。
  • アプリケーションから MIP に認識できない テンプレート ID と ラベル ID が渡されると mip::TemplateNotFoundErrormip::LabelNotFoundError がスローされます。
  • AcquireToken()mip::AuthDelegate::OAuth2Challenge() の claims パラメーターを使用したラベル ベースの条件付きアクセスのサポートが追加されました。 この機能は、コンプライアンス センター ポータルではまだ公開されていません。

バージョン 1.2.0

リリース日: 2019 年 4 月 15 日

新機能

  • テレメトリ コンポーネントは、クライアント アプリケーションが HttpDelegate でオーバーライドした場合でも、MIP の残りの部分と同じ HTTP スタックを使用するようになりました。
  • クライアント アプリケーションは、プロファイルで TaskDispatcherDelegate をオーバーライドすることで、非同期タスクのスレッド動作を制御できます。
  • RPMSG 暗号化は、現在プレビュー中です。
  • ファイル/ポリシー SDK の例外処理の動作を、次のように保護 SDK に合わせて調整します。
    • プロキシが認証を要求するように構成されている場合は、すべての SDK によって ProxyAuthError がスローされます。
    • 空の認証トークンがアプリケーションの mip::AuthDelegate::AcquireOAuth2Token の実装によって提供されている場合は、すべての SDK によって NoAuthTokenError がスローされます。
  • ポリシー SDK の HTTP キャッシュが改善され、必要な HTTP 呼び出しの数が半分に減りました。
  • エラーの検出とデバッグを向上させる、より豊富なログ/監査/テレメトリ。
  • AIP ラベルへの移行を容易にする外部/異種ラベルのサポート。
  • SCC から感度の種類をダウンロードするサードパーティ製アプリケーションのサポートが有効になりました。
  • より多くのテレメトリ設定が公開され、構成可能になりました (キャッシュ/スレッド処理の動作など)。

SDK の変更内容

  • mip_common.dll が mip_core.dll と mip_telemetry.dll に分割されました
  • アプリケーションがデータを操作する方法を大まかに説明するため、mip::ContentState の名前が mip::DataState に変更されました。
  • mip::AdhocProtectionRequiredError 例外が FileHandler::SetLabel によってスローされ、ラベルを適用する前に最初にアドホック保護を適用する必要があるということがアプリケーションに通知されます。
  • mip::OperationCancelledError例外は、操作がキャンセルされたときにスローされます(シャットダウンやHTTPキャンセルなど)。
  • 新しい API:
    • mip::ClassificationResult::GetSensitiveInformationDetections
    • mip::FileEngine::GetLastPolicyFetchTime
    • mip::FileEngine::GetDefaultSensitivityLabel
    • mip::FileEngine::GetPolicyId
    • mip::FileEngine::HasClassificationRules
    • mip::FileEngine::Settings::SetPolicyCloudEndpointBaseUrl
    • mip::FileHandler::GetDecryptedTemporaryFileAsync
    • mip::FileHandler::Observer::OnGetDecryptedTemporaryFileFailure
    • mip::FileHandler::Observer::OnGetDecryptedTemporaryFileSuccess
    • mip::File/Policy/ProtectionProfile::SetTaskDispatcherDelegate
    • mip::File/Policy/ProtectionProfile::SetTelemetryConfiguration
    • mip::HttpRequest::GetBody returns std::vector<uint8_t> instead of std::string
    • mip::HttpRequest::GetId
    • mip::PolicyEngine::GetLastPolicyFetchTime
    • mip::PolicyEngine::GetPolicyId
    • mip::PolicyEngine::HasClassificationRules
    • mip::PolicyEngine::Settings::SetCloudEndpointBaseUrl
    • mip::ProtectionDescriptor::GetContentId
    • (インターフェイス) mip::TaskDispatcherDelegate

新しい要件

  • mip::ReleaseAllResources は、プロセスの終了前に呼び出す必要があります (すべてのプロファイル、エンジン、およびハンドラーへの参照をクリアした後)
  • (インターフェイス) mip::ExecutionState::GetClassificationResults 戻り値の型と "classificationIds" パラメーターが変更されました
  • (インターフェイス) mip::FileExecutionState::GetAuditMetadata をアプリケーションで実装して、テナント管理者の監査ダッシュボードに表示する詳細情報 (送信者、受信者、最終変更など) を指定できます
  • (インターフェイス) mip::FileExecutionState::GetClassificationResults 戻り値の型が変更され、FileHandler パラメーターが必要になりました
  • (インターフェイス) mip::FileExecutionState::GetDataState は、アプリケーションが contentIdentifier と対話する方法を指定するために、アプリケーションによって実装する必要があります
  • (インターフェイス) mip::HttpDelegate インターフェイスには、'CancelOperation' メソッドと 'CancelAllOperations' メソッドが必要です
  • (インターフェイス) mip::HttpDelegate インターフェイス 'Send' と 'SendAsync' は mip::HttpResponse ではなく mip::HttpOperation を返します
  • (インターフェイス) mip::HttpResponse::GetBody は、std::string ではなく std::vector<uint8_t> を返します
  • (インターフェイス) mip::HttpResponse インターフェイスは 'GetId' メソッドの実装を必要とします
  • mip::ContentLabel::GetCreationTime は、std::string ではなく std::chrono::time_point を返します
  • mip::FileEngine::CreateFileHandlerAsync は 'contentIdentifier' パラメーターを受け入れなくなりました
  • mip::PolicyHandler::NotifyCommitedActions の名前が mip::PolicyHandler::NotifyCommittedActions に変更されました

バージョン 1.1.0

リリース日: 2019 年 1 月 15 日

このバージョンでは、次のプラットフォームのサポートが導入されています。

  • .NET
  • iOS SDK (ポリシー SDK)
  • Android SDK (ポリシー SDK と保護 SDK)

新機能

  • ADRMS のサポート
  • 保護 SDK の操作は (Win32 では) 真に非同期であり、ブロックされていない暗号化/暗号化解除操作を同時に実行できます
    • アプリケーション コールバック (AuthDelegate、HTTPDelegate など) が -任意の- バックグラウンド スレッドで呼び出されるようになりました
  • IT 管理者が設定したカスタム ラベル プロパティを mip::Label::GetCustomSettings を使用して読み取れるようになりました
  • シリアル化された発行ライセンスを、mip::FileHandler::GetSerializedPublishingLicense を使用して HTTP 操作なしでファイルから直接取得できるようになりました
  • mip::FileProfile::Observer::OnAddPolicyEngineStarting/mip::observer::PolicyProfile::Observer::OnAddEngineStarting を使用して mip::FileEngine/mip::PolicyEngine の作成を完了するために、HTTP 操作が必要かどうかをアプリケーションに通知する必要があります
  • 保護されたコンテンツに有効期限があるかどうかの検出は、mip::ProtectionDescriptor::DoesContentExpire という便利なメソッドで簡単に行えます。
  • 分類:
    • 秘密度の種類 (CC# の正規表現式、パスポート番号など) は、SCC サービスから取得できます
      • mip::FileEngine::Settings/mip::PolicyEngine::Settings フラグを設定することにより、フィーチャーを有効にします
      • mip::FileEngine::ListSensitivityTypes/mip::PolicyEngine::ListSensitivityTypes を使って種類を読み取ります
    • 外部ドキュメント スキャナー ユーティリティからの分類結果を MIP に送り、ドキュメント コンテンツに基づいて推奨ラベルまたは必須ラベルを駆動できます
      • mip::FileExecutionState::GetClassificationResults/mip::ExecutionState::GetClassificationResults を使用して結果を MIP に渡します
      • mip::ApplyLabelAction と mip::RecommendLabelAction は、分類結果が必須/推奨ラベルを示すポリシー規則と一致する場合に、mip::PolicyEngine::ComputeActions によって返されます

新しい要件

  • mip::FileProfile、mip::PolicyProfile、mip::ProtectionProfile を作成するときに、ID/名前/バージョン フィールド mip::ApplicationInfo の設定が必須です
  • アプリケーションでは、mip::FileHandlers を作成するときに、新しい mip::FileExecutionState インターフェイスを実装する必要があります

新しい例外

  • アプリケーションの AuthDelegate が (キャンセルが原因で) 空のトークンを返した場合、mip::NoAuthTokenError がスローされます
    • 以下の作成に適用されます。
      • mip::FileEngine
      • mip::FileHandler
      • mip::PolicyEngine
      • mip::ProtectionHandler
  • テナントがラベル用に構成されていない場合に、mip::NoPolicyError がスローされます
    • 以下の作成に適用されます。
      • mip::FileEngine
      • mip::PolicyEngine
  • 特定のユーザー/デバイス/プラットフォーム/テナントに対して RMS サービスが無効になっている場合に mip::ServiceDisabledError がスローされます
    • 以下の作成に適用されます。
      • mip::FileHandler
      • mip::ProtectionHandler
  • ユーザーにドキュメントの暗号化を解除する権限がない場合、またはコンテンツの有効期限が切れている場合に、mip::NoPermissionsError がスローされます
    • 以下の作成に適用されます。
      • mip::FileHandler
      • mip::ProtectionHandler

次のステップ