# Windows

El siguiente artículo describe la implementación de certificados de dispositivo y/o usuario para dispositivos Windows. La implementación del certificado raíz de SCEPman es obligatoria. Después, puede elegir entre implementar solo certificados de dispositivo, solo de usuario o incluso ambos tipos de certificados.

## Certificado raíz

La base para implementar certificados SCEP es confiar en el certificado raíz de SCEPman. Por lo tanto, debe descargar el certificado raíz de la CA e implementarlo como un **certificado de confianza** perfil mediante Microsoft Intune:

* [ ] Descargue el certificado de la CA desde el portal de SCEPman:

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

* [ ] Cree un perfil para **Windows 10 y posteriores** con tipo **certificado de confianza** en Microsoft Intune:

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

* [ ] Cargue su archivo **.cer**.
* [ ] descargado previamente. Ahora puede implementar este perfil en sus dispositivos. Elija Todos los usuarios y/o Todos los dispositivos o un grupo dedicado para la asignación.

{% hint style="info" %}
Tenga en cuenta que debe usar el mismo grupo para asignar el certificado de confianza y el perfil SCEP. De lo contrario, la implementación de Intune podría fallar.
{% endhint %}

## Certificados de dispositivo

* [ ] Abra el portal de SCEPman y copie la URL que aparece bajo Intune MDM

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

* [ ] Cree un perfil para **Windows 10 y posteriores** con tipo **certificado SCEP** en Microsoft Intune

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

* [ ] Configure el perfil como se describe:

<details>

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

En este caso estamos configurando un certificado de dispositivo

</details>

<details>

<summary>Formato del nombre del sujeto: <code>CN={{DeviceName}}</code> o <code>CN={{DeviceId}}</code> o <code>CN={{AAD_Device_ID}}</code></summary>

**Recomendado:** Use `{{DeviceName}}`para el RDN CN para tener un nombre significativo del certificado en el dispositivo o al buscar el certificado.

**Opcional:** Si se configura para `CN={{DeviceId}}` o `CN={{AAD_Device_ID}}`, SCEPman usa el campo CN del nombre del sujeto para identificar el dispositivo y como semilla para la generación del número de serie del certificado. Microsoft Entra ID (Azure AD) e Intune ofrecen dos identificadores diferentes:

* `{{DeviceId}}`: Este identificador es generado y usado por Intune.\
  \
  (requiere [#appconfig-intunevalidation-devicedirectory](https://docs.scepman.com/es/configuracion-de-scepman/application-settings/scep-endpoints/intune-validation#appconfig-intunevalidation-devicedirectory "mention") que se establezca en **Intune** o **AADAndIntune**)
* `{{AAD_Device_ID}}`: Este identificador es generado y usado por Microsoft Entra ID (Azure AD).

En caso de que ni `CN={{DeviceId}}` ni `CN={{AAD_Device_ID}}` se usen para el campo CN (p. ej. `CN={{DeviceName}})`, SCEPman identificará el dispositivo basándose en el ID de dispositivo de Intune (`(URI)Valor:` `IntuneDeviceId://{{DeviceId}}`) proporcionado en el nombre alternativo del sujeto (SAN).

**Importante:** La elección del campo CN afecta el [comportamiento de revocación automática](https://docs.scepman.com/es/manage-certificates#automatic-revocation) de los certificados emitidos para sus dispositivos administrados por Intune.

Puede agregar otros RDN si es necesario (p. ej.: `CN={{DeviceId}}, O=Contoso, CN={{WiFiMacAddress}}`). Las variables compatibles se enumeran en [la documentación de Microsoft](https://docs.microsoft.com/en-us/mem/intune/protect/certificates-profile-scep#create-a-scep-certificate-profile).

</details>

<details>

<summary>Nombre alternativo del sujeto: <code>(URI)</code>Valor: <code>IntuneDeviceId://{{DeviceId}}</code></summary>

El campo URI es [recomendado por Microsoft](https://techcommunity.microsoft.com/t5/intune-customer-success/new-microsoft-intune-service-for-network-access-control/ba-p/2544696) para que las soluciones NAC identifiquen los dispositivos basándose en su ID de dispositivo de Intune. El valor debe ser:

```
IntuneDeviceId://{{DeviceId}}
```

El **campo URI es obligatorio** en caso de que ni `CN={{DeviceId}}` ni `CN={{AAD_Device_ID}}` se use en el campo **Formato del nombre del sujeto** .

Se pueden agregar otros valores SAN como DNS si es necesario.

</details>

<details>

<summary>Período de validez del certificado: <code>1 año</code></summary>

La cantidad de tiempo restante antes de que expire el certificado. El valor predeterminado es de un año.

SCEPman limita la validez del certificado al máximo configurado en la opción [***AppConfig:ValidityPeriodDays***](https://docs.scepman.com/es/configuracion-de-scepman/application-settings/certificates#appconfig-validityperioddays), pero por lo demás usa la validez configurada en la solicitud.

</details>

<details>

<summary>Proveedor de almacenamiento de claves (KSP): <code>Inscribir en Trusted Platform Module (TPM) KSP, de lo contrario fallar</code></summary>

Esta configuración determina la ubicación de almacenamiento de la clave privada para los certificados de usuario final. El almacenamiento en el TPM es más seguro que el almacenamiento por software porque el TPM proporciona una capa adicional de seguridad para evitar el robo de claves.

Nota: Hay **un error en algunas versiones antiguas del firmware TPM** que invalida algunas firmas creadas con una clave privada respaldada por TPM. En tales casos, el certificado no puede usarse para autenticación EAP, como suele ocurrir en conexiones Wi‑Fi y VPN. Además, esto podría romper su proceso de incorporación de Autopilot.

Las versiones de firmware TPM afectadas incluyen:

* STMicroelectronics: 71.12, 73.4.17568.4452, 71.12.17568.4100, 73.20.17568.6684
* Intel: 11.8.50.3399, 2.0.0.2060
* Infineon: 7.63.3353.0
* IFX: Versión 3.19 / Especificación 1.2
* versión IFX 7.63.3353.0 especificación 2.0

Si usa TPM con este firmware, actualice el firmware a una versión más reciente o seleccione "Software KSP" como proveedor de almacenamiento de claves.

**Actualización:** Puede solucionar el problema del TPM eliminando del registro los algoritmos de firma RSA-PSS, que son los que causan el problema; para obtener más información, consulte [el artículo de Richard Hicks](https://directaccess.richardhicks.com/2023/02/13/always-on-vpn-authentication-failed-reason-code-16/) y [Microsoft Q\&A](https://learn.microsoft.com/en-us/answers/questions/467673/windows-10-tpm-2-0-client-authentication-in-tls-1)

</details>

<details>

<summary>Uso de claves: <code>Firma digital</code> y <code>Cifrado de claves</code></summary>

Active ambas acciones criptográficas.

SCEPman establece automáticamente el uso de claves en **Firma digital** y **Cifrado de claves** y sobrescribe la configuración aquí a menos que la configuración [***AppConfig:UseRequestedKeyUsages***](https://docs.scepman.com/es/configuracion-de-scepman/application-settings/certificates#appconfig-userequestedkeyusages) esté establecida en *true*.

</details>

<details>

<summary>Tamaño de clave (bits): <code>2048</code></summary>

SCEPman admite 2048 bits.

</details>

<details>

<summary>Algoritmo hash: <code>SHA-2</code></summary>

SCEPman admite el algoritmo SHA-2.

</details>

<details>

<summary>Certificado raíz: <code>Perfil del paso anterior (perfil de certificado raíz)</code></summary>

Seleccione el perfil de Intune de [#Certificado raíz](#root-certificate).\
Si está usando una [CA intermedia](https://docs.scepman.com/es/implementacion-de-scepman/intermediate-certificate), debe seleccionar el perfil de certificado de confianza para la CA intermedia, ¡no la CA raíz!

</details>

<details>

<summary>Uso extendido de clave: <code>Autenticación de cliente, 1.3.6.1.5.5.7.3.2</code></summary>

Seleccione **Autenticación de cliente (1.3.6.1.5.5.7.3.2)** en **Valores predefinidos**. Los demás campos se rellenarán automáticamente.

</details>

<details>

<summary>Umbral de renovación (%): <code>20</code></summary>

Este valor define cuándo se permite al dispositivo renovar su certificado (según la vida útil restante de un certificado existente). Lea la nota bajo **Período de validez del certificado** y seleccione un valor adecuado que permita al dispositivo renovar el certificado durante un largo período. Un valor de 20 % permitiría que el dispositivo con un certificado válido por 1 año comience la renovación 73 días antes del vencimiento.

</details>

<details>

<summary>URL del servidor SCEP: Abra el portal de SCEPman y copie la URL de <a href="#device-certificates">Intune MDM</a></summary>

**Ejemplo**

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

</details>

### Ejemplo

<figure><img src="https://4115997120-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FwPUpuqwdzp8vAlWLkK3r%2F2024-03-14%2015_18_35.png?alt=media&#x26;token=89c6fa14-b6b3-4de1-9c17-2acd3fd9f793" alt=""><figcaption></figcaption></figure>

* [ ] Ahora puede implementar este perfil en sus dispositivos. Elija los mismos grupos para la asignación que para el perfil de certificado de confianza.

## Certificados de usuario

Siga las instrucciones de [#Certificados de dispositivo](#device-certificates) y tenga en cuenta las siguientes diferencias:

<details>

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

En esta sección estamos configurando un certificado de usuario.

</details>

<details>

<summary>Formato del nombre del sujeto: <code>CN={{UserName}},E={{EmailAddress}}</code></summary>

Puede definir RDN según sus necesidades. Las variables compatibles se enumeran en [la documentación de Microsoft](https://docs.microsoft.com/en-us/mem/intune/protect/certificates-profile-scep#create-a-scep-certificate-profile). Recomendamos incluir el nombre de usuario (p. ej.: janedoe) y la dirección de correo electrónico (p. ej.: <janedoe@contoso.com>) como configuración base.

</details>

<details>

<summary>Nombre alternativo del sujeto: <code>(UPN)</code>Valor: <code>{{UserPrincipalName}}</code></summary>

Debe agregar el nombre principal de usuario como nombre alternativo del sujeto. **Agregue '{{UserPrincipalName}}' como nombre alternativo del sujeto de tipo Nombre principal de usuario (UPN).** Esto garantiza que SCEPman pueda vincular los certificados a objetos de usuario en AAD. La configuración de 'Formato del nombre del sujeto' es libremente seleccionable.

Se pueden agregar otros valores SAN como una dirección de correo electrónico si es necesario.

</details>

{% hint style="info" %}
Según los comentarios de los clientes, parece que algunos clientes VPN (p. ej., Azure VPN Client for Virtual WAN) no pueden descubrir el certificado de usuario cuando se almacena en el TPM. Intente inscribirlo en el software KSP en su lugar.
{% endhint %}

### Ejemplo

<figure><img src="https://4115997120-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2F2Qqx3ibMVAuFdPwOqjVo%2Fimage.png?alt=media&#x26;token=dc578908-af36-4133-8a26-58dab237016a" alt=""><figcaption></figcaption></figure>

## Certificado de firma digital de usuario

Puede usar SCEPman para firmas digitales **digitales** es decir, para la firma S/MIME en Microsoft Outlook. Si planea usar los certificados para la firma de mensajes, debe agregar los usos extendidos de clave correspondientes en la configuración del perfil de Intune.

{% hint style="warning" %}
**No** use SCEPman **para el cifrado de correo electrónico** es decir, para el cifrado de correo S/MIME en Microsoft Outlook (sin una tecnología independiente para la gestión de claves). La naturaleza de **el protocolo SCEP no incluye un mecanismo para respaldar o archivar material de clave privada.** Si usara SCEP para el cifrado de correo electrónico, podría perder las claves para descifrar los mensajes más adelante.
{% endhint %}

* [ ] Debe establecer estas variables de configuración; de lo contrario, SCEPman no respeta el uso de clave solicitado ni el período de validez ampliado en el perfil SCEP:

- [*`AppConfig:UseRequestedKeyUsages`*](https://docs.scepman.com/es/configuracion-de-scepman/application-settings/certificates#appconfig-userequestedkeyusages) establecido en *`true`*
- [*`AppConfig:ValidityPeriodDays`*](https://docs.scepman.com/es/configuracion-de-scepman/application-settings/certificates#appconfig-validityperioddays) *establecido en `365` (es posible un valor máximo de 1825: 5 años)*

Para implementar certificados de usuario usados para **Firmas digitales** siga las instrucciones de [#Certificados de usuario](#user-certificates) y tenga en cuenta las siguientes diferencias y notas:

<details>

<summary>Nombre alternativo del sujeto</summary>

* **(obligatorio) Nombre principal de usuario (UPN):** *`{{UserPrincipalName}}`*
* **(obligatorio) Dirección de correo electrónico:** *`{{EmailAddress}}`*

Al implementar un certificado de firma digital, debe agregar el UPN y la dirección de correo electrónico.

</details>

<details>

<summary>Uso de clave: solo <code>Firma digital</code></summary>

</details>

<details>

<summary>Uso extendido de clave: <code>Correo seguro (1.3.6.1.5.5.7.3.4)</code></summary>

Seleccione **Correo seguro (1.3.6.1.5.5.7.3.4)** en **Valores predefinidos**. Los demás campos se rellenarán automáticamente.

</details>

<details>

<summary>Umbral de renovación (%): <code>50</code></summary>

Recomendamos establecer el Umbral de renovación (%) en un valor que garantice que los certificados se renueven al menos 6 meses antes de expirar al emitir certificados de firma S/MIME. Esto se debe a que los correos firmados con certificados caducados se muestran en Outlook con firmas no válidas, lo que confunde a los usuarios. Tener un nuevo certificado mucho antes de que expire el anterior garantiza que solo los correos más antiguos muestren este comportamiento, que es menos probable que los usuarios consulten. Por ejemplo, si sus certificados de firma son válidos durante un año, debe establecer el Umbral de renovación en al menos 50 %.

</details>

### **Ejemplo**

<figure><img src="https://4115997120-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FXdXBo3tXxMcWnygAfNG9%2Fimage.png?alt=media&#x26;token=6737119f-3212-4ba8-a026-de0a7ac000fd" alt=""><figcaption></figcaption></figure>

Después de una sincronización correcta del perfil, debería ver el certificado de usuario para Propósitos previstos **Correo seguro**

![](https://4115997120-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-848730ed3fbc1a0b52f8147f6811458980777211%2Fimage%20\(16\).png?alt=media)

El certificado estará disponible para uso de Firma digital, por ejemplo, en Outlook. A continuación se muestra un ejemplo del uso

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

### Activar firmas S/MIME en Outlook

Una vez que haya implementado certificados de firma S/MIME en sus equipos cliente, debe configurar Outlook para usar estos certificados antes de enviar correos firmados.&#x20;

#### Nuevo Outlook

S/MIME para el nuevo Outlook se puede configurar [manualmente](https://support.microsoft.com/en-us/office/set-up-outlook-to-use-s-mime-encryption-2e57e4bd-4cc2-4531-9a39-426e7c873e26#id0ebbf=new_outlook).

#### Outlook clásico

S/MIME para Outlook clásico se puede configurar [manualmente](https://support.microsoft.com/en-us/office/set-up-outlook-to-use-s-mime-encryption-2e57e4bd-4cc2-4531-9a39-426e7c873e26#id0ebbf=newer_versions) o configurarse rápidamente con nuestro [script de PowerShell](https://github.com/glueckkanja-pki/PKI-Configuration-Tools/blob/master/README.md).

#### Outlook en la Web

S/MIME para Outlook en la Web se puede configurar [manualmente](https://support.microsoft.com/en-us/office/set-up-outlook-to-use-s-mime-encryption-2e57e4bd-4cc2-4531-9a39-426e7c873e26#id0ebbf=web) o habilitar mediante PowerShell con el siguiente comando:

```
Set-SmimeConfig -OWAAllowUserChoiceOfSigningCertificate $true
```

Se pueden ver comandos adicionales de PowerShell [aquí](https://learn.microsoft.com/en-us/powershell/module/exchange/set-smimeconfig).
