Freigeben über


Schnellstart: Auflisten von Vertraulichkeitsbezeichnungen (C++)

In diesem Schnellstart erfahren Sie, wie Sie das MIP File SDK verwenden, um die für Ihre Organisation konfigurierten Vertraulichkeitsbezeichnungen aufzulisten.

Voraussetzungen

Stellen Sie vor dem Fortfahren sicher, dass die folgenden Voraussetzungen erfüllt sind:

Hinzufügen von Logik zum Auflisten von Vertraulichkeitsbezeichnungen

Im Folgenden fügen Sie mithilfe des File-Engine-Objekts Logik zum Auflisten der Vertraulichkeitsbezeichnungen Ihrer Organisation hinzu.

  1. Öffnen Sie die Visual Studio-Projektmappe, die Sie im vorherigen Artikel „Schnellstart: Initialisieren von Clientanwendungen (C++)“ erstellt haben.

  2. Öffnen Sie im Projektmappen-Explorer die CPP-Datei im Projekt, die die Implementierung der main()-Methode enthält. Standardmäßig weist sie denselben Namen wie das Projekt auf, in dem sie enthalten ist. Diesen Namen haben Sie bei der Projekterstellung angegeben.

  3. Fügen Sie oben in der Datei hinter using mip::FileEngine; die folgende using-Anweisung hinzu:

    using std::endl;
    
  4. Fügen Sie den folgenden Code gegen Ende des Methodenkörpers von main() zwischen der schließenden Klammer } des letzten catch-Blocks und über return 0; (wo Sie im vorherigen Schnellstart aufgehört haben) ein:

    // 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");
    

Erstellen eines PowerShell-Skripts zum Generieren von Zugriffstoken

Verwenden Sie das folgende PowerShell-Skript, um die Zugriffstoken zu generieren, die für das SDK in Ihrer AuthDelegateImpl::AcquireOAuth2Token-Implementierung erforderlich sind. Das Skript nutzt das Cmdlet Get-ADALToken aus dem Modul „ADAL.PS“, das Sie zuvor in „MIP SDK: Setup und Konfiguration“ installiert haben.

  1. Erstellen Sie eine PowerShell-Skriptdatei (mit der Erweiterung „.ps1“), und fügen Sie das folgende Skript in die Datei ein:

    • Die Variablen $authority und $resourceUrl werden im nächsten Abschnitt aktualisiert.
    • Aktualisieren Sie $appId und $redirectUri so, dass diese den Werten entsprechen, die in Ihrer Azure AD-Anwendungsregistrierung angegeben wurden.
    $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 Azure AD app registration
    $redirectUri = 'bltest://authorize'              # Redirect URI of the Azure AD app registration
    $response = Get-ADALToken -Resource $resourceUrl -ClientId $appId -RedirectUri $redirectUri -Authority $authority -PromptBehavior:RefreshSession
    $response.AccessToken | clip                     # Copy the access token text to the clipboard
    
  2. Speichern Sie die Skriptdatei, damit Sie sie später ausführen können, wenn Sie von der Clientanwendung dazu aufgefordert werden.

Erstellen und Testen der Anwendung

Erstellen und testen Sie abschließend die Clientanwendung.

  1. Verwenden Sie F6 (Projektmappe erstellen) zum Erstellen der Clientanwendung. Wenn keine Buildfehler auftreten, verwenden Sie F5 (Debuggen starten), um die Anwendung auszuführen.

  2. Wenn das Projekt erfolgreich erstellt und ausgeführt wird, fragt die Anwendung jedes Mal nach einem Zugriffstoken, wenn das SDK Ihre AcquireOAuth2Token()-Methode aufruft. Sie können ein zuvor generiertes Token erneut verwenden, wenn Sie mehrmals dazu aufgefordert werden und die Werte gleich sind.

  3. Sie können ein Zugriffstoken für die Aufforderung erstellen, indem Sie wieder zu Ihrem PowerShell-Skript wechseln und Folgendes durchführen:

    • Aktualisieren Sie die Variablen $authority und $resourceUrl. Sie müssen den Werten entsprechen, die in der Konsolenausgabe von Schritt 2 angegeben wurden. Diese Werte werden vom MIP SDK im challenge-Parameter von AcquireOAuth2Token() bereitgestellt:

    • Führen Sie das PowerShell-Skript aus. Das Cmdlet Get-ADALToken löst eine Eingabeaufforderung für die Azure AD-Authentifizierung ähnlich dem folgenden Beispiel aus. Geben Sie das gleiche Konto an, das in der Konsolenausgabe von Schritt 2 angegeben wurde. Nachdem Sie sich erfolgreich angemeldet haben, wird das Zugriffstoken in der Zwischenablage gespeichert.

      Visual Studio acquire token sign-in

    • Möglicherweise müssen Sie Ihre Einwilligung erteilen, um der Anwendung den Zugriff auf die MIP-APIs zu gewähren, während die Ausführung unter dem Anmeldekonto erfolgt. Dies geschieht, wenn der Azure AD-Anwendungsregistrierung nicht (wie in „MIP SDK: Setup und Konfiguration“ beschrieben) vorab zugestimmt wurde, oder wenn Sie sich mit einem Konto eines anderen Mandanten anmelden (der sich von dem unterscheidet, bei dem Ihre Anwendung registriert ist). Klicken Sie einfach auf Akzeptieren, damit Ihre Einwilligung erfasst wird.

      Visual Studio consent

  4. Nachdem die Zugriffstoken in die Eingabeaufforderung aus Schritt 2 eingefügt wurden, sollten die in der Konsolenausgabe angezeigten Vertraulichkeitsbezeichnungen dem folgenden Beispiel ähneln:

    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 . . .
    

    Notiz

    Kopieren und speichern Sie die ID von mindestens einer Vertraulichkeitsbezeichnung (z. B. f42a3342-8706-4288-bd31-ebb85995028z), da Sie diese im nächsten Schnellstart benötigen.

Problembehandlung

Probleme bei der Ausführung der C++-Anwendung

Zusammenfassung Fehlermeldung Lösung
Ungültiges Zugriffstoken Eine Ausnahme ist aufgetreten ... ist das Zugriffstoken falsch/abgelaufen?

Fehler bei API-Aufruf: profile_add_engine_async Fehler: [class mip::PolicySyncException] Fehler beim Abruf von Richtlinie, Fehler bei Anforderung mit HTTP-Statuscode: 401, x-ms-diagnostics: [2000001;reason="Das mit der Anforderung übermittelte OAuth-Token kann nicht analysiert werden.";error_category="invalid_token"], correlationId:[35bc0023-3727-4eff-8062-000006d5d672]'

Die Ausführung von „C:\VSProjects\MipDev\Quickstarts\AppInitialization\x64\Debug\AppInitialization.exe“ (Prozess 29924) wurde mit dem Code 0 beendet.

Drücken Sie eine beliebige Taste, um dieses Fenster zu schließen. . .
Wenn Ihr Projekt erfolgreich erstellt wird und dennoch eine Ausgabe ähnlich der linken angezeigt wird, enthält Ihre AcquireOAuth2Token()-Methode wahrscheinlich ein ungültiges oder abgelaufenes Token. Wechseln Sie wieder zu Erstellen eines PowerShell-Skripts zum Generieren von Zugriffstoken, generieren Sie das Zugriffstoken neu, aktualisieren Sie AcquireOAuth2Token() erneut, und wiederholen Sie die Erstellung und die Tests. Sie können das Token und dessen Ansprüche auch untersuchen und überprüfen, indem Sie die Single-Page-Webanwendung jwt.ms verwenden.
Vertraulichkeitsbezeichnungen sind nicht konfiguriert Wenn Ihr Projekt erfolgreich erstellt wird, Sie aber keine Ausgabe im Konsolenfenster erhalten, stellen Sie sicher, dass die Vertraulichkeitsbezeichnungen Ihrer Organisation ordnungsgemäß konfiguriert sind. Ausführliche Informationen finden Sie unter „Definieren des Bezeichnungsschemas und der Schutzeinstellungen“ im Artikel MIP SDK: Setup und Konfiguration.

Nächste Schritte

Nachdem Sie nun erfahren haben, wie Sie die Vertraulichkeitsbezeichnungen für Ihre Organisation auflisten, können Sie mit dem nächsten Schnellstart fortfahren: