Configuration générale

Pour permettre à SCEPman de traiter correctement les requêtes SOAP entrantes, nous devons suivre quelques étapes :

1

Domaine personnalisé et BaseUrl

Pour une authentification réussie avec SCEPman, assurez-vous qu’un domaine personnalisé utilisant un enregistrement A pointe vers l’App Service. Sinon, le client ne parviendra pas à demander un ticket Kerberos valide au contrôleur de domaine.

circle-info

Le domaine personnalisé n’a pas besoin de ressembler au FQDN de votre domaine AD. Ainsi, avoir un domaine ad.contoso.local ne signifie pas que vous devez utiliser un domaine personnalisé identique ou similaire pour SCEPman.

Voir ci-dessous le problème connu concernant WS_E_ENDPOINT_ACCESS_DENIED pour plus d’informations à ce sujet.

Assurez-vous que SCEPman est configuré pour être accessible à l’aide d’un domaine personnalisé :

domaine personnaliséchevron-right

La même exigence s’applique également après la demande initiale de stratégie (liste des modèles de certificats) pour l’inscription des certificats. Pour permettre des authentifications réussies, assurez-vous que la AppConfig:BaseUrl variable correspond à votre domaine personnalisé ou utilisez le AppConfig:ActiveDirectory:BaseUrl paramètre dédié si vous préférez accéder au point de terminaison AD via une URL différente de vos autres points de terminaison SCEPman.

2

Créer un principal de service

Utilisez l’indicateur New-SCEPmanADPrincipal Cmdlet du module PowerShell SCEPman pour créer le principal de service dans votre domaine Active Directory local. Il exportera également un keytab à partir de ce compte et le chiffrera avec le certificat CA de SCEPman.

Vous pouvez exécuter cette commande sur un contrôleur de domaine ou sur un serveur joint au domaine qui a installé le RSAT-AD-Tools fonctionnalité. Vous aurez également besoin des autorisations suivantes dans l’OU dans laquelle vous souhaitez créer le principal :

Sur l’OU elle-même :

  • Créer des objets ordinateur

Sur les objets ordinateur descendants :

  • Réinitialiser le mot de passe

  • Écrire msDS-SupportedEncryptionTypes

  • Écrire servicePrincipalName

  • Écrire userPrincipalName

La variante ci-dessous nécessite également un accès réseau HTTPS sortant vers votre instance SCEPman.

circle-info

Si votre ordinateur ayant accès à un contrôleur de domaine n’a pas d’accès réseau, il existe des variantes de la CMDlet qui fonctionnent sans, mais elles nécessitent une préparation supplémentaire, comme le téléchargement du certificat CA de SCEPman et la copie de la CA sur la machine qui exécute la CMDlet.

L’exécution de cette commande effectuera les actions suivantes :

  1. Créer un objet ordinateur dans l’ OU=Example,DC=contoso,DC=com unité d’organisation.

  2. Télécharger le certificat CA de SCEPman pour chiffrer le keytab à l’étape 5.

  3. Ajouter un nom de principal de service (SPN) à l’objet ordinateur.

  4. Créer un keytab pour le compte ordinateur contenant la clé de chiffrement basée sur le mot de passe de l’ordinateur.

  5. Chiffrer le keytab avec le certificat CA de SCEPman, afin que seul SCEPman puisse le déchiffrer à nouveau à l’aide de la clé privée de la CA.

  6. Produire le keytab chiffré, afin qu’il puisse être transféré à la configuration de SCEPman.

La sortie encodée en Base64 doit ensuite être ajoutée à la variable d’environnement AppConfig:ActiveDirectory:Keytab de votre App Service SCEPman.

3

Ajouter le keytab à SCEPman

L’intégration peut être facilement activée en ajoutant les variables d’environnement suivantes dans l’ App Service SCEPman. Selon votre cas d’utilisation, activez un ou plusieurs des modèles de certificats disponibles :

Exemple avec tous les modèles de certificats activés :

Paramètre
Valeur

AppConfig:ActiveDirectory:Keytab

Keytab encodé en Base64 pour le principal de service créé à l’étape 1

AppConfig:ActiveDirectory:Computer:Enabled

true

AppConfig:ActiveDirectory:User:Enabled

true

AppConfig:ActiveDirectory:DC:Enabled

true

Problèmes connus

WS_E_ENDPOINT_ACCESS_DENIED

Erreur : WS_E_ENDPOINT_ACCESS_DENIED 
Hex : 0x803d0005
Déc : -2143485947

Cette erreur est connue pour se produire lors de la validation du serveur CEP lorsque vous utilisez les par défaut URI de l’Azure App Service. Cette erreur est causée par le protocole Kerberos qui demande un nom de principal de service correspondant à l’enregistrement A du service auquel on souhaite accéder. Dans le cas des domaines App Service par défaut, par exemple contoso.azurewebsites.net n’est qu’un CNAME et pointe vers un enregistrement A similaire à :

waws-prod-ab1-234-c56d.westeurope.cloudapp.azure.com

Comme cet enregistrement A d’un hôte d’infrastructure n’est pas garanti d’être cohérent à l’avenir, l’ajout d’un nom de principal de service pour cet hôte est non recommandé.

Assurez-vous d’ajouter un domaine personnalisé à votre App Service et d’utiliser un enregistrement A chez votre fournisseur DNS pour y pointer l’App Service au lieu d’un CNAME.

domaine personnaliséchevron-right

ERROR_INVALID_PARAMETER

Erreur : ERROR_INVALID_PARAMETER
Hex : 0x80070057
Déc : -2147024809

Cette erreur se produit lors de l’enregistrement du serveur CEP si vous saisissez une URI qui commence par http://. Assurez-vous d’enregistrer un serveur CEP uniquement en utilisant https://

ERROR_ACCESS_DENIED

Lors de l’enregistrement d’un serveur CEP dans le contexte de la machine, l’utilisateur agissant (le compte qui a lancé gpmc.msc) doit être membre du groupe local Administrateurs sur l’ordinateur pendant la modification de la GPO.

Assurez-vous de lancer gpmc.msc avec des privilèges élevés dans ce cas.

Mis à jour

Ce contenu vous a-t-il été utile ?