Configurar e usar certificados PKCS importados com o Intune

O Microsoft Intune dá suporte ao uso de certificados de par de chaves públicas (PKCS) importados, normalmente usados na criptografia S/MIME com perfis de email. Determinados perfis de email no Intune dão suporte a uma opção para habilitar o S/MIME, em que é possível definir um certificado de autenticação S/MIME e um certificado de criptografia S/MIME.

Importante

Conforme anunciado neste blogue da Microsoft Tech Community, o suporte para a Biblioteca de Autenticação do Azure Active Directory (ADAL) termina em dezembro de 2022. Para que os scripts do PowerShell ou código personalizado continuem a funcionar para importar certificados PFX de utilizador para o Intune, estes têm de ser atualizados para tirar partido da Biblioteca de Autenticação da Microsoft (MSAL). Além disso, o ID de aplicação global do Intune deve ser atualizado com o ID exclusivo da Aplicação (cliente) atribuído à sua aplicação depois de o registar no ID do Microsoft Entra para evitar problemas de autenticação futuros.

No GitHub, o script do PowerShell de exemplo para ajudar a simplificar a importação de certificados PFX foi atualizado para referenciar o MSAL e o ID da Aplicação Microsoft Entra (cliente). Os exemplos de script neste artigo também são atualizados quando aplicável.

Para obter mais informações, veja o ficheiro PFXImport PowerShell Project readme no GitHub e transfira o script de exemplo atualizado.

A criptografia S/MIME é desafiadora porque o email é criptografado com um certificado específico:

  • Você precisa ter a chave privada do certificado que criptografou o email no dispositivo em que está lendo o email para que ele seja descriptografado.
  • Antes que um certificado em um dispositivo expire, você deve importar um novo certificado para que os dispositivos possam continuar descriptografando novos emails. A renovação desses certificados não é um procedimento compatível.
  • Os certificados de criptografia são renovados regularmente, o que significa que você talvez queira manter o certificado anterior em seus dispositivos, para garantir que emails mais antigos possam continuar a ser descriptografados.

Como o mesmo certificado precisa ser usado em todos os dispositivos, não é possível usar perfis de certificados SCEP ou PKCS para essa finalidade, pois esses mecanismos de entrega de certificados fornecem certificados exclusivos por dispositivo.

Para obter mais informações sobre como usar S/MIME com o Intune, confira Usar S/MIMEpara criptografar email.

Plataformas compatíveis

O Intune dá suporte à importação de certificados PFX para as seguintes plataformas:

  • Administrador de dispositivo Android
  • Android Enterprise:
    • Totalmente gerenciado
    • Perfil de Trabalho de Propriedade Corporativa
    • Perfil de Trabalho de Propriedade Pessoal
  • iOS/iPadOS
  • macOS
  • Windows 10/11

Importante

O Microsoft Intune vai terminar o suporte para a gestão de administradores de dispositivos Android em dispositivos com acesso ao Google Mobile Services (GMS) a 31 de dezembro de 2024. Após essa data, a inscrição de dispositivos, suporte técnico, correções de erros e correções de segurança estarão indisponíveis. Se utilizar atualmente a gestão de administradores de dispositivos, recomendamos que mude para outra opção de gestão do Android no Intune antes de o suporte terminar. Para obter mais informações, veja Terminar o suporte para administradores de dispositivos Android em dispositivos GMS.

Requisitos

Para usar certificados PKCS importados com o Intune, a seguinte infraestrutura será necessária:

  • Certificate Connector para Microsoft Intune:

    O conector de certificado processa as solicitações de arquivos PFX importados para o Intune para a criptografia de email S/MIME de um usuário específico. Verifique se cada conector que você instalar tem acesso à chave privada usada para criptografar as senhas dos arquivos PFX carregados.

    Para obter informações sobre o conector de certificado, confira:

  • Windows Server:

    O conector de certificado é instalado em um Windows Server que atende aos pré-requisitos dos conectores.

  • Visual Studio 2015 ou posterior (opcional):

    Use o Visual Studio para criar o módulo auxiliar do PowerShell com cmdlets para importar certificados PFX ao Microsoft Intune. Para obter os cmdlets auxiliares do PowerShell, confira o Projeto PFXImport do PowerShell no GitHub.

Como funciona

Ao usar o Intune para implantar um certificado PFX importado em um usuário, há dois componentes em jogo, além do dispositivo:

  • Intune Service: armazena os certificados PFX em um estado criptografado e manipula a implantação do certificado no dispositivo do usuário. As senhas que protegem as chaves privadas dos certificados são criptografadas antes de serem carregadas, usando um HSM (módulo de segurança de hardware) ou a criptografia do Windows, o que garante que o Intune não possa acessar a chave privada a qualquer momento.

  • Certificate Connector para Microsoft Intune: quando um dispositivo solicita um certificado PFX que foi importado para o Intune, a senha criptografada, o certificado e a chave pública do dispositivo são enviados para o conector. O conector descriptografa a senha usando a chave privada local e, em seguida, criptografa novamente a senha (e quaisquer perfis do plist, se usar o iOS) com a chave do dispositivo antes de enviar o certificado de volta para o Intune. O Intune entrega o certificado ao dispositivo, que o descriptografa com a chave privada do dispositivo e instala o certificado.

Importar Certificados PFX para o Intune

Use o Microsoft Graph para importar os certificados PFX de seus usuários no Intune. O Projeto PFXImport do PowerShell no GitHub proporciona cmdlets para executar as operações com facilidade.

Se você preferir usar sua própria solução personalizada no Graph, use o tipo de recurso userPFXCertificate.

Criar cmdlets do “Projeto PFXImport do PowerShell”

Para usar os cmdlets do PowerShell, crie seu próprio projeto usando o Visual Studio. O processo é muito direto e, embora possa ser executado no servidor, é recomendável executá-lo em sua estação de trabalho.

  1. Vá para a raiz do repositório Intune-Resource-Access no GitHub e baixe ou clone o repositório do Git para o seu computador.

    Botão de download do GitHub

  2. Vá para .\Intune-Resource-Access-develop\src\PFXImportPowershell\ e abra o projeto com o Visual Studio usando o arquivo PFXImportPS.sln.

  3. Na parte superior, altere de Depurar para Versão.

  4. Vá para Compilar e selecione Compilar PFXImportPS. Dentro de momentos, verá a confirmação Build succeeded ( Criar com êxito ) no canto inferior esquerdo do Visual Studio.

    Opção de Compilação do Visual Studio

  5. O processo de compilação cria uma nova pasta com o Módulo do PowerShell em .\Intune-Resource-Access-develop\src\PFXImportPowershell\PFXImportPS\bin\Release.

    Use essa pasta de Versão nas próximas etapas.

Criar uma Chave Pública de criptografia

Importe os Certificados PFX e suas chaves privadas para o Intune. A senha que protege a chave privada é criptografada com uma chave pública armazenada localmente. É possível usar a criptografia do Windows, um módulo de segurança de hardware ou outro tipo de criptografia para gerar e armazenar os pares de chaves públicas e privadas. Dependendo do tipo de criptografia usado, o par de chave pública ou privada pode ser exportado em um formato de arquivo para fins de backup.

O módulo do PowerShell fornece métodos para criar uma chave usando a criptografia do Windows. Também é possível usar outras ferramentas para criar uma chave.

Para criar a chave de criptografia usando a criptografia do Windows

  1. Copie a pasta Versão criada pelo Visual Studio para o servidor em que você instalou o Certificate Connector para Microsoft Intune. Essa pasta contém o módulo do PowerShell.

  2. No servidor, abra o PowerShell como Administrador e navegue até a pasta Versão que contém o módulo do PowerShell.

  3. Para importar o módulo, execute Import-Module .\IntunePfxImport.psd1.

  4. Em seguida, execute Add-IntuneKspKey -ProviderName "Microsoft Software Key Storage Provider" -KeyName "PFXEncryptionKey"

    Dica

    O provedor que você usa deve ser selecionado novamente ao importar os Certificados PFX. É possível usar o Provedor de Armazenamento de Chaves de Software Microsoft, embora haja suporte para o uso de um provedor diferente. O nome da chave também é fornecido como exemplo, e é possível usar um nome de chave diferente à sua escolha.

    Se planear importar o certificado da estação de trabalho, pode exportar esta chave para um ficheiro com o seguinte comando: Export-IntunePublicKey -ProviderName "<ProviderName>" -KeyName "<KeyName>" -FilePath "<File path\Filename.PFX>"

    A chave privada precisa ser importada em cada servidor que hospeda o Certificate Connector para Microsoft Intune, de modo que os certificados PFX importados possam ser processados com êxito.

Para usar um HSM (módulo de segurança de hardware)

Você pode usar um HSM (módulo de segurança de hardware) para gerar e armazenar o par de chaves públicas e privadas. Para obter mais informações, confira a documentação do fornecedor do HSM.

Importar certificados PFX

O processo a seguir usa os cmdlets do PowerShell como exemplo de importação dos certificados PFX. Você pode escolher diferentes opções, dependendo de seus requisitos.

As opções são:

  • Finalidade pretendida (agrupa os certificados com base em uma marcação):

    • não atribuído
    • smimeEncryption
    • smimeSigning
  • Esquema de Preenchimento:

    • oaepSha256
    • oaepSha384
    • oaepSha512

Selecione o Provedor de Armazenamento de Chaves que corresponde ao provedor usado para criar a chave.

Para importar o certificado PFX

  1. Exporte os certificados da CA (Autoridade de Certificação) seguindo a documentação do provedor. Para os Serviços de Certificados do Active Directory, você pode usar este script de exemplo.

  2. No servidor, abra o PowerShell como Administrador e navegue até a pasta Versão que contém o módulo do PowerShell IntunePfxImport.psd1.

    Observação

    As alterações a seguir devem ser feitas para locatários de GCC High e DoD antes da execução do IntunePfxImport.psd1.

    Use um editor de texto ou o ISE do PowerShell para editar o arquivo, o que atualiza os pontos de extremidade de serviço para o ambiente do GCC High. Observe que essas atualizações alteram os sufixos dos URIs de .com para .us. Há um total de duas atualizações no IntunePfxImport.psd1. Uma para AuthURI e a segunda para GraphURI:

    PrivateData = @{
        AuthURI = "login.microsoftonline.us"
        GraphURI = "https://graph.microsoft.us"
        SchemaVersion = "beta"
    
        ClientId = "00000000-0000-0000-0000-000000000000" # Client Id from Azure app registration
    
        ClientSecret = ""  # client secret from app registration when using application permissions to authenticate
    
        TenantId = "00000000-0000-0000-0000-000000000000" # TenantId is required when using client secret
        }
    

    Depois de salvar as alterações, reinicie o PowerShell.

  3. Para importar o módulo, execute Import-Module .\IntunePfxImport.psd1

  4. Para autenticar no Intune Graph, execute Set-IntuneAuthenticationToken -AdminUserName "<Admin-UPN>"

    Observação

    Conforme a autenticação é executada no Graph, você deve fornecer permissões à AppID. Caso seja a primeira vez que você utiliza esse utilitário, é necessário ser um Administrador global. Os cmdlets do PowerShell usam a mesma AppID das Amostras do PowerShell do Intune.

  5. Converta a senha de cada arquivo PFX que você está importando para uma cadeia de caracteres segura executando $SecureFilePassword = ConvertTo-SecureString -String "<PFXPassword>" -AsPlainText -Force.

  6. Para criar um objeto UserPFXCertificate, execute $userPFXObject = New-IntuneUserPfxCertificate -PathToPfxFile "<FullPathPFXToCert>" $SecureFilePassword "<UserUPN>" "<ProviderName>" "<KeyName>" "<IntendedPurpose>"

    Por exemplo: $userPFXObject = New-IntuneUserPfxCertificate -PathToPfxFile "C:\temp\userA.pfx" $SecureFilePassword "userA@contoso.com" "Microsoft Software Key Storage Provider" "PFXEncryptionKey" "smimeEncryption"

    Observação

    Ao importar o certificado de um sistema diferente do servidor em que o conector está instalado, será preciso usar este comando que inclui o caminho do arquivo de chave: $userPFXObject = New-IntuneUserPfxCertificate -PathToPfxFile "<FullPathToPFX>" $SecureFilePassword "<UserUPN>" "<ProviderName>" "<KeyName>" "<IntendedPurpose>" "<PaddingScheme>" "<File path to public key file>"

    A VPN não é compatível como um IntendedPurpose.

  7. Importe o objeto UserPFXCertificate para o Intune executando Import-IntuneUserPfxCertificate -CertificateList $userPFXObject

  8. Para validar o certificado importado, execute Get-IntuneUserPfxCertificate -UserList "<UserUPN>"

  9. Como melhor prática para limpar a cache de tokens do Microsoft Entra sem esperar que expire por conta própria, execute Remove-IntuneAuthenticationToken

Para mais informações sobre outros comandos disponíveis, confira o arquivo Leiame no Projeto PFXImport do PowerShell no GitHub.

Criar um perfil de certificado PKCS importado

Depois de importar os certificados para o Intune, crie um perfil de certificado importado do PKCS e atribua-o aos grupos do Microsoft Entra.

Observação

Depois que você cria um perfil de certificado PKCS importado, os valores de Finalidade Pretendida e KSP (provedor de armazenamento de chaves) no perfil ficam somente leitura e não podem ser editados. Se você precisar de um valor diferente para qualquer uma dessas configurações, crie um perfil e implante-o.

  1. Entre no Centro de administração do Microsoft Intune.

  2. Selecione e aceda a Dispositivos>Gerir dispositivos>Configuração>Criar.

  3. Insira as seguintes propriedades:

    • Plataforma: escolha a plataforma dos dispositivos.
    • Perfil: selecione Certificado PKCS importado. Ou selecione Modelos>Certificado PKCS importado.
  4. Selecionar Criar.

  5. Em Noções básicas, insira as seguintes propriedades:

    • Nome: insira um nome descritivo para o perfil. Nomeie seus perfis para que você possa identificá-los facilmente mais tarde. Por exemplo, um bom nome de perfil é Perfil de certificado PKCS importado para toda a empresa.
    • Descrição: insira uma descrição para o perfil. Essa configuração é opcional, mas recomendada.
  6. Selecione Avançar.

  7. Em Definições de configuração, insira as seguintes propriedades:

    • Finalidade pretendida: especifique a finalidade pretendida dos certificados que são importados para esse perfil. Os administradores podem importar certificados com finalidades pretendidas diferentes (como autenticação S/MIME ou criptografia S/MIME). A finalidade pretendida selecionada no perfil de certificado corresponde ao perfil de certificado com os certificados corretos importados. A finalidade pretendida é uma marcação para agrupar certificados importados, mas não garante que os certificados importados com essa marcação atenderão à finalidade pretendida.

    • KSP (provedor de armazenamento de chaves): para o Windows, selecione o local em que armazenar as chaves no dispositivo.

  8. Este passo aplica-se apenas aos perfis de dispositivos Android Enterprise para Perfil de Trabalho Totalmente Gerido, Dedicado e Corporate-Owned.

    Em Aplicações, configure o Acesso ao certificado para gerir a forma como o acesso ao certificado é concedido às aplicações. Escolha entre:

    • Exigir a aprovação do utilizador para aplicações(predefinição) – os utilizadores têm de aprovar a utilização de um certificado por todas as aplicações.
    • Conceder automaticamente a aplicações específicas (exigir a aprovação do utilizador para outras aplicações) – com esta opção, selecione Adicionar aplicações e, em seguida, selecione uma ou mais aplicações que irão utilizar automaticamente o certificado sem interação do utilizador.
  9. Selecione Avançar.

  10. Em Atribuições, selecione o usuário ou os grupos que receberão seu perfil. Para obter mais informações sobre a atribuição de perfis, consulte Atribuir perfis de usuário e dispositivo.

    Selecione Avançar.

  11. (Aplica-se apenas ao Windows 10/11) Em Regras de Aplicabilidade, especifique regras de aplicabilidade para refinar a atribuição desse perfil. Você pode optar por atribuir ou não atribuir o perfil com base na edição ou na versão do sistema operacional de um dispositivo.

    Para obter mais informações, confira Regras de aplicabilidade em Criar um perfil de dispositivo no Microsoft Intune.

    Selecione Avançar.

  12. Em Examinar + criar, examine as configurações. Quando você seleciona Criar, as alterações são salvas, e o perfil é atribuído. A política também é mostrada na lista de perfis.

Suporte para parceiros terceiros

Os parceiros a seguir fornecem métodos ou ferramentas compatíveis que você pode usar para importar certificados PFX para o Intune.

DigiCert

Se você usar o serviço de Plataforma PKI da DigiCert, poderá usar a Ferramenta de Importação da DigiCert para certificados do Intune S/MIME para importar certificados PFX para o Intune. O uso dessa ferramenta substitui a necessidade de seguir as instruções da seção Importar certificados PFX para o Intune, que foi detalhada anteriormente neste artigo.

Para saber mais sobre a Ferramenta de Importação da DigiCert, incluindo como obtê-la, confira https://knowledge.digicert.com/tutorials/microsoft-intune.html na base de dados de conhecimento da DigiCert.

EverTrust

Se usar o EverTrust como sua solução de PKI, autônoma ou combinada com uma PKI existente, você poderá configurar o EverTrust Horizon para importar certificados PFX para o Intune. Depois de concluir a integração, você não precisará seguir as instruções na seção Importar certificados PFX para o Intune, detalhada anteriormente neste artigo.

Para saber mais sobre a integração do EverTrust com o Intune, consulte https://evertrust.fr/horizon-and-intune-integration/.

KeyTalk

Se você usar o serviço KeyTalk, poderá configurar seu serviço para importar certificados PFX para o Intune. Depois de concluir a integração, você não precisará seguir as instruções na seção Importar Certificados PFX para o Intune, que foi detalhada anteriormente neste artigo.

Para saber mais sobre a integração do KeyTalk com o Intune, confira https://keytalk.com/support na base de dados de conhecimento do KeyTalk.

Próximas etapas

Usar o SCEP para certificados

A IU do Intune apresenta dispositivos Windows Server distintos dos clientes Windows para o cenário de Gestão de Segurança do Microsoft Defender para Endpoint

Para suportar o cenário de Gestão de Segurança do Microsoft Defender para Endpoint (configuração de segurança MDE), o Intune irá em breve diferenciar os dispositivos Windows no Microsoft Entra ID como o Windows Server para dispositivos que executam o Windows Server ou como Windows para dispositivos com o Windows 10 ou Windows 11.

Com esta alteração, poderá melhorar a segmentação de políticas para a configuração de segurança do Microsoft Defender para Endpoint. Por exemplo, poderá utilizar grupos dinâmicos que consistem apenas em dispositivos Windows Server ou apenas em dispositivos cliente Windows (Windows 10/11).