Einleitung

Zur Nutzung der Schnittstelle werden Client Credentials und eine VPN-Verbindung zwischen den vertrauenswürdigen Umgebungen der Client- und der Server-Systeme eingesetzt. 

Authentifizierungsverfahren OAuth2 - Client Credential Flow

Um Clientsysteme zu authentifizieren, wird der Standard OAuth2 mit dem Client Credential Flow eingesetzt. Die kv.digital GmbH stellt einen OAuth 2.0 Authorization Server bereit, um mittels ClientID und Client Secret (Passwort) einen Access Token zu erstellen. Der Access Token berechtigt, die Schnittstelle zu nutzen.

VPN-Verbindung

Zur Nutzung der Schnittstelle wird eine VPN-Verbindung zwischen den vertrauenswürdigen Umgebungen der Client- und der Server-Systeme aufgebaut, die zur sicheren Speicherung des Schlüsselmaterials Client-seitig in Hardware ausgelegt ist. Standardmäßig wird IPsec/IKEv2 eingesetzt; alternativ kann Wireshark oder OpenVPN angefragt werden. Zur Initiierung reicht das Client-System einen CSR mit ECDSA NIST P-256 (prime256v1) ein und erhält ein Client Zertifikat nebst Zertifikaten der ausstellenden Root- und Intermediate-CA. Die Konfigurationsparameter sind wie folgt:

DNS:

46.30.72.20 vpn.116117-termine.de 

IPsec:

IKE-Version in Phase 1 gesetztIKEv2 only
Verschlüsselung Phase 1 konfiguriertAES-256-GCM
DH-Gruppe Phase 1 gesetztGroup 19 (P-256)
AuthentifizierungRSA-PSS / ECDSA
SHA-1 in keiner Phase verwendetSHA256 oder besser
PFS in Phase 2 aktivGroup 19 (P-256)
Lifetime Phase 1≤ 3600 s
Lifetime Phase 2≤ 3600 s / 100 GB
HSM: Private Key exportiertniemals
HSM: Private Key exportierbar konfiguriertniemals

Phase 1: 

aes256gcm16-sha256-curve25519

DH31, Modern EC

aes256gcm16-sha512-curve25519

DH31, Modern EC

aes128gcm16-sha256-curve25519

DH31, Modern EC

aes128gcm16-sha512-curve25519

DH31, Modern EC

aes256-sha256-ecp256

DH19, NIST EC

aes256-sha256-ecp384

DH20, NIST EC

aes256-sha384-ecp256

DH19, NIST EC

aes256-sha384-ecp384

DH20, NIST EC

Phase 2:

aes256gcm16-sha256-curve25519

DH31, Modern EC

aes256gcm16-sha512-curve25519

DH31, Modern EC

aes128gcm16-sha256-curve25519

DH31, Modern EC

aes128gcm16-sha512-curve25519

DH31, Modern EC

aes256-sha256-ecp256

DH19, NIST EC

aes256-sha256-ecp384

DH20, NIST EC

aes256-sha384-ecp256

DH19, NIST EC

aes256-sha384-ecp384

DH20, NIST EC