Quickstart: Vertrouwelijkheidslabels vermelden (C++)

In deze quickstart ziet u hoe u de MIP File SDK gebruikt om de vertrouwelijkheidslabels weer te geven die zijn geconfigureerd voor uw organisatie.

Vereiste voorwaarden

Als u dat nog niet hebt gedaan, moet u de volgende vereisten voltooien voordat u doorgaat:

Logica toevoegen om de vertrouwelijkheidslabels weer te geven

Voeg logica toe om de vertrouwelijkheidslabels van uw organisatie weer te geven met behulp van het object bestandsengine.

  1. Open de Visual Studio-oplossing die u in het vorige artikel 'Quickstart: Initialisatie van clienttoepassingen (C++)' hebt gemaakt.

  2. Open in Solution Explorer het bestand .cpp in uw project dat de implementatie van de main() methode bevat. Deze wordt standaard ingesteld op dezelfde naam als het project dat het bevat, die u hebt opgegeven tijdens het maken van het project.

  3. Voeg de volgende using instructie toe na using mip::FileEngine;, boven aan het bestand:

    using std::endl;
    
  4. Voeg tegen het einde van de main() body, na de sluitaccolade } van het laatste catch-blok en vóór return 0; (waar u in de vorige quickstart bent gebleven), de volgende code in:

    // 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;
       }
    }
    system("pause");
    

Een PowerShell-script maken om toegangstokens te genereren

Gebruik het volgende PowerShell-script om toegangstokens te genereren die door de SDK in uw AuthDelegateImpl::AcquireOAuth2Token implementatie worden aangevraagd. Het script maakt gebruik van de Get-MsalToken cmdlet uit de MSAL.PS module die u eerder hebt geïnstalleerd, in 'MIP SDK Setup and configuration'.

  1. Maak een PowerShell-scriptbestand (.ps1 extensie) en kopieer en plak het volgende script in het bestand:

    • Werk $authority en $resourceUrl later bij, in de volgende sectie.
    • Werk $appId en $redirectUri bij zodat ze overeenkomen met de waarden die u hebt gespecificeerd in de registratie van uw Microsoft Entra-app.
    $authority = '<authority-url>'                   # Specified when SDK calls AcquireOAuth2Token()
    $resourceUrl = '<resource-url>'                  # Specified when SDK calls AcquireOAuth2Token()
    $appId = '0edbblll-8773-44de-b87c-b8c6276d41eb'  # App ID of the Microsoft Entra app registration
    $redirectUri = 'bltest://authorize'              # Redirect URI of the Microsoft Entra app registration
    $scope = $resourceUrl + "/.default"
    $response = Get-MsalToken -ClientId $appId -Authority $authority -RedirectUri $redirectUri -Scopes $scope -Interactive
    $response.AccessToken | clip                     # Copy the access token text to the clipboard
    
  2. Sla het scriptbestand op, zodat u het later kunt uitvoeren wanneer uw clienttoepassing dit aanvraagt.

De toepassing bouwen en testen

Bouw en test uw cliëntapplicatie.

  1. Gebruik F6 (Build Solution) om uw clienttoepassing te bouwen. Als u geen buildfouten hebt, gebruikt u F5 (Foutopsporing starten) om uw toepassing uit te voeren.

  2. Als uw project met succes wordt gebouwd en uitgevoerd, vraagt de toepassing om een toegangstoken telkens wanneer de SDK uw AcquireOAuth2Token() methode aanroept. U kunt een eerder gegenereerd token opnieuw gebruiken als de toepassing meerdere keren om invoer vraagt en de gevraagde waarden hetzelfde zijn.

  3. Als u een toegangstoken voor de prompt wilt genereren, gaat u terug naar uw PowerShell-script en:

    • Werk de $authority en $resourceUrl variabelen bij. Ze moeten overeenkomen met de waarden die zijn opgegeven in de console-uitvoer in stap 2. De MIP SDK biedt deze waarden in de challenge parameter van AcquireOAuth2Token().

    • Voer het PowerShell-script uit. De Get-MsalToken cmdlet activeert een Microsoft Entra verificatieprompt, vergelijkbaar met het volgende voorbeeld. Geef hetzelfde account op dat is opgegeven in de console-uitvoer in stap 2. Nadat de aanmelding is geslaagd, plaatst de cmdlet het toegangstoken op het klembord.

      Visual Studio-aanmeldingsprompt voor het verkrijgen van een token.

    • Mogelijk moet u ook toestemming geven om de toepassing toegang te geven tot de MIP-API's terwijl deze wordt uitgevoerd onder het aanmeldingsaccount. Dit gebeurt wanneer de registratie van de Microsoft Entra-toepassing niet vooraf is toegestaan (zoals wordt beschreven in 'MIP SDK-installatie en -configuratie'), of als u zich aanmeldt met een account van een andere tenant (anders dan het account waarin uw toepassing is geregistreerd). Selecteer Accepteren om uw toestemming vast te leggen.

      Visual Studio toestemmingsprompt.

  4. Nadat u het toegangstoken in de prompt van stap 2 hebt geplakt, moet de console-uitvoer de vertrouwelijkheidslabels weergeven, vergelijkbaar met het volgende voorbeeld:

    Non-Business : 87ba5c36-17cf-14793-bbc2-bd5b3a9f95cz
    Public : 83867195-f2b8-2ac2-b0b6-6bb73cb33afz
    General : f42a3342-8706-4288-bd31-ebb85995028z
    Confidential : 074e457c-5848-4542-9a6f-34a182080e7z
    Highly Confidential : f55c2dea-db0f-47cd-8520-a52e1590fb6z
    
    Press any key to continue . . .
    

    Opmerking

    Kopieer en sla de id van een of meer vertrouwelijkheidslabels (bijvoorbeeld f42a3342-8706-4288-bd31-ebb85995028z) op omdat u deze in de volgende quickstart gebruikt.

Probleemoplossingsproces

Problemen tijdens de uitvoering van de C++-toepassing

Samenvatting Foutmelding Solution
Ongeldig toegangstoken Er is een uitzondering opgetreden... Is het toegangstoken onjuist/verlopen?

Mislukte API-aanroep: profile_add_engine_async Mislukt met: [klasse mip::P olicySyncException] Kan beleid niet ophalen, aanvraag is mislukt met http-statuscode: 401, x-ms-diagnostics: [2000001; reason="OAuth token submitted with the request cannot be parsed."; error_category="invalid_token"], correlationId:[aaaa0000-bb11-2222-33cc-444444dddddd]'

C:\VSProjects\MipDev\Quickstarts\AppInitialization\x64\Debug\AppInitialization.exe (proces 29924) afgesloten met code 0.

Druk op een willekeurige toets om dit venster te sluiten. . .
Als uw project succesvol wordt gebouwd, maar u uitvoer ziet die vergelijkbaar is met wat links wordt weergegeven, is het token in uw AcquireOAuth2Token()-methode waarschijnlijk ongeldig of verlopen. Ga terug naar Een PowerShell-script maken om toegangstokens te genereren en het toegangstoken opnieuw te genereren, AcquireOAuth2Token() opnieuw bij te werken en opnieuw te bouwen/opnieuw te testen. U kunt het token en de bijbehorende claims ook onderzoeken en controleren met behulp van de jwt.ms webtoepassing met één pagina.
Vertrouwelijkheidslabels zijn niet geconfigureerd n.v.t. Als uw project succesvol wordt gebouwd, maar er geen uitvoer verschijnt in het consolevenster, controleer dan of de vertrouwelijkheidslabels van uw organisatie correct zijn geconfigureerd. Zie miP SDK-installatie en -configuratie onder Labeltaxonomie en beveiligingsinstellingen definiëren voor meer informatie.

Volgende stappen 

Nu u weet hoe u de vertrouwelijkheidslabels voor uw organisatie kunt vermelden, kunt u de volgende quickstart proberen: