クイックスタート: 秘密度ラベルをリストする - Policy SDK (C++)

このクイック スタートでは、MIP Policy SDK を使用して、組織用に構成された秘密度ラベルを一覧表示する方法について説明します。

前提条件

まだ行っていない場合は、続行する前に次の前提条件を満たしていることを確認してください。

秘密度ラベルを一覧表示するロジックを追加する

ポリシー エンジン オブジェクトを使用して、組織の秘密度ラベルを一覧表示するロジックを追加します。

  1. 前のクイック スタートで作成した Visual Studio ソリューションを開きます。

  2. main()関数で、エンジンが正常に読み込まれた後、次のコードを追加します。

    // List sensitivity labels
    cout << "\nSensitivity labels for your organization:\n";
    auto labels = engine->ListSensitivityLabels();
    for (const auto& label : labels)
    {
        cout << label->GetName() << " : " << label->GetId() << endl;
    
        for (const auto& child : label->GetChildren())
        {
            cout << "->  " << child->GetName() << " : " << child->GetId() << endl;
        }
    }
    
  3. 必要に応じて、コンテンツ形式 ( "email" や "file"など) でラベルをフィルター処理します。

    // List labels for email content only
    std::vector<std::string> contentFormats = { "email" };
    auto emailLabels = engine->ListSensitivityLabels(contentFormats);
    

アプリケーションのビルドとテスト

クライアント アプリケーションをビルドしてテストします。

  1. Ctrl + Shift + B (ソリューションのビルド) を使用してアプリケーションをビルドします。 ビルド エラーがない場合は、 F5 (デバッグの開始) を使用して実行します。

  2. 最初の実行時に、アプリケーションは認証を求めます。 テナント内のユーザー アカウントの資格情報を指定します。

  3. 出力には、お客様の組織向けに構成された秘密度ラベルが次のように表示されます。

    Sensitivity labels for your organization:
    Public : <label-id>
    General : <label-id>
    ->  Anyone (unrestricted) : <label-id>
    Confidential : <label-id>
    ->  All Employees : <label-id>
    ->  Recipients Only : <label-id>
    Highly Confidential : <label-id>
    ->  All Employees : <label-id>
    ->  Recipients Only : <label-id>
    

ラベルの動作の確認

また、ラベル保護の種類の情報を照会して、各ラベルの動作を判断することもできます。 MIP SDK 1.18 以降、 Label クラスには、保護の種類を確認するメソッドが用意されています。

for (const auto& label : labels)
{
    cout << label->GetName();
    
    if (label->HasDoNotForwardProtection())
        cout << " [Do Not Forward]";
    else if (label->HasEncryptOnlyProtection())
        cout << " [Encrypt Only]";
    else if (label->HasAdhocProtection())
        cout << " [Custom Protection]";
    
    cout << endl;
}

次のステップ