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.
Este guia de início rápido mostra como implementar o padrão de inicialização de cliente usado pelo wrapper .NET do SDK do MIP em tempo de execução.
Observação
Qualquer aplicativo cliente que use o SDK de Proteção do wrapper .NET do MIP exige seguir as etapas deste guia de início rápido. Conclua estes guias de início rápido em sequência após a inicialização do aplicativo e a implementação das classes de delegado de autenticação e 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). Este guia de início rápido "Configuração do mecanismo e perfil de proteção" requer a instalação e a 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, crie e configure a solução e o projeto de Visual Studio iniciais nos quais os outros inícios rápidos se baseiam.
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, selecione OK no canto inferior direito.
Adicione o pacote NuGet para o SDK da Proteção MIP ao seu projeto:
- Em Gerenciador de Soluções, clique com o botão direito do mouse no nó do projeto diretamente no nó superior da solução e selecione Gerenciar pacotes NuGet...:
- Quando a guia Gerenciador de Pacotes NuGet é aberta na área de guias Grupo do Editor:
- Selecione Procurar.
- Digite
Microsoft.InformationProtectionna caixa de pesquisa. - Selecione o
Microsoft.InformationProtection.Protectionpacote. - Selecione Instalar e, em seguida, selecione OK quando a caixa de diálogo de confirmação de alterações de visualização for exibida.
Repita as etapas anteriores, 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 o delegado de autenticação e 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.MIP, para inicialização, criação de umMipContext, carregamento de perfis e liberação de recursos. Para inicializar o wrapper para operações do SDK de Proteção, chameMIP.Initialize()e passeMipComponent.Protectionpara carregar as bibliotecas necessárias para operações de proteção.No
Main()Program.cs, adicione o código a seguir, substituindo <a ID> do aplicativo pela ID do registro de aplicativo Microsoft Entra que você criou 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);
}
}
}
Criar um perfil e um mecanismo de Proteção
Como mencionado, os clientes do SDK que usam APIs de MIP exigem objetos de perfil e de mecanismo. Conclua a parte de codificação deste início rápido adicionando código para carregar as DLLs nativas e, em seguida, 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, CacheStorageType.OnDiskEncrypted);
// Create MipContext using Configuration
MipContext 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 dos marcadores de posição no código-fonte que você colou pelos 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 você começa a experimentar os SDKs de Proteção MIP.
- Conheça o exemplo .NET do SDK de Proteção do MIP no GitHub.