Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questa guida introduttiva illustra come usare MIP File SDK per elencare le etichette di riservatezza configurate per l'organizzazione.
Prerequisiti
Se non è già stato fatto, assicurarsi di completare i prerequisiti seguenti prima di continuare:
- Completare Avvio rapido: inizializzazione dell'applicazione client (C++) anzitutto, che costruisce una soluzione iniziale di Visual Studio. Questa guida introduttiva "Elenca le etichette di riservatezza" si basa su quella precedente per creare la soluzione iniziale.
- Facoltativamente: esaminare i concetti relativi alle etichette di classificazione .
Aggiungere la logica per elencare le etichette di riservatezza
Aggiungi la logica per elencare le etichette di riservatezza dell'organizzazione utilizzando l'oggetto motore file.
Aprire la soluzione di Visual Studio creata nell'articolo precedente "Avvio rapido: Inizializzazione dell'applicazione client (C++)".
In Esplora soluzioni aprire il file .cpp nel progetto che contiene l'implementazione del
main()metodo . Per impostazione predefinita, il nome è lo stesso del progetto che lo contiene, nome che hai specificato durante la creazione del progetto.Aggiungere la direttiva seguente
usingdopousing mip::FileEngine;, nella parte superiore del file:using std::endl;Verso la fine del corpo
main(), dopo la parentesi graffa di chiusura}dell'ultimo bloccocatche prima direturn 0;(dal punto in cui avevi interrotto nella precedente guida introduttiva rapida), inserisci il codice seguente:// 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");
Creare uno script di PowerShell per generare token di accesso
Usare lo script di PowerShell seguente per generare i token di accesso richiesti dall'SDK nell'implementazione AuthDelegateImpl::AcquireOAuth2Token . Lo script usa il Get-MsalToken cmdlet del modulo MSAL.PS installato in precedenza, in "Configurazione e installazione di MIP SDK".
Creare un file di script di PowerShell (estensione.ps1) e copiare e incollare lo script seguente nel file:
- Aggiorna
$authoritye$resourceUrlpiù tardi, nella sezione seguente. - Aggiornare
$appIde$redirectUriin modo che corrispondano ai valori specificati nella registrazione dell'app Microsoft Entra.
$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- Aggiorna
Salvare il file di script in modo da poterlo eseguire in un secondo momento quando l'applicazione client la richiede.
Compilare e testare l'applicazione
Compilare e testare l'applicazione client.
Usa F6 (Compila soluzione) per compilare la tua applicazione client. Se non si verificano errori di compilazione, usare F5 (Avvia debug) per eseguire l'applicazione.
Se il progetto viene compilato ed eseguito correttamente, l'applicazione richiede un token di accesso ogni volta che l'SDK chiama il
AcquireOAuth2Token()metodo. È possibile riutilizzare un token generato in precedenza se l'applicazione richiede più volte e i valori richiesti sono gli stessi.Per generare un token di accesso per il prompt, tornare allo script di PowerShell e:
Aggiornare le variabili
$authoritye$resourceUrl. Devono corrispondere ai valori specificati nell'output della console nel passaggio 2. MIP SDK fornisce questi valori nelchallengeparametro diAcquireOAuth2Token().Esegui lo script di PowerShell. Il
Get-MsalTokencmdlet attiva un prompt di autenticazione Microsoft Entra, simile all'esempio seguente. Specificare lo stesso account fornito nell'output della console nel passaggio 2. Dopo aver effettuato correttamente l'accesso, il cmdlet inserisce il token di accesso negli Appunti.Potrebbe anche essere necessario fornire il consenso per consentire all'applicazione di accedere alle API MIP durante l'esecuzione con l'account di accesso. Ciò si verifica quando la registrazione dell'applicazione Microsoft Entra non è pre-consentita (come descritto in "installazione e configurazione di MIP SDK") o si accede con un account appartenente a un tenant diverso da quello in cui è registrata l'applicazione. Selezionare Accetta per registrare il consenso.
Dopo aver incollato il token di accesso nel prompt del passaggio 2, l'output della console dovrebbe mostrare le etichette di riservatezza, come nell'esempio seguente:
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 . . .Annotazioni
Copiare e salvare l'ID di una o più etichette di riservatezza, ad esempio
f42a3342-8706-4288-bd31-ebb85995028z, perché servirà nella prossima guida introduttiva.
Risoluzione dei problemi
Problemi durante l'esecuzione dell'applicazione C++
| Riassunto | Messaggio di errore | Soluzione |
|---|---|---|
| Token di accesso non valido |
Si è verificata un'eccezione... il token di accesso non è corretto/scaduto? Chiamata API non riuscita: profile_add_engine_async Failed with: [class mip::PolicySyncException] Failed acquiring policy, Request failed with http status code: 401, x-ms-diagnostics: [2000001;reason="Non è possibile analizzare il token OAuth inviato con la richiesta.";error_category="invalid_token"], correlationId:[aaaa0000-bb11-2222-33cc-444444dddddd]' C:\VSProjects\MipDev\Quickstarts\AppInitialization\x64\Debug\AppInitialization.exe (processo 29924) chiuso con codice 0. Premere un tasto qualsiasi per chiudere questa finestra. . . |
Se il progetto viene compilato correttamente, ma viene visualizzato un output simile a quello sinistro, è probabile che il token nel AcquireOAuth2Token() metodo non sia valido o scaduto. Tornare a Creare uno script di PowerShell per generare token di accesso e rigenerare il token di accesso, aggiornare AcquireOAuth2Token() di nuovo e ricompilare/ripetere il servizio. È anche possibile esaminare e verificare il token e le relative attestazioni usando l'applicazione Web a pagina singola jwt.ms . |
| Le etichette di riservatezza non sono configurate | non disponibile | Se il progetto viene compilato correttamente, ma non viene visualizzato alcun output nella finestra della console, assicurarsi che le etichette di riservatezza dell'organizzazione siano configurate correttamente. Per informazioni dettagliate, vedere Configurazione e configurazione di MIP SDK in "Definire le impostazioni di tassonomia e protezione delle etichette". |
Passaggi successivi
Ora che sai come elencare le etichette di riservatezza della tua organizzazione, prova la guida introduttiva successiva:
- Esplorare l'esempio C++ di MIP File SDK in GitHub.