zerodds-bridge-security
Gemeinsamer Security-Layer für ZeroDDS Bridge-Daemons (ws / mqtt / coap / amqp / grpc / corba): §7.1 TLS (rustls), §7.2 Auth-Modes, §7.3 Topic-ACL.
ZeroDDS-Komponente: Layer 5 (Bridges). Bündelt drei wiederverwendbare Bausteine, die jede Bridge-Daemon einbinden kann, ohne ihre eigene Crypto-/Auth-Logik schreiben zu müssen.
Spec-Mapping
| Spec-Dokument | Abschnitt |
|---|---|
| ZeroDDS Bridge-Spec 1.0 | §7.1 TLS |
| ZeroDDS Bridge-Spec 1.0 | §7.2 Auth-Modes |
| ZeroDDS Bridge-Spec 1.0 | §7.3 Topic-ACL |
Safety-Klassifikation
STANDARD — sicherheitsrelevant, aber nicht safety-zertifiziert.
#![forbid(unsafe_code)] ist gesetzt.
Verwendung
use ;
let subj = new.with_group;
let acl = allow_all;
let _allowed = acl.check;
Bausteine
- [
tls] —rustls 0.23ServerConfig-Builder mit PEM-Cert/Key-Loader, optionalem Client-CA-Trust für mTLS, plusRotatingTlsConfigfür SIGHUP-Hot-Reload. - [
auth] — Auth-Modesnone|bearer|jwt|mtls|saslplus [AuthSubject]-Typ mit Group-Memberships und Free-Form-Claims. - [
acl] — Topic-ACL mit Wildcard- und Group-Match (Read / Write). - [
connection] — pro-Connection-Helper: TLS-Handshake-Server-Side, rustls-ClientConnector-Builder, RotatingTlsConfig. - [
ctx] —SecurityCtxals Aggregat (Auth + ACL + TLS), plusauthenticate/authorize/extract_mtls_subject.
Features
default = ["std"]— Standard-Library + Heap-Allocator.std— Pflicht (rustls 0.23 braucht std).
Stabilitaet
1.0.0-rc.1 — Public-API ist RC1-stabil. Breaking-Changes erfordern
einen Major-Bump. Neue Auth-Modes oder ACL-Operationen sind additive
Diskriminanten und damit Major-additive.
Build & Test
Lizenz
Apache-2.0. Siehe LICENSE.