Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Implementação: adicionar um mecanismo de proteção
No SDK de Arquivo, a mip::ProtectionProfile classe é a classe raiz para todas as operações do SDK. Depois de criar o perfil, você pode adicionar um mecanismo ao perfil.
O exemplo a seguir demonstra como usar um único mecanismo para um único usuário autenticado.
Implementação: criar configurações do mecanismo de proteção
Semelhante a um perfil, o mecanismo também requer um objeto de configurações. mip::ProtectionEngine::Settings Esse objeto armazena o identificador exclusivo do mecanismo, o mip::AuthDelegate usado para adquirir tokens, dados de cliente personalizáveis que você pode usar para depuração ou telemetria e, opcionalmente, a localidade.
O código a seguir cria um ProtectionEngine::Settings objeto chamado engineSettings.
ProtectionEngine::Settings engineSettings("UniqueID", authDelegate, "");
Observação
Se você criar o objeto de configurações de proteção com esse método, também defina a identidade no ProtectionEngine::Settings objeto usando SetIdentity() ou o ambiente de nuvem de destino usando SetCloud().
Como prática recomendada, use o primeiro parâmetro, a ID, para identificar o usuário associado ou usar um mip::Identity objeto. Para inicializar as configurações com mip::Identity:
ProtectionEngine::Settings engineSettings(mip::Identity("Bob@Contoso.com"), authDelegate, "");
Ao criar engineSettings dessa forma, também defina explicitamente uma engineId exclusiva usando:
engineSettings.SetEngineId(engineId);
Use o nome de usuário ou o email para ajudar a garantir que o mecanismo seja carregado consistentemente sempre que o usuário usar o serviço ou o aplicativo.
Implementação: adicionar o mecanismo de proteção
Use o padrão futuro/promessa usado para carregar o perfil para adicionar o mecanismo. Em vez de criar a promessa para mip::ProtectionProfile, use mip::ProtectionEngine.
//auto profile will be std::shared_ptr<mip::ProtectionProfile>
auto profile = profileFuture.get();
//Create the ProtectionEngine::Settings object
ProtectionEngine::Settings engineSettings("UniqueID", authDelegate, "");
//Create a promise for std::shared_ptr<mip::ProtectionEngine>
auto enginePromise = std::make_shared<std::promise<std::shared_ptr<mip::ProtectionEngine>>>();
//Instantiate the future from the promise
auto engineFuture = enginePromise->get_future();
//Add the engine using AddEngineAsync, passing in the engine settings and the promise
profile->AddEngineAsync(engineSettings, enginePromise);
//get the future value and store in std::shared_ptr<mip::ProtectionEngine>
auto engine = engineFuture.get();
O código adiciona um mecanismo para o usuário autenticado ao perfil.
Implementação: listar modelos
Depois de adicionar o mecanismo, você pode listar todos os modelos de sensibilidade disponíveis ao usuário autenticado chamando engine->GetTemplatesAsync().
GetTemplatesAsync() busca a lista de descritores de modelo. O método armazena o resultado em um vetor de std::shared_ptr<mip::TemplateDescriptor>.
Implementação: ListSensitivityTemplates()
auto loadPromise = std::make_shared<std::promise<std::vector<std::shared_ptr<mip::TemplateDescriptor>>>>();
auto loadFuture = loadPromise->get_future();
engine->GetTemplatesAsync(engineObserver, loadPromise);
auto templates = loadFuture.get();
Implementação: imprimir as IDs do modelo
//Iterate through all template IDs in the vector
for (const auto& temp : templates) {
cout << "Template:" << "\n\tId: " << temp->GetId() << endl;
}
Imprimir os nomes mostra que o aplicativo retirou a política com êxito do serviço e recuperou os modelos. Para aplicar o modelo, você precisa do identificador de modelo.
Você pode mapear modelos para rótulos somente por meio do SDK de Política examinando o resultado de ComputeActions().
Próximas Etapas
Agora que você carregou o perfil, adicionou o mecanismo e tem templates, pode adicionar um manipulador para começar a ler, gravar ou remover templates dos arquivos. Consulte Conceitos do manipulador de proteção.
- Para obter o código de exemplo, consulte o exemplo do SDK do MIP Protection C++ no GitHub.