OPC UA
The Corsha Gatekeeper provides MFA protection for OPC UA TCP connections in proxy mode deployments.
How Corsha Enhances OPC UA Security
Standard OPC UA over TCP supports optional user authentication using static credentials such as:
- Username/password pairs
- X.509 v3 Certificates
- JSON Web Tokens (JWTs)
Once stolen, these long-lived credentials allow unauthorized access for the entire credential lifetime, exposing industrial control systems to security breaches.
Corsha adds an additional factor of security, rendering stolen credentials useless. The Corsha Gatekeeper injects and validates short-lived, one-time-use MFA credentials directly into the OPC UA protocol handshake.
How It Works
- Session Establishment: When an OPC UA client initiates a connection, it first connects to the Corsha Authenticator
- Credential Injection: The Authenticator obtains a short-lived MFA credential and embeds it into the OPC UA session handshake
- Connection to Gatekeeper: The authenticated OPC UA request is forwarded to the Corsha Gatekeeper protecting the OPC UA server
- Credential Validation: The Corsha Gatekeeper extracts and validates the MFA credential
- Server Access: Only requests with valid MFA credentials reach the protected OPC UA server
Without an unused, valid Corsha credential embedded in the OPC UA handshake, the connection is blocked by the Corsha Gatekeeper before reaching the server.
Key Features
- Client-Side Protection: Authenticators deployed alongside OPC UA clients inject credentials transparently
- Server-Side Enforcement: Corsha Gatekeepers validate credentials before forwarding traffic
- No Application Changes: OPC UA client and server applications require no modifications
Deployment Guides
For step-by-step deployment instructions:
Configuration
OPC UA support is configured in the Gatekeeper configuration file:
opcUaTcp:
listenPort: 4840
upstream:
host: "opcua-server.local"
port: 4840
protocol: OPCUATCP
For complete configuration reference, see the Gatekeeper Docker Configuration Values or Helm Chart Values documentation.
Next Steps
For information about other supported protocols, see Modbus TCP.