Autenticação apenas com a aplicação do Armazém de Dados do Intune
Pode configurar uma aplicação com o Azure Active Directory (Azure AD) e autenticar para o Armazém de Dados do Intune. Este processo é útil para sites, aplicações e processos em segundo plano nos quais a aplicação não deve ter acesso às credenciais de utilizador. Através dos seguintes passos, está a autorizar a sua aplicação com o Azure AD com o OAuth 2.0.
Autorização
O Azure Active Directory (Azure AD) utiliza o OAuth 2.0 para lhe permitir autorizar o acesso a aplicações Web e a APIs Web no seu inquilino do Azure AD. Este guia mostra como autenticar a sua aplicação com C#. O fluxo do código de autorização de OAuth 2.0 é descrito na secção 4.1 da especificação de OAuth 2.0. Para obter mais informações, veja Authorize access to web applications using OAuth 2.0 and Azure Active Directory (Autorizar o acesso a aplicações Web com o OAuth 2.0 e o Azure Active Directory).
Azure KeyVault
O seguinte processo utiliza um método privado para processar e converter uma chave da aplicação. Este método privado tem o nome SecureString. Em alternativa, pode utilizar o Azure KeyVault para armazenar a chave da aplicação. Para obter mais informações, veja Key Vault.
Criar uma aplicação Web
Nesta secção, proporcione os detalhes da aplicação Web que gostaria de apontar para o Intune. Uma aplicação Web é uma aplicação de servidor de cliente. O servidor proporciona a aplicação Web, que inclui a IU, conteúdos e funcionalidades. A manutenção deste tipo de aplicação é feita separadamente na Web. Utilize o Intune para conceder acesso à aplicação Web ao Intune. O fluxo de dados é iniciado através da aplicação Web.
Inicie sessão no centro de administração do Microsoft Endpoint Manager.
Selecione Todos os serviços > M365 Azure Ative Directory > Azure Ative Directory > Registos da App.
Clique em Novo registo para mostrar ao Registo um painel de aplicação.
No Painel de Registo de aplicações, adicione os detalhes da sua aplicação:
- O nome de uma aplicação, como Autenticação apenas com a Aplicação do Intune.
- O tipo de conta suportada.
- O URI redirecionado da aplicação. Esta é a localização para a qual os utilizadores navegam automaticamente durante o processo de autenticação. Os utilizadores são obrigados a comprovar a sua identidade. Para obter mais informações, veja What is application access and single sign-on with Azure Active Directory? (O que é o acesso à aplicação e o início de sessão único com o Azure Active Directory?)
Clique em Registar.
Nota
Copie o ID da Aplicação (cliente) do painel de aplicações para utilizar mais tarde.
Criar uma chave (palavra-passe)
Nesta secção, o Azure AD gera um valor de chave para a sua aplicação.
No painel de registos da App, selecione a sua aplicação recém-criada para exibir o painel de aplicações.
Selecione Certificados & segredos perto do topo do painel para exibir o painel de segredos & certificados.
Selecione os segredos do Cliente no painel de segredos & Certificados.
Adicione a descrição da chave e uma duração expira para a chave.
Clique em Adicionar para guardar e atualizar as chaves da aplicação.
Tem de copiar o valor da chave gerado (codificação base64).
Nota
O valor-chave desaparece depois de deixar o painel de segredos & Certificados. Não pode recuperar a chave deste painel mais tarde. Copie-a para utilizar mais tarde.
Conceder permissões da aplicação
Nesta secção, pode conceder permissões às aplicações.
- Selecione permissões API > Adicione uma permissão > intune > Permissões de aplicação.
- Escolha a opção get_data_warehouse (Obtenha informações sobre o armazém de dados a partir de Microsoft Intune).
- Clique em Adicionar permissões.
- Clique em Fazer a partir do painel de acesso Add API.
- Clique em Grant consentimento de administração a partir do painel de permissões da API e clique em Sim quando promovido para atualizar quaisquer permissões existentes que esta aplicação já tenha.
Gerar token
Com o Visual Studio, crie um projeto de Aplicação de Consola (.NET Framework) que suporte o .NET Framework e utilize C# como a linguagem de programação.
Selecione 'Ficheiro > Novo > Project' para exibir a caixa de diálogo New Project.
No lado esquerdo, selecione Visual c# para apresentar todos os projetos de .NET Framework.
Selecione Aplicação de Consola (.Net Framework), adicione um nome da aplicação e, em seguida, clique em OK para criar a aplicação.
No Explorador de Soluções, selecione Program.cs para apresentar o código.
No Solution Explorer, adicione uma referência ao conjunto
System.Configuration
.No menu pop-up, selecione Adicionar Novo > item. É apresentada a caixa de diálogo Adicionar Novo Item.
No lado esquerdo, em Visual C#, selecione Código.
Selecione Classe, altere o nome da classe para IntuneDataWarehouseClass.cs e clique em Adicionar.
Adicione o seguinte código dentro do método
Main
:var applicationId = ConfigurationManager.AppSettings["appId"].ToString(); SecureString applicationSecret = ConvertToSecureStr(ConfigurationManager.AppSettings["appKey"].ToString()); // Load as SecureString from configuration file or secret store (i.e. Azure KeyVault) var tenantDomain = ConfigurationManager.AppSettings["tenantDomain"].ToString(); var adalContext = new AuthenticationContext($"https://login.windows.net/" + tenantDomain + "/oauth2/token"); AuthenticationResult authResult = adalContext.AcquireTokenAsync( resource: "https://api.manage.microsoft.com/", clientCredential: new ClientCredential( applicationId, new SecureClientSecret(applicationSecret))).Result;
Adicione mais espaços de nomes ao adicionar o seguinte código à parte superior do ficheiro de código:
using System.Security; using Microsoft.IdentityModel.Clients.ActiveDirectory; using System.Configuration;
Depois do método
Main
, adicione o seguinte método privado para processar e converter a chave da aplicação:private static SecureString ConvertToSecureStr(string appkey) { if (appkey == null) throw new ArgumentNullException("AppKey must not be null."); var secureAppKey = new SecureString(); foreach (char c in appkey) secureAppKey.AppendChar(c); secureAppKey.MakeReadOnly(); return secureAppKey; }
No Explorador de Soluções, clique com o botão direito do rato em Referências e, em seguida, selecione Gerir Pacotes NuGet.
Pesquise Microsoft.IdentityModel.Clients.ActiveDirectory e instale o pacote Microsoft NuGet relacionado.
No Explorador de Soluções, selecione e abra o ficheiro App. config.
Adicione a secção
appSettings
para que o xml apareça da seguinte forma:<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> </startup> <appSettings> <add key="appId" value="App ID created from 'Create a Web App' procedure"/> <add key="appKey" value="Key created from 'Create a key' procedure" /> <add key="tenantDomain" value="contoso.onmicrosoft.com"/> </appSettings> </configuration>
Atualize os valores
appId
,appKey
etenantDomain
para corresponder ao valores exclusivos relacionados com a aplicação.Crie a sua aplicação.
Nota
Para ver código de implementação adicional, veja Exemplo de código do Armazém de Dados do Intune.
Passos Seguintes
Saiba mais sobre o Azure Key Vault ao rever O que é o Azure Key Vault?