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.
Esse início rápido mostra como implementar o padrão de inicialização do cliente, usado pelo wrapper .NET do SDK da PIM em tempo de execução.
Observação
As etapas descritas neste início rápido são necessárias para todo aplicativo cliente que usa o SDK de Proteção do wrapper .NET da PIM. Esses inícios rápidos devem ser feitos em ordem após a Inicialização do Aplicativo e a implementação das classes Representante de Autenticação e Representante de Consentimento.
Pré-requisitos
Caso ainda não tenha feito isso, certifique-se de:
- Conclua as etapas na configuração e configuração do SDK da Proteção de Informações da Microsoft (MIP). Esse início rápido "Configuração de perfil de proteção e mecanismo" depende da instalação e configuração adequadas do SDK.
- Opcionalmente:
- Examine o perfil e os objetos do mecanismo. O perfil e os objetos do mecanismo são conceitos universais, exigidos por clientes que usam os SDKs de Arquivo, Políticas e Proteção da PIM.
- Examine os conceitos de Autenticação para saber como a autenticação e o consentimento são implementados pelo SDK e pelo aplicativo cliente.
Criar uma solução e um projeto do Visual Studio
Primeiro, criamos e configuramos a solução e o projeto iniciais do Visual Studio, nos quais os outros Inícios Rápidos serão criados.
Abra o Visual Studio 2022 ou posterior, selecione o menu Arquivo , Novo, Projeto. Na caixa de diálogo Novo Projeto :
No painel esquerdo, em Instalado, Visual C#, selecione Área de Trabalho do Windows.
No painel central, selecione Aplicativo de Console (.NET Framework)
No painel inferior, atualize o nome do projeto, o local e o nome da solução que contém adequadamente.
Quando terminar, clique no botão OK no canto inferior direito.
Adicione o pacote NuGet para o SDK de Arquivo MIP ao seu projeto:
- No Gerenciador de Soluções, clique com o botão direito do mouse no nó do projeto (diretamente no nó superior/solução) e selecione Gerenciar pacotes NuGet...:
- Quando a guia Gerenciador de Pacotes NuGet é aberta na área de guias Grupo do Editor:
- Selecione Procurar.
- Insira "Microsoft.InformationProtection" na caixa de pesquisa.
- Selecione o pacote "Microsoft.InformationProtection.Protection".
- Clique em "Instalar" e, em seguida, clique em "OK" quando a caixa de diálogo de confirmação Visualizar alterações for exibida.
Repita as etapas acima, mas adicione "Microsoft.Identity.Client" (MSAL) ao aplicativo.
Implementar um delegado de autenticação e um delegado de consentimento
Se ainda não estiver implementado, siga as etapas listadas na inicialização do aplicativo SDK de Arquivo para implementar a autenticação e o delegado de consentimento.
Inicializar o Wrapper Gerenciado do SDK do MIP
No Gerenciador de Soluções, abra o arquivo .cs em seu projeto que contém a implementação do
Main()método. Ele usa como padrão o mesmo nome do projeto que o contém, que você especificou durante a criação do projeto.Remova a implementação gerada de
main().O wrapper gerenciado inclui uma classe estática,
Microsoft.InformationProtection.MIPusada para inicialização, criando umMipContext, carregamento de perfis e liberação de recursos. Para inicializar o wrapper para operações do SDK do arquivo, chameMIP.Initialize(), passandoMipComponent.Protectionpara carregar as bibliotecas necessárias para operações de proteção.Em
Main()em Program.cs, adicione o seguinte, substituindo <application-id> pela ID do Registro de Aplicativo do Microsoft Entra criado anteriormente.
using System;
using System.Threading.Tasks;
using Microsoft.InformationProtection;
using Microsoft.InformationProtection.Exceptions;
using Microsoft.InformationProtection.Protection;
namespace mip_sdk_dotnet_quickstart
{
class Program
{
private const string clientId = "<application-id>";
private const string appName = "<friendly-name>";
static void Main(string[] args)
{
//Initialize Wrapper for Protection SDK operations
MIP.Initialize(MipComponent.Protection);
}
}
}
Construir um Perfil de Proteção e Mecanismo
Conforme mencionado, os objetos de perfil e mecanismo são necessários para clientes do SDK usando APIs de MIP. Conclua a parte de codificação deste Início Rápido adicionando código para carregar as DLLs nativas e instanciar o perfil e os objetos do mecanismo.
using System;
using System.Threading.Tasks;
using Microsoft.InformationProtection;
using Microsoft.InformationProtection.Exceptions;
using Microsoft.InformationProtection.Protection;
namespace mip_sdk_dotnet_quickstart
{
class Program
{
private const string clientId = "<application-id>";
private const string appName = "<friendly-name>";
static void Main(string[] args)
{
// Initialize Wrapper for Protection SDK operations.
MIP.Initialize(MipComponent.Protection);
// Create ApplicationInfo, setting the clientID from Azure AD App Registration as the ApplicationId.
ApplicationInfo appInfo = new ApplicationInfo()
{
ApplicationId = clientId,
ApplicationName = appName,
ApplicationVersion = "1.0.0"
};
// Instantiate the AuthDelegateImpl object, passing in AppInfo.
AuthDelegateImplementation authDelegate = new AuthDelegateImplementation(appInfo);
// Create MipConfiguration Object
MipConfiguration mipConfiguration = new MipConfiguration(appInfo, "mip_data", LogLevel.Trace, false);
// Create MipContext using Configuration
mipContext = MIP.CreateMipContext(mipConfiguration);
// Initialize and instantiate the ProtectionProfile.
// Create the ProtectionProfileSettings object.
// Initialize protection profile settings to create/use local state.
var profileSettings = new ProtectionProfileSettings(mipContext,
CacheStorageType.OnDiskEncrypted,
new ConsentDelegateImplementation());
// Load the Profile async and wait for the result.
var protectionProfile = Task.Run(async () => await MIP.LoadProtectionProfileAsync(profileSettings)).Result;
// Create a ProtectionEngineSettings object, then use that to add an engine to the profile.
var engineSettings = new ProtectionEngineSettings("user1@tenant.com", authDelegate, "", "en-US");
engineSettings.Identity = new Identity("user1@tenant.com");
var protectionEngine = Task.Run(async () => await protectionProfile.AddEngineAsync(engineSettings)).Result;
// Application Shutdown
// handler = null; // This will be used in later quick starts.
protectionEngine = null;
protectionProfile = null;
mipContext = null;
}
}
}
Substitua os valores de espaço reservado no código-fonte que você colou, usando os seguintes valores:
Placeholder Value Example <application-id> ID de Aplicativo do Microsoft Entra atribuída ao aplicativo registrado na "Instalação e configuração do SDK da PIM" (2 instâncias). 00001111-aaaa-2222-bbbb-3333cccc4444 <nome amigável> Um nome amigável definido pelo usuário para seu aplicativo. Inicialização do Aplicativo Agora, faça um build final do aplicativo e resolva quaisquer erros. Seu código deve ser construído com sucesso.
Próximas etapas
Agora que o código de inicialização está concluído, você está pronto para o próximo início rápido, no qual começará a experimentar os SDKs de Proteção MIP.