Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este Quickstart mostra-lhe como usar o MIP File SDK, para listar as etiquetas de sensibilidade configuradas para a sua organização.
Pré-requisitos
Se ainda não o fizeste, certifica-te de cumprir os seguintes pré-requisitos antes de continuar:
- Guia de início rápido completo: inicialização do aplicativo cliente (C++) primeiro, que cria uma solução inicial do Visual Studio. Este guia de iniciação rápida, "Listar etiquetas de sensibilidade", baseia-se no anterior para a correta criação da solução inicial.
- Opcionalmente: Rever conceitos de etiquetas de classificação .
Adicionar lógica para listar as etiquetas de sensibilidade
Adicione lógica para listar as etiquetas de sensibilidade da sua organização, usando o objeto do motor de ficheiros.
Abra a solução Visual Studio que criou no artigo anterior "Quickstart: Inicialização da aplicação cliente (C++)".
Usando o Explorador de Soluções, abra o ficheiro .cpp no seu projeto que contém a implementação do
main()método. Por padrão, tem o mesmo nome do projeto que o contém, que especificou durante a criação do projeto.Adicione a seguinte
usingdiretiva apósusing mip::FileEngine;, perto do topo do ficheiro:using std::endl;Perto do fim do
main()corpo, abaixo da barra}de encerramento do últimocatchbloco e acimareturn 0;(onde parou no Quickstart anterior), insira o seguinte código:// 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");
Crie um script PowerShell para gerar tokens de acesso
Use o seguinte script PowerShell para gerar tokens de acesso, que são solicitados pelo SDK na sua AuthDelegateImpl::AcquireOAuth2Token implementação. O script usa o Get-MsalToken cmdlet do módulo MSAL.PS que instalaste anteriormente, em "MIP SDK Setup and Configuration".
Crie um ficheiro PowerShell Script (extensão.ps1) e copie/cole o seguinte script no ficheiro:
-
$authoritye$resourceUrlsão atualizados posteriormente, na secção seguinte. - Atualize
$appIde$redirectUri, para corresponder aos valores que especificou no registo da sua aplicação 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-
Guarda o ficheiro de script para poderes executá-lo mais tarde, quando a tua aplicação cliente solicitar.
Construir e testar a aplicação
Por fim, construa e teste a sua aplicação cliente.
Usa o F6 (Build Solution) para construir a tua aplicação cliente. Se não tiveres erros de compilação, usa F5 (Start debug) para executar a tua aplicação.
Se o seu projeto for construído e executado com sucesso, a aplicação solicita um token de acesso cada vez que o SDK chama o seu
AcquireOAuth2Token()método. Pode reutilizar um token previamente gerado, se for solicitado várias vezes e os valores solicitados forem os mesmos.Para gerar um token de acesso para o prompt, volte ao seu script PowerShell e:
Atualize as variáveis
$authoritye$resourceUrl. Devem corresponder aos valores especificados na saída da consola no passo #2. Estes valores são fornecidos pelo MIP SDK nochallengeparâmetro deAcquireOAuth2Token():Executa o script PowerShell. O
Get-MsalTokencmdlet dispara um prompt de autenticação Microsoft Entra, semelhante ao exemplo abaixo. Especifique a mesma conta fornecida na saída da consola no passo #2. Após o início de sessão bem-sucedido, o token de acesso será colocado na prancheta.Também poderá precisar de conceder consentimento, para permitir que a aplicação aceda às APIs do MIP enquanto está a correr sob a conta de login. Isto acontece quando o registo da aplicação Microsoft Entra não é pré-consentido (como descrito em "MIP SDK setup and configuration"), ou quando está a iniciar sessão com uma conta de um inquilino diferente (diferente daquele onde a sua aplicação está registada). Basta clicar em Aceitar para registar o seu consentimento.
Depois de colar o token de acesso no prompt do passo #2, a saída da consola deve mostrar as etiquetas de sensibilidade, semelhante ao seguinte exemplo:
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 . . .Observação
Copie e guarde o ID de uma ou mais das etiquetas de sensibilidade (por exemplo,
f42a3342-8706-4288-bd31-ebb85995028z), pois irá usá-lo no próximo Quickstart.
Troubleshooting
Problemas durante a execução de aplicações em C++
| Resumo | Mensagem de erro | Solução |
|---|---|---|
| Token de acesso deficiente |
Ocorreu uma exceção... O token de acesso está incorreto/expirado? Chamada API falhada: profile_add_engine_async Falhada com: [class mip::P olicySyncException] Falha na política de aquisição, Pedido falhado com código de estado http: 401, x-ms-diagnostics: [2000001; reason="OAuth token submetido com o pedido não pode ser analisado."; error_category="invalid_token"], correlationId:[35bc0023-3727-4eff-8062-000006d5d672]' C:\VSProjects\MipDev\Quickstarts\AppInitialization\x64\Debug\AppInitialization.exe (processo 29924) saiu com código 0. Pressiona qualquer tecla para fechar esta janela. . . |
Se o teu projeto for construído com sucesso, mas vires uma saída semelhante à esquerda, provavelmente tens um token inválido ou expirado no teu AcquireOAuth2Token() método. Volte a Criar um script PowerShell para gerar tokens de acesso e regenere o token de acesso, atualize AcquireOAuth2Token() novamente e reconstrua/teste. Também pode examinar e verificar o token e as suas reivindicações, utilizando a aplicação web jwt.ms de página única. |
| As etiquetas de sensibilidade não estão configuradas | não aplicável | Se o seu projeto for construído com sucesso, mas não tiver saída na janela da consola, certifique-se de que as etiquetas de sensibilidade da sua organização estão configuradas corretamente. Consulte a configuração e configuração do SDK do MIP, em "Definir taxonomia de etiquetas e definições de proteção" para mais detalhes. |
Próximas Etapas
Agora que aprendeu a listar as etiquetas de sensibilidade da sua organização, experimente o próximo quickstart: