# CA intermédiaire

{% hint style="warning" %}
Édition SCEPman Enterprise uniquement
{% endhint %}

Si vous souhaitez utiliser un autre Root CA comme autorité principale, vous pouvez créer un certificat CA intermédiaire pour exploiter SCEPman en tant qu’autorité de certification subordonnée. Vous pouvez créer le certificat approprié directement dans Azure Key Vault et télécharger le CSR pour le faire signer par votre Root CA. La demande signée peut être téléversée et fusionnée dans Azure Key Vault. Cet article vous guide en détail à travers les étapes nécessaires.

## Autorisations Key Vault

Vous devez accorder l’accès à Azure Key Vault à votre compte utilisateur pour créer le CSR et fusionner le certificat CA intermédiaire. La manière d’attribuer les autorisations dépend de la configuration d’accès de votre Key Vault :

{% tabs %}
{% tab title="Azure RBAC" %}

1. Accédez à votre Azure Key Vault dans le Azure Portal
2. Cliquez sur **Contrôle d’accès (IAM)** dans le volet de navigation gauche.
3. Cliquez sur **Attributions de rôles** et ajoutez une nouvelle attribution de rôle

<figure><img src="/files/7cde3495fa291242e407370070ae37f910454dd1" alt=""><figcaption><p>Ajouter une nouvelle attribution de rôle à votre Key Vault</p></figcaption></figure>

4. Sélectionnez le **Key Vault Certificate Officer** rôle puis cliquez sur **Suivant**

<figure><img src="/files/b5d652e72abc0da3871d14c2ad107450bd11cee4" alt=""><figcaption></figcaption></figure>

5. Recherchez et ajoutez maintenant votre compte administrateur AAD dans la **Membres** section, puis continuez pour attribuer le rôle

Après avoir ajouté l’attribution de rôle, votre compte Azure AD est autorisé à créer un CSR et à téléverser le certificat.
{% endtab %}

{% tab title="Stratégies d’accès du coffre" %}

1. Accédez à votre Azure Key Vault dans le Azure Portal
2. Cliquez sur **stratégies d’accès** dans le volet de navigation gauche.
3. Cliquez sur **Créer** et choisissez le **Gestion des certificats** modèle, puis suivant

<figure><img src="/files/f499741485fde37c42f4c430024bc20d2ad2a9b4" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/5a73e93b1f5a8ebca84e5570d38627cdba7e3a3c" alt=""><figcaption></figcaption></figure>

4. Recherchez et ajoutez maintenant votre compte administrateur AAD dans la **Principal** section, puis suivant, suivant, et créer

<figure><img src="/files/ec11aed3b17a40efd7f48a6467e793937f98fe18" alt=""><figcaption></figcaption></figure>

Après avoir ajouté les autorisations, votre compte Azure AD est autorisé à créer un CSR et à téléverser le certificat.
{% endtab %}
{% endtabs %}

## Ouvrir le réseau Key Vault pour le système d’administration

Si vous utilisez un [Private Endpoint](/fr/configuration-azure/private-endpoints.md) pour Key Vault, vous devez ajouter une exception qui autorise le client à accéder au Key Vault au niveau réseau. Si vous n’utilisez pas de Private Endpoint, vous pouvez ignorer cette partie.

* Rendez-vous sur Azure Key Vault dans le Azure Portal.
* Accédez à la lame Networking sous Settings.
* Passez à « Autoriser l’accès public depuis des réseaux virtuels et des adresses IP spécifiques » si vous avez actuellement sélectionné « Désactiver l’accès public ».
* Ajoutez l’adresse IP du client sur lequel vous souhaitez [exécuter plus tard le module PowerShell SCEPman](#creating-intermediate-ca-certificate-with-the-scepman-powershell-module). Si vous utilisez Azure Cloud Shell et [qu’il est connecté à un VNET](https://learn.microsoft.com/en-us/azure/cloud-shell/vnet/overview), vous pouvez ajouter ce VNET. Sinon, la manière la plus simple consiste à autoriser temporairement l’adresse IP publique de Cloud Shell, car l’authentification forte protège votre Key Vault. Vous pouvez utiliser une commande telle que `(Invoke-WebRequest -UseBasicParsing -uri "http://ifconfig.me/ip").Content` pour trouver l’adresse IP publique de la session.

## Mettre à jour les paramètres du service d’application Azure

L’étape suivante consiste à mettre à jour la configuration de Azure App Service afin qu’elle corresponde au nom de sujet de l’autorité de certification intermédiaire que vous allez créer à l’étape suivante.

1. Accédez à votre Azure App Service
2. Cliquez sur **Environment variables** dans le volet de navigation gauche
3. Dans **Paramètres de l’application,** vous devez modifier les paramètres suivants :
   1. `AppConfig:KeyVaultConfig:RootCertificateConfig:CertificateName`\
      Modifiez ceci pour un nom commun (CN) préféré pour votre autorité de certification intermédiaire.
   2. `AppConfig:KeyVaultConfig:RootCertificateConfig:Subject`\
      Modifiez uniquement la valeur CN du nom de sujet pour qu’elle corresponde au nom commun utilisé ci-dessus.
4. Cliquez sur **Appliquer et confirmer.**
5. Redémarrez le Azure **App Service** pour appliquer les changements, puis accédez à votre URL SCEPman.

{% hint style="warning" %}
Veuillez noter que la variable CertificateName correspondra directement à l’objet certificat qui sera créé dans Azure Key Vault. Vous ne pouvez donc utiliser que des noms de certificat contenant des caractères alphanumériques et des tirets&#x20;
{% endhint %}

<figure><img src="/files/cb39bc6077a0794435b3e9bddd17e115886cb746" alt=""><figcaption></figcaption></figure>

## Création d’un certificat CA intermédiaire avec le module PowerShell SCEPman

{% hint style="warning" %}
Pour garantir le bon fonctionnement de ce module, vous aurez besoin d’un poste de travail avec [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) (également appelé `az`) installé. Azure CLI est préinstallé dans le [Azure Cloud Shell](https://docs.microsoft.com/en-us/azure/cloud-shell/overview), qui est l’environnement recommandé pour exécuter ce module.
{% endhint %}

Vous pouvez utiliser le module PowerShell SCEPman version 1.9 et ultérieure pour créer un CSR pour un certificat CA intermédiaire. Vous pouvez installer la dernière version du module depuis PowerShell Gallery avec la commande suivante :

```powershell
Install-Module -Name SCEPman -Scope CurrentUser -Force
```

Ensuite, vous pouvez indiquer au module le nom de votre organisation à faire apparaître dans le certificat :

```powershell
Reset-IntermediateCaPolicy -Organization "My Organization"
```

Configurez le sujet de votre autorité de certification intermédiaire pour qu’il corresponde à celui que vous avez utilisé ci-dessus dans `AppConfig:KeyVaultConfig:RootCertificateConfig:Subject` (vous pouvez éventuellement modifier certains paramètres supplémentaires pour contrôler le contenu du CSR) :

{% code lineNumbers="true" %}

```
$policy = Get-IntermediateCaPolicy
$policy.policy.x509_props.subject = "CN=YOUR_CN_FROM_ABOVE,OU=YOUR_TENANT_ID,O=YOUR_ORGANIZATION"
# modifier certains paramètres supplémentaires de $policy
Set-IntermediateCaPolicy -Policy $policy
```

{% endcode %}

Enfin, vous pouvez créer le CSR avec la commande suivante (ou une commande similaire selon votre environnement) :

```powershell
New-IntermediateCA -SCEPmanAppServiceName "app-scepman-example" -SearchAllSubscriptions 6>&1
```

La commande produira le CSR que vous soumettez à votre Root CA pour signature.

## Émettre le certificat CA intermédiaire

Soumettez maintenant votre CSR à votre Root CA et récupérez le certificat CA intermédiaire émis. Enregistrez le certificat sur le disque (.cer), afin de pouvoir, à l’étape suivante, le téléverser et le fusionner avec la clé privée dans Azure Key Vault.

### Étapes particulières pour une ADCS Enterprise Root CA

Si vous utilisez Active Directory Certificate Services comme Root CA intégrée à Active Directory et devez donc choisir un modèle de certificat, celui-ci doit inclure les Key Usages suivants : « CRLSign », « DigitalSignature », « KeyEncipherment » et « KeyCertSign ». KeyEncipherment est absent du modèle par défaut « Subordinate Certificate Authority » et ne peut en outre pas être sélectionné dans les nouveaux modèles. Veuillez consulter ci-dessous pour une solution si vous rencontrez ce problème. **Cela ne s’applique pas aux Root CAs autonomes**, aussi appelées Offline Root CAs, car elles reprennent correctement les Key Usages à partir du CSR.

#### Vue d’ensemble

Vous pouvez dupliquer le modèle SubCA ou l’utiliser selon les besoins. Ensuite, vous émettez simplement un certificat avec le modèle basé sur le CSR. Ce certificat aura *le mauvais Key Usage* (0x86). Ensuite, vous resignez le certificat avec une extension Key Usage adaptée en utilisant `certutil -sign`.

#### Étape par étape

1. Demandez et émettez un certificat SubCA.
2. Exportez le nouveau certificat SubCA vers un fichier (par ex. c:\temp\SubCA.cer) sur la Root CA. Choisissez **X.509 encodé en Base-64** format.
3. Créez un fichier « extfile.txt » avec le contenu indiqué ci-dessous sur la Root CA (par ex. c:\temp\extfile.txt).
4. Ouvrez la ligne de commande et exécutez : `certutil -sign "c:\temp\SubCA.cer" "c:\temp\SubCAwithKeyEncipher.cer" @c:\temp\extfile.txt`
5. Le certificat SubCAwithKeyEncipher.cer contient maintenant l’utilisation de clé demandée (0xA6). L’empreinte numérique (signature) a changé, mais pas le numéro de série.
6. La liste des certificats émis dans ADCS contient l’ancien certificat. Comme le numéro de série n’a pas changé, vous pouvez gérer le nouveau certificat à l’aide de l’ancien descripteur ; par exemple, la révocation de l’ancien certificat révoquera le nouveau certificat. Si cela ne vous convient pas, vous pouvez supprimer l’entrée de l’ancien certificat à l’aide de `certutil -deleterow` puis importer le nouveau certificat à l’aide de `certutil -importcert`.

#### extfile.txt

```
[Extensions]
2.5.29.15=AwIBpg==
Critical=2.5.29.15
```

## Téléverser le certificat CA intermédiaire

1. Dans Azure Key Vault, cliquez sur votre certificat et appuyez sur **Certificate Operation**
2. Vous pouvez maintenant voir les options **Download CSR** et **Merge Signed Request**

![](/files/bfa601ecf2497317fce0b18cb1dfcf9377ee700c)

1. Cliquez sur **Merge Signed Request** et téléversez votre certificat CA intermédiaire. Après avoir téléversé la demande signée, vous pouvez voir le certificat valide dans votre Azure Key Vault dans la zone **Completed**

{% hint style="warning" %}
Le certificat CA intermédiaire doit être au format PEM (encodé en Base64). Si vous utilisez le format binaire DER, vous verrez un message d’erreur indiquant « Property x5c has invalid value X5C must have at least one valid item » dans les détails.
{% endhint %}

## Vérifier l’adéquation de l’AC

Sur la page d’état de SCEPman, vous pouvez voir la nouvelle configuration et télécharger le nouveau certificat CA intermédiaire pour le déployer via Endpoint Manager.

Veuillez vérifier si le certificat CA répond à toutes les exigences en visitant votre page d’accueil SCEPman. Vérifiez ce qui est indiqué sur la page d’accueil à côté de « CA Suitability ». Si, par exemple, il est indiqué *Le certificat CA est dépourvu de l’utilisation de clé « Key Encipherment »*, vous devez revenir à l’étape [Émettre le certificat CA intermédiaire](#issue-the-intermediate-ca-certificate) et corriger l’émission du certificat.

## CA intermédiaires et profils Intune SCEP

Sur la plateforme Android, les profils de configuration SCEP dans Intune doivent faire référence à la Root CA, et non à la CA intermédiaire. Sinon, le profil de configuration échoue. Pour Windows, c’est l’inverse : les profils de configuration SCEP dans Intune doivent faire référence à la CA intermédiaire, et non à la Root CA. Pour iOS et macOS, nous n’avons pas d’informations concluantes permettant de dire si l’une ou l’autre méthode est préférable.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.scepman.com/fr/deploiement-scepman/intermediate-certificate.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
