request.gds_push.gds_push_service

Service for OPC UA GDS Push operations.

Module Contents

exception request.gds_push.gds_push_service.GdsPushError[source]

Bases: Exception

Exception raised for GDS Push operation failures.

class request.gds_push.gds_push_service.GdsPushService(device, *, insecure=False)[source]

Bases: trustpoint.logger.LoggerMixin

Service for managing OPC UA GDS Push operations.

This service handles secure communication with OPC UA servers and implements GDS Push workflows for certificate and trustlist management.

Architecture: - Device provides connection info (IP, port) - Device’s domain provides the CA hierarchy - Domain credential provides client authentication - Truststore (opc_trust_store) provides server validation - TrustList (CA chain + CRLs) gets pushed to server

Parameters:
device: devices.models.DeviceModel[source]
server_url: str[source]
domain_credential: pki.models.IssuedCredentialModel | None[source]
server_truststore: pki.models.truststore.TruststoreModel | None[source]
async discover_server()[source]

Discover OPC UA server information without authentication.

Returns:

bool, message: str, server_info: dict | None).

Return type:

Tuple of (success

async update_trustlist()[source]

Update server trustlist with CA chain and CRLs.

Implements OPC UA Part 12 Section 7.7.3 UpdateTrustList workflow.

Returns:

bool, message: str).

Return type:

Tuple of (success

async update_server_certificate()[source]

Update server certificate using CSR-based workflow.

Implements OPC UA Part 12 Section 7.7.4 UpdateCertificate workflow.

Returns:

bool, message: str, certificate: bytes | None).

Return type:

Tuple of (success