# macOS

O artigo seguinte descreve como implementar certificados de dispositivo ou/ e de utilizador para dispositivos macOS. A implementação do SCEPman Root Certificate é obrigatória. Depois disso, pode escolher entre implementar apenas certificados de dispositivo, apenas de utilizador ou até ambos os tipos de certificado.

{% hint style="warning" %}
Note que o macOS regista um certificado de autenticação de cliente separado para cada perfil de configuração de dispositivo em que é referenciado um perfil SCEP, para além do próprio perfil de certificado SCEP. Consulte a nota [aqui](https://learn.microsoft.com/en-us/intune/intune-service/protect/certificates-profile-scep#assign-the-certificate-profile)
{% endhint %}

## Root Certificate

A base para a implementação de certificados SCEP é confiar no certificado raiz do SCEPman. Por isso, tem de transferir o certificado raiz da CA e implementá-lo como um **certificado de confiança** perfil através do Microsoft Intune:

* [ ] Transfira o certificado da CA a partir do portal SCEPman:

![](https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-9170eb0435726398eb43f6fac8abd0d5f35e8cc4%2FSCEPmanHomePage.png?alt=media)

* [ ] Crie um perfil para macOS com o tipo **certificado de confiança** no Microsoft Intune:

![](https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-31826810c8866a5b99ff139fd2ca755251fbb502%2FmacOSRootCrt.png?alt=media)

* [ ] Carregue o seu **ficheiro .cer**.
* [ ] Agora pode implementar este perfil nos seus dispositivos. Escolha Todos os utilizadores e/ou Todos os dispositivos ou um grupo dedicado para atribuição.

{% hint style="info" %}
Nota: tem de usar o **mesmo grupo para atribuição** do **certificado de confiança** e **perfil SCEP**. Caso contrário, a implementação no Intune poderá falhar.
{% endhint %}

## Certificados de dispositivo

* [ ] Abra o portal SCEPman e copie o URL em **Intune MDM**:

![](https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-e72dec344ae0106207cac3c5039842bea56f2558%2FSCEPmanMDMURL.png?alt=media)

* [ ] Crie um perfil para macOS com o tipo **certificado SCEP** no Microsoft Intune:

![](https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-9fd63fc224dbcef7b5ea7eea7f0bdf8b4b895d02%2FmacOSDeviceCert.png?alt=media)

* [ ] Configure o perfil conforme descrito:

<details>

<summary>Tipo de certificado: <code>Dispositivo</code></summary>

Nesta secção, estamos a configurar um certificado de dispositivo.

</details>

<details>

<summary>Formato do nome do sujeito: <code>CN={{DeviceName}}</code> ou <code>CN={{DeviceId}}</code> ou <code>CN={{AAD_Device_ID}}</code></summary>

**Recomendado:** Utilize `{{DeviceName}}`para o CN RDN para ter um nome significativo do certificado no dispositivo ou ao procurar o certificado.

**Opcional:** Se configurado para `CN={{DeviceId}}` ou `CN={{AAD_Device_ID}}`, o SCEPman usa o campo CN do nome do sujeito para identificar o dispositivo e como semente para a geração do número de série do certificado. O Microsoft Entra ID (Azure AD) e o Intune oferecem dois IDs diferentes:

* `{{DeviceId}}`: Este ID é gerado e usado pelo Intune.\
  \
  (requer que [#appconfig-intunevalidation-devicedirectory](https://docs.scepman.com/pt/configuracao-do-scepman/application-settings/scep-endpoints/intune-validation#appconfig-intunevalidation-devicedirectory "mention") seja definido para **Intune** ou **AADAndIntune**)
* `{{AAD_Device_ID}}`: Este ID é gerado e usado pelo Microsoft Entra ID (Azure AD).

Caso nenhum de `CN={{DeviceId}}` nem `CN={{AAD_Device_ID}}` seja usado para o campo CN (por exemplo, `CN={{DeviceName}})`, o SCEPman identificará o dispositivo com base no Intune Device ID (`(URI)Valor:` `IntuneDeviceId://{{DeviceId}}`) fornecido no nome alternativo do sujeito (SAN).

**Importante:** A escolha do campo CN afeta o [comportamento automático de revogação](https://docs.scepman.com/pt/manage-certificates#automatic-revocation) dos certificados emitidos para os seus dispositivos geridos pelo Intune.

Pode adicionar outros RDNs, se necessário (por exemplo: `CN={{DeviceId}}, O=Contoso, CN={{WiFiMacAddress}}`). As variáveis suportadas estão listadas nos [documentos da Microsoft](https://docs.microsoft.com/en-us/mem/intune/protect/certificates-profile-scep#create-a-scep-certificate-profile).

</details>

<details>

<summary>Nome alternativo do sujeito: <code>URI</code> Valor:<code>IntuneDeviceId://{{DeviceId}}</code></summary>

O campo URI é [recomendado pela Microsoft](https://techcommunity.microsoft.com/t5/intune-customer-success/new-microsoft-intune-service-for-network-access-control/ba-p/2544696) para soluções NAC identificarem os dispositivos com base no respetivo Intune Device ID.

O **campo URI é obrigatório** caso nenhum de `CN={{DeviceId}}` nem `CN={{AAD_Device_ID}}` seja usado no campo **Formato do nome do sujeito** .

Outros valores SAN, como DNS, podem ser adicionados, se necessário.

</details>

<details>

<summary>Período de validade do certificado: <code>1 anos</code></summary>

<mark style="color:laranja;">**Importante:**</mark> <mark style="color:laranja;">Os dispositivos macOS ignoram a configuração do período de validade através do Intune. Certifique-se de configurar</mark> [#appconfig-validityperioddays](https://docs.scepman.com/pt/configuracao-do-scepman/application-settings/certificates#appconfig-validityperioddays "mention") <mark style="color:laranja;">para um valor fixo. Pode deixar a definição do período de validade do certificado em 1 ano, porque isso será ignorado de qualquer forma.</mark>\
\ <mark style="color:laranja;">**Importante:**</mark> <mark style="color:laranja;">Tenha também em atenção que</mark> <mark style="color:laranja;">**os certificados no macOS são apenas renovados**</mark> <mark style="color:laranja;">pelo Intune quando o dispositivo está</mark> <mark style="color:laranja;">**desbloqueado, online, a sincronizar e dentro do âmbito do limite de renovação**</mark><mark style="color:laranja;">. Se os certificados estiverem expirados (por exemplo: o dispositivo esteve offline e/ou bloqueado durante muito tempo), já não serão renovados. Por isso, recomendamos escolher aqui um valor mais elevado.</mark>

</details>

<details>

<summary>Utilização da chave: <code>Assinatura digital</code> e <code>encobrimento de chave</code>t</summary>

Ative ambas as ações criptográficas.

</details>

<details>

<summary>Tamanho da chave (bits): <code>2048</code></summary>

O SCEPman suporta 2048 bits.

</details>

<details>

<summary>Root Certificate: <code>Perfil do passo anterior</code></summary>

Selecione o perfil do Intune de [#Root certificates](#root-certificate)

</details>

<details>

<summary>Utilização avançada da chave: <code>Autenticação de cliente, 1.3.6.1.5.5.7.3.2</code></summary>

Escolha **Autenticação de cliente (1.3.6.1.5.5.7.3.2)** em **Valores predefinidos**. Os outros campos serão preenchidos automaticamente.

<mark style="color:laranja;">**Importante:**</mark> <mark style="color:laranja;">Os dispositivos macOS não suportam quaisquer Extended Key Usages (EKUs) além de</mark> <mark style="color:laranja;">`Autenticação de cliente`</mark> <mark style="color:laranja;">. Isto significa que quaisquer outros EKUs configurados neste perfil serão ignorados.</mark>

</details>

<details>

<summary>Limite de renovação (%): <code>50</code></summary>

Este valor define quando o dispositivo tem permissão para renovar o respetivo certificado (com base no tempo de vida remanescente do certificado existente). Leia a nota em **Período de validade do certificado** e selecione um valor adequado que permita ao dispositivo renovar o certificado durante um longo período. Um valor de 50% permitiria ao dispositivo com um certificado válido por 1 ano iniciar a renovação 182 dias antes da expiração.

</details>

<details>

<summary>URLs do servidor SCEP: Abra o portal SCEPman e copie o URL de <a href="#device-certificates"><strong>Intune MDM</strong></a></summary>

**Exemplo**

```
https://scepman.contoso.com/certsrv/mscep/mscep.dll
```

</details>

{% hint style="info" %}
Com as definições indicadas, cumprimos [os requisitos de certificados da Apple](https://support.apple.com/en-us/HT210176).
{% endhint %}

### Exemplo

<figure><img src="https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FR8HuhELOGkyKH1Qg5VvC%2F2024-03-14%2015_39_42.png?alt=media&#x26;token=0d2b0d13-9804-4129-90e1-217dc8954229" alt=""><figcaption></figcaption></figure>

* [ ] Agora pode implementar este perfil nos seus dispositivos. Escolha os mesmos grupo(s) para atribuição que para o perfil de certificado de confiança.

## Certificados de utilizador

A secção seguinte mostra como pode implementar certificados de utilizador através de um perfil de certificado do Intune em dispositivos macOS X 10.12 (ou posterior).

{% hint style="warning" %}
Nota: os certificados provisionados através do protocolo SCEP — independentemente do tipo (utilizador ou dispositivo) — são sempre colocados na cadeia de chaves do sistema (armazenamento do sistema) do dispositivo.

Caso uma aplicação de terceiros necessite de acesso a esse certificado (por exemplo, um cliente VPN de terceiros), o deslizador para **Permitir que todas as apps acedam à chave privada** na cadeia de chaves tem de estar definido como **ativado**.
{% endhint %}

Siga as instruções de [#Device certificates](#device-certificates) e tenha em atenção as seguintes diferenças:

<details>

<summary>Tipo de certificado: <code>Utilizador</code></summary>

Nesta secção, estamos a configurar um certificado de utilizador.

</details>

<details>

<summary>Formato do nome do sujeito: <code>CN={{UserName}},E={{EmailAddress}}</code></summary>

Pode definir RDNs com base nas suas necessidades. As variáveis suportadas estão listadas nos [documentos da Microsoft](https://docs.microsoft.com/en-us/mem/intune/protect/certificates-profile-scep#create-a-scep-certificate-profile). Recomendamos incluir o nome de utilizador (por exemplo: janedoe) e o endereço de e-mail (por exemplo: <janedoe@contoso.com>) como definição de base.

</details>

<details>

<summary>Nome alternativo do sujeito: <code>UPN</code> Valor:<code>{{UserPrincipalName}}</code></summary>

O SCEPman usa o UPN no SAN para identificar o utilizador e como semente para a geração do número de série do certificado (por exemplo: <janedoe@contoso.com>).\
\
Outros valores SAN, como o endereço de e-mail, podem ser adicionados, se necessário.

</details>

{% hint style="info" %}
Com as definições indicadas, cumprimos [os requisitos de certificados da Apple](https://support.apple.com/en-us/HT210176)
{% endhint %}

### Exemplo

![](https://3802289327-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-e2a63d43d7111534aeb580585a0937342a34cb89%2F2022-04-05%2018macOSUserCert.png?alt=media)
