Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przewodniku Szybki start pokazano, jak za pomocą zestawu SDK plików MIP wyświetlić listę etykiet poufności skonfigurowanych dla organizacji.
Wymagania wstępne
Jeśli jeszcze tego nie zrobiono, przed kontynuowaniem upewnij się, że zostały spełnione następujące wymagania wstępne:
- Najpierw wykonaj Quickstart: Client application initialization (C++), co zbuduje początkowe rozwiązanie dla Visual Studio. Ten przewodnik z serii Szybki start „Wyświetlanie etykiet poufności” opiera się na poprzednim przewodniku i służy do utworzenia rozwiązania początkowego.
- Opcjonalnie: Zapoznaj się z pojęciami dotyczącymi etykiet klasyfikacji .
Dodaj logikę do wyświetlania listy etykiet poufności
Dodaj logikę umożliwiającą wyświetlenie listy etykiet poufności w Twojej organizacji przy użyciu obiektu silnika plików.
Otwórz rozwiązanie programu Visual Studio utworzone w poprzednim artykule "Szybki start: inicjowanie aplikacji klienckiej (C++)".
W Eksplorator rozwiązań otwórz plik .cpp w projekcie zawierający implementację
main()metody . Domyślnie ma taką samą nazwę jak projekt zawierający go, który został określony podczas tworzenia projektu.Dodaj następującą dyrektywę
usingpousing mip::FileEngine;, w górnej części pliku:using std::endl;Na końcu treści, po zamykającym nawiasie klamrowym
}ostatniegocatchbloku i przedreturn 0;(gdzie zostało to przerwane w poprzednim przewodnikumain()Szybki start), wstaw następujący kod:// 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");
Tworzenie skryptu programu PowerShell w celu generowania tokenów dostępu
Użyj poniższego skryptu PowerShell do wygenerowania tokenów dostępu, które są wymagane przez zestaw SDK w Twojej implementacji AuthDelegateImpl::AcquireOAuth2Token. Skrypt używa Get-MsalToken polecenia cmdlet z zainstalowanego wcześniej modułu MSAL.PS w sekcji "Konfiguracja i konfiguracja zestawu MIP SDK".
Utwórz plik skryptu programu PowerShell (rozszerzenie.ps1) i skopiuj i wklej następujący skrypt do pliku:
- Zaktualizuj
$authorityi$resourceUrlpóźniej w poniższej sekcji. - Zaktualizuj
$appIdi$redirectUridopasuj wartości określone w Microsoft Entra rejestracji aplikacji.
$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- Zaktualizuj
Zapisz plik skryptu, aby można było go uruchomić później, gdy aplikacja kliencka zażąda go.
Kompilowanie i testowanie aplikacji
Skompiluj i przetestuj aplikację kliencą.
Skompiluj aplikację kliencą przy użyciu klawisza F6 (rozwiązanie kompilacji). Jeśli nie masz błędów kompilacji, użyj klawisza F5 (Rozpocznij debugowanie), aby uruchomić aplikację.
Jeśli projekt kompiluje się i uruchamia pomyślnie, aplikacja prosi o token dostępu za każdym razem, gdy SDK wywołuje metodę
AcquireOAuth2Token(). Możesz ponownie użyć wcześniej wygenerowanego tokenu, jeśli aplikacja monituje wiele razy, a żądane wartości są takie same.Aby wygenerować token dostępu dla monitu, wróć do skryptu programu PowerShell i:
Zaktualizuj zmienne
$authorityoraz$resourceUrl. Muszą one odpowiadać wartościom określonym w danych wyjściowych konsoli w kroku 2. Zestaw MIP SDK udostępnia te wartości w parametrzechallenge.AcquireOAuth2Token()Uruchom skrypt programu PowerShell. Polecenie
Get-MsalTokencmdlet wyzwala monit o uwierzytelnienie Microsoft Entra, podobnie jak w poniższym przykładzie. Określ to samo konto podane w danych wyjściowych konsoli w kroku 2. Po pomyślnym zalogowaniu polecenie cmdlet umieszcza token dostępu w schowku.Może być również konieczne wyrażenie zgody, aby umożliwić aplikacji dostęp do interfejsów API MIP podczas działania na koncie używanym do logowania. Dzieje się tak, gdy rejestracja aplikacji Microsoft Entra nie jest wcześniej zatwierdzona (zgodnie z opisem w sekcji "Konfiguracja zestawu MIP SDK") lub logujesz się przy użyciu konta z innego dzierżawcy (innego niż ten, w którym zarejestrowano aplikację). Wybierz pozycję Akceptuj , aby zarejestrować swoją zgodę.
Po wklejeniu tokenu dostępu do monitu z kroku 2 dane wyjściowe konsoli powinny wyświetlać etykiety poufności, podobnie jak w poniższym przykładzie:
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 . . .Uwaga
Skopiuj i zapisz identyfikator jednej lub większej liczby etykiet poufności (na przykład
f42a3342-8706-4288-bd31-ebb85995028z), ponieważ użyjesz go w następnym przewodniku z serii Szybki start.
Rozwiązywanie problemów
Problemy podczas wykonywania aplikacji C++
| Podsumowanie | Komunikat o błędzie | Rozwiązanie |
|---|---|---|
| Nieprawidłowy token dostępu |
Wystąpił wyjątek... czy token dostępu jest niepoprawny/wygasł? Nieudane wywołanie interfejsu API: profile_add_engine_async nie powiodło się z powodu: [class mip::PolicySyncException] Nie udało się pobrać zasad, żądanie zakończyło się niepowodzeniem z kodem stanu HTTP: 401, x-ms-diagnostics: [2000001;reason="Nie można przeanalizować tokenu OAuth przesłanego z żądaniem.";error_category="invalid_token"], correlationId:[aaaa0000-bb11-2222-33cc-444444dddddd]' C:\VSProjects\MipDev\Quickstarts\AppInitialization\x64\Debug\AppInitialization.exe (proces 29924) zakończył działanie z kodem 0. Naciśnij dowolny klawisz, aby zamknąć to okno. . . |
Jeśli projekt zostanie pomyślnie skompilowany, ale zobaczysz dane wyjściowe podobne do tych po lewej stronie, token w metodzie AcquireOAuth2Token() jest prawdopodobnie nieprawidłowy lub wygasł. Wróć do pozycji Tworzenie skryptu programu PowerShell, aby wygenerować tokeny dostępu i ponownie wygenerować token dostępu , ponownie zaktualizować AcquireOAuth2Token() i ponownie skompilować/ponownie przeprowadzić testowanie. Możesz również sprawdzić i zweryfikować token i jego oświadczenia przy użyciu aplikacji internetowej jwt.ms jednostronicowej. |
| Etykiety poufności nie są skonfigurowane | N/a | Jeśli projekt zostanie pomyślnie skompilowany, ale w oknie konsoli nie są wyświetlane żadne dane, upewnij się, że etykiety poufności w organizacji są poprawnie skonfigurowane. Aby uzyskać szczegółowe informacje, zobacz Konfigurowanie i konfigurowanie zestawu MIP SDK w obszarze "Definiowanie taksonomii etykiet i ustawień ochrony". |
Następne kroki
Teraz gdy wiesz, jak wyświetlić listę etykiet poufności w organizacji, wypróbuj następny przewodnik Szybki start:
- Zapoznaj się z przykładem zestawu MIP File SDK C++ w GitHub.