Intégration de l’API MSCA

Connectez CA-API Proxy Gateway à PKI Trust Manager pour gérer les certificats d’une CA Microsoft.

Ce guide explique comment connecter CA-API Proxy Gateway à PKI Trust Manager afin de gérer les certificats de manière intégrée.


📋 Prérequis#

Avant de commencer l’intégration, vérifiez les points suivants :

Prérequis CA-API Proxy#

  • ✅ CA-API Proxy est installé et en cours d’exécution
  • ✅ Les fichiers de certificat se trouvent dans le dossier ca (cacert.crt, cachain.crt)
  • ✅ Le compte de service dispose des autorisations nécessaires sur la CA
  • ✅ L’application Web est accessible via une URL (par exemple, http://ca-server:9081/)
  • ✅ Les restrictions IP autorisent l’accès depuis le serveur PKI Trust Manager

Prérequis PKI Trust Manager#

  • ✅ PKI Trust Manager est installé et en cours d’exécution
  • ✅ Vous disposez d’un accès administrateur à PKI Trust Manager
  • ✅ La connectivité réseau avec le serveur CA-API Proxy est établie

🚀 Intégration étape par étape#

Étape 1 : accéder à PKI Trust Manager#

  1. Connectez-vous à l’interface Web de PKI Trust Manager.
  2. Accédez à Administration Panel → Integrations.

Étape 2 : ajouter une autorité de certification#

  1. Ouvrez la section Certification Authorities.
  2. Cliquez sur NEW pour créer une intégration de CA.

Étape 3 : configurer la CA#

Renseignez le formulaire Create CA comme suit :

ChampValeur à saisirExemple
CustomerSélectionnez l’organisation à laquelle appartient la CAYour Organization Name
TypeSélectionnez Microsoft ADCS Enterprise CA ou Microsoft Standalone CAMicrosoft ADCS Enterprise CA
NameNom descriptif de la CACorporate SSL CA
API-URLURL complète de CA-API Proxyhttp://ca-server.company.com:9081/
StatusDéfinissez ActiveActive

Détails de configuration

Customer :

  • Sélectionnez une organisation configurée dans la liste déroulante.
  • Ce choix détermine quelle organisation peut utiliser cette CA.
  • Il s’agit généralement du nom de votre entreprise ou organisation.

Type :

  • Microsoft ADCS Enterprise CA : pour les CA intégrées à Active Directory.
  • Microsoft Standalone CA : pour les CA autonomes ou de groupe de travail.
  • Choisissez selon le type de votre CA.

Name :

  • Utilisez un nom descriptif pour faciliter l’identification.
  • Exemples : Corporate Root CA, Internal SSL CA, Code Signing CA.
  • Ce nom apparaîtra dans les listes déroulantes du système.

API-URL :

  • URL HTTP complète de CA-API Proxy.
  • Format : http://[server-name]:[port]/.
  • Port par défaut : 9081.
  • Exemple : http://ca-api.company.com:9081/.

Status :

  • Sélectionnez Active pour activer immédiatement la CA.
  • Sélectionnez Inactive pour la désactiver temporairement.

Étape 4 : tester la connexion#

Après l’enregistrement, PKI Trust Manager effectue automatiquement les opérations suivantes :

  1. Teste la connectivité à API-URL.
  2. Vérifie la récupération du certificat via le point de terminaison /cacert.
  3. Valide les réponses de l’API.
  4. Affiche l’état de connexion.

Étape 5 : configurer les paramètres avancés (facultatif)#

Après la création de la CA, sélectionnez-la pour configurer des paramètres supplémentaires.

Mappage des modèles

Associez les modèles de certificat PKI Trust Manager aux modèles de la CA Microsoft :

  1. Ouvrez l’onglet Templates.
  2. Cliquez sur Add Template Mapping.
  3. Configurez les éléments suivants :
    • PKI Template : sélectionnez un modèle PKI Trust Manager.
    • CA Template : saisissez le nom du modèle Microsoft CA (par exemple, WebServer).
    • Validity : durée de validité par défaut du certificat.
    • Key Usage : restrictions d’utilisation de la clé.

Paramètres de sécurité

  1. Ouvrez l’onglet Security.
  2. Configurez l’authentification si nécessaire :
    • Authentication Type : Windows Authentication.
    • Service Account : Domain\svc-caapi.
    • Credentials : stockez les identifiants de manière sécurisée dans PKI Trust Manager.

✅ Étapes de vérification#

1. Vérifier l’état de l’intégration#

Dans PKI Trust Manager :

  • Accédez à Dashboard → System Health.
  • Vérifiez la section CA Connections.
  • L’état devrait indiquer : ✅ Connected.

2. Tester l’émission d’un certificat#

# Using PKI Trust Manager API or Web Interface
# 1. Request a test certificate
# 2. Select the newly added CA
# 3. Choose a certificate template
# 4. Submit request
# 5. Verify certificate is issued successfully

3. Surveiller l’intégration#

Consultez les emplacements suivants pour vérifier son état :

Journaux PKI Trust Manager

# Application logs
- Check PKI Trust Manager (webUI) docker / container logs

# Audit logs
- Check PKI Trust Manager (webUI) docker / container logs

Journaux CA-API Proxy

# Check application logs
Get-Content "C:\Sites\ca-api-proxy\logs\*.log" -Tail 50 | Select-String "PKI"

🔧 Dépannage des problèmes d’intégration#

Problème 1 : erreur « Connection Failed »#

Symptômes : PKI Trust Manager ne parvient pas à se connecter à CA-API Proxy.

Solutions :

# 1. Check network connectivity
Test-NetConnection -ComputerName "ca-server" -Port 9081
 
# 2. Check IIS is running
Get-Service -Name W3SVC
 
# 3. Check application pool
Get-WebAppPoolState -Name "ca-api-proxy"
 
# 4. Check firewall rules
Get-NetFirewallRule -DisplayName "*9081*" | Format-Table DisplayName, Enabled

Problème 2 : erreur « Certificate Not Found »#

Symptômes : impossible de récupérer le certificat de la CA.

Solutions :

# 1. Verify certificate files exist
Test-Path "C:\Sites\ca-api-proxy\ca\cacert.crt"
 
# 2. Check file permissions
icacls "C:\Sites\ca-api-proxy\ca\cacert.crt"
 
# 3. Test endpoint manually
curl http://ca-server:9081/cacert

Problème 4 : erreur « Template Not Available »#

Symptômes : les modèles de certificat ne s’affichent pas dans PKI Trust Manager.

Solutions :

# 1. Check CA template permissions
certutil -template
 
# 2. Verify service account has template access
# 3. Check PKI Trust Manager template mappings

🔐 Configuration de sécurité#

1. Communications sécurisées#

Recommandation : utilisez HTTPS pour CA-API Proxy.

# Add SSL certificate to IIS
# 1. Obtain SSL certificate
# 2. Bind HTTPS to port 443
# 3. Update PKI Trust Manager API-URL to https://

2. Bonnes pratiques de restriction IP#

# Restrict to PKI Trust Manager IP only
Add-WebConfigurationProperty `
    -Filter "/system.webServer/security/ipSecurity" `
    -Name "." `
    -Value @{ipAddress="192.168.1.100";subnetMask="255.255.255.255";allowed="true"}

📊 Surveillance de l’intégration#

Indicateurs du tableau de bord PKI Trust Manager#

Après l’intégration, surveillez les indicateurs suivants :

  1. État de connexion CA : devrait indiquer « ACTIVE ».
  2. Taux d’émission de certificats : surveillez les demandes réussies et échouées.
  3. Temps de réponse : délais de réponse de l’API CA-API Proxy.
  4. Taux d’erreur : demandes de certificats échouées.

Configuration des alertes#

Configurez des alertes pour :

  • La perte de connectivité avec la CA.
  • Un taux élevé d’échec des certificats.
  • Des temps de réponse lents de l’API.
  • Les échecs d’authentification.

🔄 Procédures de maintenance#

Tâches de maintenance régulières#

Chaque semaine

  1. Recherchez les erreurs dans les journaux d’intégration.
  2. Vérifiez la disponibilité des modèles de certificat.
  3. Testez le processus d’émission des certificats.

Chaque mois

  1. Révisez les autorisations de sécurité.
  2. Mettez à jour le certificat de la CA s’il a été renouvelé.
  3. Sauvegardez la configuration.

Chaque trimestre

  1. Révisez et mettez à jour les mappages de modèles.
  2. Testez les procédures de reprise après sinistre.
  3. Mettez à jour les composants logiciels.

Mettre à jour le certificat de CA#

Lors du renouvellement du certificat de la CA :

  1. Mettre à jour CA-API Proxy :
# Export new certificate to ca folder
certutil -ca.cert "C:\Sites\ca-api-proxy\ca\cacert.crt"
 
# Update chain file
# ... generate new cachain.crt ...
 
# Restart application pool
Restart-WebAppPool -Name "ca-api-proxy"
  1. Mettre à jour PKI Trust Manager :
    • Le certificat de la CA sera automatiquement mis à jour via l’API.
    • Vérifiez que le nouveau certificat apparaît dans PKI Trust Manager.

🎯 Bonnes pratiques#

1. Conventions de nommage#

  • Utilisez un format cohérent : [Location]-[Purpose]-CA.
  • Exemples : US-East-SSL-CA, EU-CodeSign-CA.

2. Documentation#

  • Documentez les détails de la CA : serveur, version et modèles.
  • Conservez les identifiants du compte de service.
  • Documentez les dates de renouvellement des certificats.

3. Tests#

  • Testez régulièrement l’intégration.
  • Testez chaque mois l’émission de certificats.
  • Validez les procédures de sauvegarde et de restauration.

4. Sécurité#

  • Révisez régulièrement les autorisations.
  • Surveillez les journaux d’accès.
  • Appliquez le principe du moindre privilège.

📞 Ressources d’assistance#

Liste de contrôle de dépannage#

- [ ] Network connectivity between servers
- [ ] Firewall ports open (9081 or 443 or 80)
- [ ] IIS running and application pool started
- [ ] Certificate files in ca folder
- [ ] Service account permissions
- [ ] CA configuration string correct
- [ ] PKI Trust Manager CA configuration
- [ ] Template mappings configured

Contacter l’assistance#

Recueillir les informations de diagnostic#

# Gather troubleshooting data
$debugInfo = @{
    "PKI_Server" = $env:COMPUTERNAME
    "CA_API_URL" = "http://ca-server:9081/"
    "Connection_Test" = Test-NetConnection -ComputerName "ca-server" -Port 9081
    "IIS_Status" = Get-Service -Name W3SVC
    "CA_Cert_Exists" = Test-Path "C:\Sites\ca-api-proxy\ca\cacert.crt"
}
 
$debugInfo | ConvertTo-Json | Out-File "debug-info.json"

🏁 Liste de vérification finale#

Après l’intégration, vérifiez les éléments suivants :

  • La CA figure dans la liste des CA de PKI Trust Manager.
  • Son état indique « Active ».
  • L’émission d’un certificat de test fonctionne.
  • Les modèles de certificat sont disponibles.
  • Les journaux indiquent des connexions réussies.
  • Les alertes de surveillance sont configurées.

Durée d’intégration : ~15-30 minutes
Durée des tests : ~30 minutes
Documentation : mettez à jour le wiki interne avec les détails de la CA.

Étapes suivantes :

  1. Configurez les modèles de certificat.
  2. Configurez l’émission automatisée des certificats.
  3. Formez les utilisateurs au processus de demande de certificat.
  4. Mettez en place la surveillance et les alertes.