> For the complete documentation index, see [llms.txt](https://docs.scepman.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.scepman.com/fr/deploiement-scepman/intermediate-certificate.md).

# AC intermédiaire

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

Si vous souhaitez utiliser une autre AC racine comme autorité principale, vous pouvez créer un certificat d’AC intermédiaire pour faire fonctionner SCEPman en tant qu’autorité de certification subordonnée. Vous pouvez créer directement le certificat approprié dans Azure Key Vault et télécharger la CSR pour la faire signer par votre AC racine. 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 à votre compte utilisateur l’accès à Azure Key Vault afin de créer la CSR et de fusionner le certificat d’AC 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 l'Azure Portal
2. Cliquez sur **Contrôle d’accès (IAM)** dans le volet de navigation de gauche.
3. Cliquez sur **Attributions de rôles** et ajoutez une nouvelle attribution de rôle

<figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FZUqsPTRdUk5IhmZZlBVD%2Fimage.png?alt=media&amp;token=325c2296-4f6b-476d-b003-29cf3674556f" alt=""><figcaption><p>Ajoutez une nouvelle attribution de rôle à votre Key Vault</p></figcaption></figure>

4. Sélectionnez le **Responsable des certificats Key Vault** rôle, puis cliquez sur **Suivant**

<figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FptcaAY0strUu3qIgkTdc%2Fimage.png?alt=media&amp;token=6bf4adc2-da77-4ece-ba68-09c61fc6905e" alt=""><figcaption></figcaption></figure>

5. Recherchez maintenant et ajoutez votre compte d’administrateur AAD dans la **section Membres** et poursuivez l’attribution du rôle

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

{% tab title="Politiques d’accès du coffre" %}

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

<figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FD2mWeiZ7YnQuRN0rdypW%2F2023-06-14%2016_20_43-IntermediateCert.png?alt=media&amp;token=da6b385e-8902-4b53-8a9f-25f3573d6532" alt=""><figcaption></figcaption></figure>

<figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2F37QHfqcQRHNboM4yQkTb%2F2023-06-14%2016_23_37-IntermediateCert.png?alt=media&amp;token=3cc22a95-8f13-4487-b270-083efa2779bd" alt=""><figcaption></figcaption></figure>

4. Recherchez maintenant et ajoutez votre compte d’administrateur AAD dans la **Principal** section, puis Suivant, Suivant et Créer

<figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FIj3S2D7wkNquLnBJSUQe%2F2023-06-14%2017_06_33-.png?alt=media&amp;token=195c03cb-a120-434b-8aa1-c44d4b2d26f6" alt=""><figcaption></figcaption></figure>

Après avoir ajouté les autorisations, votre compte Azure AD est autorisé à créer une 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 [point de terminaison privé](/fr/configuration-azure/private-endpoints.md) pour Key Vault, vous devez ajouter une exception qui permet au client d’accéder à Key Vault au niveau du réseau. Si vous n’utilisez pas de point de terminaison privé, vous pouvez ignorer cette partie.

* Accédez à votre Azure Key Vault dans l'Azure Portal.
* Ouvrez le volet Réseau sous Paramètres.
* Passez à « Autoriser l’accès public à partir de réseaux virtuels et d’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 solution 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 comme `(Invoke-WebRequest -UseBasicParsing -uri "http://ifconfig.me/ip").Content` pour trouver l’adresse IP publique de la session.

## Mettre à jour les paramètres Azure App Service

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

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

{% hint style="warning" %}
Veuillez noter que la variable CertificateName correspondra directement à l’objet de 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
{% endhint %}

<figure><img src="https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FvO2YgKtltBesm2Eme7ix%2Fimage.png?alt=media&amp;token=9ec3f21e-b6eb-47c5-8e10-3e2cbe519669" alt=""><figcaption></figcaption></figure>

## Création d’un certificat d’AC 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 connu sous le nom de `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 la version 1.9 et ultérieure du module PowerShell SCEPman pour créer une CSR pour un certificat d’AC 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 AC intermédiaire pour qu’il corresponde à celui que vous avez utilisé ci-dessus dans `AppConfig:KeyVaultConfig:RootCertificateConfig:Subject` (facultativement, vous pouvez modifier certains paramètres supplémentaires pour contrôler le contenu de la 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 la CSR avec la commande suivante (ou une commande similaire selon votre environnement) :

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

La commande affichera la CSR que vous soumettez à votre AC racine pour signature.

## Émettre le certificat d’AC intermédiaire

Soumettez maintenant votre CSR à votre AC racine et récupérez le certificat d’AC 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 AC racine d’entreprise ADCS

Si vous utilisez Active Directory Certificate Services comme AC racine intégrée à AD et que vous devez donc choisir un modèle de certificat, celui-ci doit inclure les utilisations de clé suivantes : « 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é sur les nouveaux modèles. Veuillez voir ci-dessous pour une solution si vous rencontrez ce problème. **Cela ne s’applique pas aux AC racines autonomes**, également appelées AC racines hors ligne, car elles reprennent correctement les utilisations de clé à partir de la CSR.

#### Plan

Vous pouvez dupliquer le modèle SubCA ou l’utiliser selon vos besoins. Ensuite, il vous suffit d’émettre un certificat avec le modèle basé sur la CSR. Ce certificat aura *la mauvaise utilisation de clé* (0x86). Ensuite, vous re-signez le certificat avec une extension d’utilisation de clé adaptée à l’aide de `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 l’AC racine. Choisissez **X.509 encodé en Base64** format.
3. Créez un fichier « extfile.txt » avec le contenu affiché ci-dessous sur l’AC racine (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 vous dérange, 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 d’AC intermédiaire

1. Dans Azure Key Vault, cliquez sur votre certificat et appuyez sur **Opération de certificat**
2. Vous pouvez maintenant voir les options **Télécharger la CSR** et **Fusionner la demande signée**

![](https://129332256-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-9b845d790796a34cb0e9296434373a502ddfee92%2Fscreenshot-2020-10-19-at-16.01.18%20\(1\)%20\(2\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(1\)%20\(3\).png?alt=media)

1. Cliquez sur **Fusionner la demande signée** et téléversez votre certificat d’AC 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 **Terminé**

{% hint style="warning" %}
Le certificat d’AC 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 SCEPman, vous pouvez voir la nouvelle configuration et télécharger le nouveau certificat d’AC intermédiaire afin de le déployer via Endpoint Manager.

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

## AC intermédiaires et profils SCEP Intune

Sur la plateforme Android, les profils de configuration SCEP dans Intune doivent faire référence à l’AC racine, et non à l’AC 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 à l’AC intermédiaire, et non à l’AC racine. Pour iOS et macOS, nous n’avons pas d’informations concluantes pour déterminer si l’une ou l’autre approche est préférable.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

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

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
