Partilhar via


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.

  1. Inicie sessão no centro de administração do Microsoft Endpoint Manager.

  2. Selecione Todos os serviços > M365 Azure Ative Directory > Azure Ative Directory > Registos da App.

  3. Clique em Novo registo para mostrar ao Registo um painel de aplicação.

  4. 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?)
  5. 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.

  1. No painel de registos da App, selecione a sua aplicação recém-criada para exibir o painel de aplicações.

  2. Selecione Certificados & segredos perto do topo do painel para exibir o painel de segredos & certificados.

  3. Selecione os segredos do Cliente no painel de segredos & Certificados.

  4. Adicione a descrição da chave e uma duração expira para a chave.

  5. Clique em Adicionar para guardar e atualizar as chaves da aplicação.

  6. 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.

  1. Selecione permissões API > Adicione uma permissão > intune > Permissões de aplicação.
  2. Escolha a opção get_data_warehouse (Obtenha informações sobre o armazém de dados a partir de Microsoft Intune).
  3. Clique em Adicionar permissões.
  4. Clique em Fazer a partir do painel de acesso Add API.
  5. 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.

  1. Selecione 'Ficheiro > Novo > Project' para exibir a caixa de diálogo New Project.

  2. No lado esquerdo, selecione Visual c# para apresentar todos os projetos de .NET Framework.

  3. Selecione Aplicação de Consola (.Net Framework), adicione um nome da aplicação e, em seguida, clique em OK para criar a aplicação.

  4. No Explorador de Soluções, selecione Program.cs para apresentar o código.

  5. No Solution Explorer, adicione uma referência ao conjunto System.Configuration .

  6. No menu pop-up, selecione Adicionar Novo > item. É apresentada a caixa de diálogo Adicionar Novo Item.

  7. No lado esquerdo, em Visual C#, selecione Código.

  8. Selecione Classe, altere o nome da classe para IntuneDataWarehouseClass.cs e clique em Adicionar.

  9. 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;
    
  10. 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;
    
  11. 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;
    }
    
  12. No Explorador de Soluções, clique com o botão direito do rato em Referências e, em seguida, selecione Gerir Pacotes NuGet.

  13. Pesquise Microsoft.IdentityModel.Clients.ActiveDirectory e instale o pacote Microsoft NuGet relacionado.

  14. No Explorador de Soluções, selecione e abra o ficheiro App. config.

  15. 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>
    
  16. Atualize os valores appId, appKey e tenantDomain para corresponder ao valores exclusivos relacionados com a aplicação.

  17. 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?