For the complete documentation index, see llms.txt. This page is also available as Markdown.

Cliente Linux gerido pelo Intune

Aplicável à versão 2.9 e superior do SCEPman

Este método pode ser usado para inscrever certificados para utilizadores e dispositivos geridos pelo Intune.

Neste caso, o Intune irá enviar um script para utilizar a SCEPman REST API, que por sua vez irá inscrever um novo certificado ou renovar um já existente.

O nosso developer Christoph apresentou esta funcionalidade e alguns detalhes de contexto no Workplace Ninja Usergroup Germany:

Pré-requisitos

1. Inscrição de Autoatendimento

Para registar certificados, os utilizadores devem estar autenticados para verificar a sua elegibilidade. Siga este guia para instruções passo a passo sobre como configurar isto

Registo de autosserviço

2. Definições do App Service

Configuração

Necessário para a renovação do certificado

Configure o seu SCEPman App Service para aceitar certificados de cliente mTLS. Na configuração da secção Settings, verifique se o Client certificate mode em Incoming client certificates está definido como Utilizador interativo opcional.

Não defina o Client certificate mode como Require ou Allow, pois isso interromperia o funcionamento normal do SCEPman nos pontos finais SCEP!

Variáveis de ambiente

Para poder utilizar este cenário, tem de definir as seguintes variáveis de ambiente no SCEPman app service.

Necessário para o registo e a renovação de certificados

Defina esta variável como true para permitir a validação de pedidos de assinatura de certificados (CSRs).

Necessário para a renovação do certificado

Defina esta variável como true para permitir renovações de certificados.

Necessário para a renovação do certificado

Defina esta variável como uma lista de tipos de certificados separada por vírgulas que pretende اجازه renovações. Consulte a documentação da variável ligada para obter uma lista dos possíveis tipos de certificados.

Exemplo: Static,IntuneUser,IntuneDevice

Este cenário inscreverá certificados do tipo IntuneUser e IntuneDevice dependendo da sua escolha.

3. Pré-requisitos do cliente

Os seguintes pré-requisitos devem estar presentes no cliente/host de execução para poder usar a Enrollment REST API.

Azure CLI (versão 2.61 e superior)

O Azure CLI é usado para autenticar o utilizador que está a registar-se, para verificar a sua elegibilidade e recuperar o token de acesso.

cURL

Usado para enviar o CSR criado para o Endpoint da SCEPman Enrollment API e receber o certificado.

OpenSSL

O OpenSSL é usado para gerar uma chave privada e criar um CSR para registar ou renovar um certificado.

Siga a documentação associada para inscrever o seu cliente Linux no Intune.

Script de Inscrição e Renovação

O enrollrenewcertificate.sh o script será usado para receber inicialmente um certificado, bem como para o verificar regularmente e tentar uma renovação caso o limiar seja atingido.

Embora o script seja normalmente executado passando os parâmetros no terminal, teremos de modificar algumas partes dele para ser implementado através do Intune.

Localize a parte do script que atribui os argumentos passados no terminal à variável e ajuste-os às suas necessidades:

Exemplo de configuração:

APPSERVICE_URL

A URL do serviço de aplicativo SCEPman.

Exemplo: "https://scepman.contoso.net/"

API_SCOPE

Este é o escopo da API que você pode criar no SCEPman-api registro de aplicativo no seu ambiente.

O usuário verá a caixa de diálogo de consentimento desejada e depois poderá usar a funcionalidade de autoatendimento.

Exemplo: "api://b7d17d51-8b6d-45eb-b42b-3dae638cd5bc/Cert.Enroll"

CERT_DIR

O diretório onde o certificado será criado ou será tentada a sua renovação. A chave privada e o certificado raiz também serão colocados aqui.

Exemplo: ~/certs/

CERT_NAME

O nome do arquivo (sem extensão) do certificado que será criado ou lido para renovação.

Exemplo: "myCertificate"

KEY_NAME

O nome do arquivo da chave privada que será criado ou lido para renovação.

Exemplo: "myKey"

RENEWAL_THRESHOLD_DAYS

A quantidade de dias para os quais o certificado precisará estar prestes a expirar para que o script inicie o processo de renovação.

Exemplo: 30

CERT_TYPE

O tipo de certificado que será inscrito.

Pode ser "user" ou "device"

CERT_COMMAND

Isto define o comportamento do script em relação à inscrição e renovação:

"auto" irá criar inicialmente um certificado ou renovar um certificado, se este já existir e estiver prestes a expirar.

"renewal" irá renovar um certificado se este estiver prestes a expirar, mas não irá criar inicialmente um certificado.

"initial" irá apenas inscrever um certificado, mas não renovar um existente.

Considerações

  • Este script não criptografa as chaves geradas (isso requer a entrada de uma senha, portanto a criptografia foi omitida para permitir a renovação automática).

  • Se você estiver renovando certificados protegidos por senha do Certificate Master, precisará informar essa senha para renová-los.

Implementar Script

Usando o Intune, podemos implementar o script modificado com um agendamento para inscrever inicialmente um certificado com os parâmetros fornecidos e verificar regularmente se precisa de ser renovado.

Adicione uma nova implementação de script Linux e certifique-se de definir o Contexto de execução para Utilizador e carregue ou cole o conteúdo do script bash modificado que criou na secção anterior.

Ajuste a Frequência de execução de acordo com o seu limiar de renovação.

O utilizador será solicitado a iniciar sessão na aplicação Azure CLI na primeira execução, uma vez que é necessário autenticar-se.

Última atualização

Isto foi útil?