Sécurité

Sécurité & certificats OPC UA

La sécurité est intégrée à OPC UA, pas rajoutée par-dessus. Une connexion négocie une politique de sécurité et un mode, puis client et serveur s'authentifient mutuellement avec des certificats X.509. Comprendre ces deux notions (modes et confiance) résout la plupart des questions de sécurité et des échecs de connexion.

Les quatre piliers

PilierCe qu'elle protège
ChiffrementConfidentialité: personne ne peut lire le trafic
SignatureIntégrité: les messages ne peuvent pas être altérés
AuthentificationIdentité, de l'application (certificat) et de l'utilisateur
AutorisationDroits: ce qu'un utilisateur authentifié peut faire

Modes de sécurité

  • None, pas de signature ni de chiffrement. Uniquement pour des tests isolés.
  • Sign: les messages sont signés (intégrité + authenticité) mais pas chiffrés.
  • Sign & Encrypt: signé et chiffré. À utiliser en production.

Chaque mode va de pair avec une politique de sécurité (la suite cryptographique, par exemple Basic256Sha256 ou les politiques Aes256 plus récentes). Préférez les politiques modernes et désactivez celles qui sont dépréciées.

Comment fonctionne l'approbation des certificats

Chaque application OPC UA possède son propre certificat d'instance. À la connexion, client et serveur échangent leurs certificats; chacun tient un petit magasin PKI:

pki/
 ├─ own/          # this application's own cert + private key
 ├─ trusted/certs # certificates we trust
 ├─ trusted/crl   # certificate revocation lists
 ├─ issuer/       # CA certs (if using a CA)
 └─ rejected/     # certs seen but not yet trusted
L'échec classique de première connexion:le certificat du pair atterrit dansrejected/. Déplacez-le verstrusted/certsdes deux côtés, puis reconnectez-vous. Cette seule étape résout la plupart des erreurs « BadSecurityChecksFailed ».

Auto-signé vs signé par une CA

Les certificats auto-signés conviennent aux déploiements petits et statiques: vous approuvez chacun d'eux manuellement. Pour un parc, une autorité de certification (ou le GDS OPC UA: Global Discovery Server) met la confiance à l'échelle: vous approuvez l'autorité une fois et tous les certificats qu'elle émet sont approuvés automatiquement.

Authentification utilisateur

L'identité applicative (certificat) est distincte de l'identité utilisateur. Un serveur peut accepter des jetons anonymes, nom d'utilisateur / mot de passe ou certificat utilisateur. Alignez-vous sur ce qu'attend le serveur, et préférez des utilisateurs nommés à l'anonyme en production, pour que les actions soient imputables.

Check-list de durcissement

  1. Utilisez Sign & Encrypt avec une politique moderne; désactivez None et les politiques dépréciées.
  2. Remplacez les certificats par défaut ou auto-signés par des certificats gérés; définissez une expiration sensée et faites la rotation.
  3. Exigez des utilisateurs nommés; désactivez l'anonyme si possible.
  4. Appliquez le moindre privilège: lecture seule sauf si l'écriture est vraiment nécessaire.
  5. Maintenez les CRL à jour; retirez les certificats périmés de trusted/.
  6. Placez OPC UA sur un réseau segmenté; restreignez le port aux clients connus.
  7. Mettez à jour votre pile OPC UA: traitez-la comme n'importe quel autre service en réseau.
Bloqué sur une erreur de handshake en ce moment? Allez àdépannage des connexions.

Dernière mise à jour le 4 septembre 2026 · Ressource pédagogique.

Suite: Outils gratuits & serveurs de test →

Téléchargement gratuit
Check-list de dépannage & d'intégration OPC UA
La checklist éprouvée sur le terrain que les ingénieurs utilisent pour diagnostiquer rapidement les problèmes de certificats, de ports et de namespace, plus un modèle de client Python (asyncua).
Obtenir la checklist gratuite →
Gratuit, sans cours, sans connexion