Zum Hauptinhalt springen

Zertifikats-Monitoring

Die Monitoring-Endpoints stellen eine Live-Verbindung zum Zielgerät her und lesen Zertifikatsinformationen, Trust Lists und Gerätemetadaten direkt aus. Im Unterschied zum Inventar, das zwischengespeicherte Daten zurückgibt, wird bei jedem Aufruf eine aktive OPC UA Verbindung aufgebaut.

hinweis

Die Monitoring-Endpoints bauen eine Live-Verbindung zum Zielgerät auf. Stellen Sie sicher, dass das Zielgerät vom IDIAL-Container aus erreichbar ist, bevor Sie diese Endpoints aufrufen.

POST /gds/monitor/crt

Verbindet sich mit einem entfernten OPC UA Server, liest dessen aktuelles Anwendungszertifikat aus und speichert das Ergebnis im Inventar. Optional wird die vollständige X.509-Textdarstellung zurückgegeben und ein Fingerabdruck berechnet.

Authentifizierung: X-API-Key erforderlich

Anfrage

curl -X POST http://localhost:5000/gds/monitor/crt \
-H "X-API-Key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"server": "192.168.1.10",
"port": 4840,
"x509": false,
"fingerprint": "sha1",
"connection_security": false,
"disable_crl_check": false
}'

Anfragefelder

FeldTypPflichtStandardBeschreibung
serverstringJaIP-Adresse oder DNS-Hostname des OPC UA Servers.
portstringNein"4840"OPC UA Portnummer.
x509booleanNeinfalseMenschenlesbare X.509-Zertifikatstextdarstellung in der Antwort einschließen.
fingerprintstringNeinFingerabdruck des Gerätezertifikats berechnen. Unterstützter Wert: "sha1".
connection_securitybooleanNeinfalseGesicherten Verbindungsmodus für die OPC UA Kommunikation aktivieren.
disable_crl_checkbooleanNeinfalseCRL-Prüfung beim Verbindungsaufbau überspringen.

Antwort 200

{
"url": "opc.tcp://192.168.1.10:4840",
"fingerprint": "A1:B2:C3:D4:E5:F6:78:90:12:34:56:78:90:AB:CD:EF:12:34:56:78",
"x509": "Certificate:\n Data:\n ...",
"security_policy": 8,
"security_mode": 2
}

Antwortfelder

FeldTypBeschreibung
urlstringOPC UA Verbindungs-URL. Nur vorhanden, wenn das Gerät im Inventar eingetragen ist.
fingerprintstringZertifikats-Fingerabdruck in Doppelpunkt-getrennter Hex-Darstellung. Nur vorhanden, wenn fingerprint im Request angegeben wurde.
x509stringMenschenlesbare Zertifikatsdetails. Nur vorhanden, wenn x509: true gesetzt wurde.
security_policyintegerAusgehandelte OPC UA Security-Policy-Bitmaske. Siehe Parameter-Referenz.
security_modeintegerAusgehandelter OPC UA Security Mode. Siehe Parameter-Referenz.

Antwort 500

{"error": "string"}

GET /gds/monitor/crt/{host_or_url}

Liest das Zertifikat eines GDS-Inventareintrags anhand von Host oder URL. Entspricht POST /gds/monitor/crt, verwendet jedoch die im Inventar gespeicherten Zugangsdaten.

Authentifizierung: X-API-Key erforderlich

Pfadparameter

ParameterBeschreibung
host_or_urlIP-Adresse, Hostname oder OPC UA URL eines Inventareintrags.

Antwort 200

Format entspricht POST /gds/monitor/crt.


POST /gds/inventory/crt

Gibt Zertifikatsdetails für einen GDS-Inventareintrag anhand von Body-Parametern zurück.

Authentifizierung: X-API-Key erforderlich

hinweis

Dieser Endpoint ist veraltet. Verwenden Sie stattdessen GET /gds/inventory/crt/{host_or_url}.

Anfragefelder

FeldTypPflichtBeschreibung
serverstringJaHostname oder IP-Adresse.
portinteger (1–65535)NeinPort (Standard: 4840).

Antwort 200

Format entspricht GET /gds/inventory/crt/{host_or_url}.


GET /gds/inventory/crt/{host_or_url}

Gibt geparste Zertifikatsdetails für einen GDS-Inventareintrag aus zwischengespeicherten Inventardaten zurück. Es wird keine Live-Verbindung aufgebaut.

Authentifizierung: X-API-Key erforderlich

Pfadparameter

ParameterBeschreibung
host_or_urlIP-Adresse, Hostname oder OPC UA URL eines Inventareintrags.

Antwort 200

{
"name": "PLC Line 1",
"url": "opc.tcp://192.168.1.10:4840",
"device_status": 1,
"last_changed_certificate_date": "2026-01-15",
"certificate": {
"sha1_thumbprint": "A1:B2:C3:...",
"subject_dn": "CN=plc-line1,O=ExampleCorp,C=DE",
"issuer_dn": "CN=Issuing CA,O=ExampleCorp,C=DE",
"valid_from": "2026-01-01T00:00:00",
"valid_to": "2027-01-01T00:00:00",
"remaining_days": 241,
"self_signed": false,
"key_type": "RSA",
"public_key_size": 2048
},
"certificate_revocation": {
"id": 1,
"name": "not_revoked",
"description": "certificate was checked against a CRL and is not revoked",
"is_revoked": false
},
"certificate_revocation_reason": null
}

GET /gds/monitor/plc/{host_or_url}

Liest PLC-spezifische Metadaten (z. B. Modulinformationen, Firmware) von einem OPC UA Endpoint über eine Live-Verbindung aus.

Authentifizierung: X-API-Key erforderlich

Pfadparameter

ParameterBeschreibung
host_or_urlIP-Adresse, Hostname oder OPC UA URL eines Inventareintrags.

GET /gds/monitor/firmware/{host_or_url}

Liest Firmware-Versionsinformationen von einem GDS-Inventareintrag aus.

Authentifizierung: X-API-Key erforderlich

Pfadparameter

ParameterBeschreibung
host_or_urlIP-Adresse, Hostname oder OPC UA URL eines Inventareintrags.

Antwort 200

{
"url": "opc.tcp://192.168.1.10:4840",
"firmware_version": "V03.01.03",
"device_name": "SIMATIC S7-1500 OPC UA"
}

GET /gds/monitor/status/{host_or_url}

Liest den Betriebsstatus eines GDS-Inventareintrags über eine Live OPC UA Verbindung aus.

Authentifizierung: X-API-Key erforderlich

Pfadparameter

ParameterBeschreibung
host_or_urlIP-Adresse, Hostname oder OPC UA URL eines Inventareintrags.

Antwort 200

{
"url": "opc.tcp://192.168.1.10:4840",
"status": "run"
}

POST /gds/monitor/trustlist

Liest die Trust List von einem entfernten OPC UA Server aus und speichert sie im Inventar. Die trustlist-Bitmaske steuert, welche Komponenten ausgelesen werden.

Authentifizierung: X-API-Key erforderlich

Anfragefelder

FeldTypPflichtStandardBeschreibung
serverstringJaHostname oder IP des Zielgeräts.
portinteger (1–65535)Nein4840OPC UA Port.
trustlistintegerNein15Bitmaske zur Steuerung der auszulesenden Trust-List-Komponenten. Siehe Parameter-Referenz.
usernamestringNeinBenutzername für die Authentifizierung.
passwordstringNeinPasswort für die Authentifizierung.

Antwort 200

{"success": true, "execution": "ok", "error": "", "result": null}

GET /gds/monitor/trustlist/{host_or_url}

Gibt die zwischengespeicherte Trust List für einen GDS-Inventareintrag zurück.

Authentifizierung: X-API-Key erforderlich

Pfadparameter

ParameterBeschreibung
host_or_urlIP-Adresse, Hostname oder OPC UA URL eines Inventareintrags.

DELETE /gds/monitor/trustlist

Löscht die gespeicherte Trust List aller GDS-Inventareinträge.

Authentifizierung: X-API-Key erforderlich

Anfragefelder

FeldTypPflichtBeschreibung
trustlistintegerNeinBitmaske der zu löschenden Trust-List-Komponenten (Standard: 15 = alle).

Antwort 200

{"success": true, "execution": "ok", "error": "", "result": null}

DELETE /gds/monitor/trustlist/{host_or_url}

Löscht die gespeicherte Trust List eines einzelnen GDS-Inventareintrags.

Authentifizierung: X-API-Key erforderlich

Pfadparameter

ParameterBeschreibung
host_or_urlIP-Adresse, Hostname oder OPC UA URL eines Inventareintrags.

Anfragefelder

FeldTypPflichtBeschreibung
trustlistintegerNeinBitmaske der zu löschenden Trust-List-Komponenten (Standard: 15 = alle).

Antwort 200

{"success": true, "execution": "ok", "error": "", "result": null}