De database staat in het routeringsdomein van het dienstprofiel van haar applicatiecluster (vrf-afn-p1 of vrf-afn-p2), in het VLAN van dat cluster uit de reeks 1000–1499 of 1500–1899. De exemplaren gebruiken geen secundaire interface en geen hostnetwerk; hun volumes lopen via de opslagaansluiting van de werkers. Van buiten het datacenter is de database niet bereikbaar.
Onderwerp
Adres, verbindingen en versleuteling
Nog niet bevestigd door een mens. Eigenaar: vdo89. Bron in de atlas
- Domein
- Volgt uit
- Functies
- Producten
- Verwant
Wat het is
De database staat in het netwerk van haar applicatiecluster. De schrijvende kant krijgt een eigen adres en een naam in het domein van het cluster, zodat ook het geheimenbeheer buiten het cluster haar kan bereiken. Verbindingen zijn alleen versleuteld mogelijk, met een servercertificaat dat de toepassing op naam en keten controleert.
Waarom zo
Firewall en TLS bewijzen alleen bereikbaarheid en identiteit; de database zelf bepaalt de lees-, schrijf- en replicatierechten. Daarom is de databasenaamruimte standaard dicht, ook binnen het routeringsdomein, en is iedere verbinding versleuteld en gecontroleerd.
Het voorstel geeft de database een naam in het domein van de cel, omdat een clusterinterne naam buiten de naambeperking van de tussen-CA valt. Adres en naam horen bij de dienst, zodat zij bij herstel of een nieuwe hoofdversie meeverhuizen.
Adres en naam
De schrijvende kant krijgt een LoadBalancer-adres van MetalLB in het VLAN van de werkers, met externalTrafficPolicy Local zodat het netwerkbeleid het bronadres ziet, en een naam onder het domein van het applicatiecluster, bijvoorbeeld planning-ont-01.onderhoud-ont-c1-01.c1.dc3.internal, in Infoblox en NetBox. Adres en naam horen bij de dienst: bij productieherstel en bij een nieuwe hoofdversie verhuizen ze naar het nieuwe databasecluster. Verbindingen gaan alleen naar het schrijvende exemplaar; in de eerste levering is er geen leesverbinding naar de replica’s.
Toelichting
Reden: het geheimenbeheer staat buiten het applicatiecluster en moet de database bereiken om rollen te beheren, en een clusterinterne dienstnaam valt buiten de naambeperking van de tussen-CA. Afgewezen: alleen de clusterinterne dienstnaam.
Het geheimenbeheer bereikt de databaseadressen op TCP 5432 als vaste stroom van het platformdomein naar de afnemersdomeinen, vanaf de knooppunten van het basisdienstencluster in VLAN 610. Het netwerkbeleid van de databasenaamruimte laat alleen dat bronadres toe.
Verbindingen en netwerkbeleid
De verbindingen van en naar de beheerde database.
| Van | Naar | Poort | Doel | Grondslag |
|---|---|---|---|---|
| Toepassingen uit de dienstbeschrijving | Databaseadres | TCP 5432, TLS 1.3 | Gegevens | Binnen het cluster; netwerkbeleid |
| Geheimenbeheer van de cel | Databaseadres | TCP 5432, TLS 1.3 | Rollen aanmaken, verlengen en intrekken; sessies beëindigen | Vaste stroom van het platformdomein naar de afnemersdomeinen; netwerkbeleid op het bronadres |
| Exemplaren onderling | Exemplaren | TCP 5432, TLS met certificaten van de beheerfunctie | Streaming replicatie | Binnen de naamruimte |
| Beheerfunctie en bewaking | Exemplaren | TCP 8000 (status) en 9187 (metingen) | Besturing en metingen | Binnen het cluster |
| Barman Cloud-plug-in | Objecttoegang, realm platform (VLAN 622) | TCP 443, HTTPS | Back-up, archivering en herstel | Bestaande vaste stroom; EgressFirewall alleen naar dat adres |
| Geheimenkoppeling en cert-manager | Geheimenbeheer | TCP 8200, TLS | Inloggegevens en certificaat | Bestaande vaste stroom |
| Beheerwerkplek | API van het applicatiecluster op het clusterbeheer | TCP 6443 | Beheertoegang met poortdoorschakeling | Bestaande vaste stroom van het beheerdomein naar het platformdomein |
| Back-upvoorziening van RWS | Objecttoegang | TCP 443 | Kopie buiten de cel ophalen, alleen lezen | Bestaande vaste stroom |
| Database bij een overgang | Bestaande database buiten het platform | Poort van de bron, TLS | Logische replicatie tot de omschakeling | Gedeclareerde verbinding na zonecontrole |
De databasenaamruimte laat inkomend alleen de toepassingen uit de dienstbeschrijving, het geheimenbeheer, de beheerfunctie en de bewaking toe, en uitgaand alleen de exemplaren, de objecttoegang, de API van het cluster en gedeclareerde verbindingen; dat geldt ook voor een herstelexemplaar. Zo is het standaard dicht, ook binnen een routeringsdomein.
Toelichting
Firewall en TLS bewijzen alleen bereikbaarheid en identiteit; de ontvangende database bepaalt de lees-, schrijf- en replicatierechten. Een herstelexemplaar, dat uit de objectopslag leest, mag uitgaand alleen naar de objecttoegang. Controle: de toets zonecontrole en netwerkbeleid.
TLS en certificaten
De database aanvaardt alleen TLS 1.3 (ssl_min_protocol_version TLSv1.3), en pg_hba weigert verbindingen zonder TLS. Wachtwoorden worden bewaard als SCRAM-SHA-256, zonder md5-regel.
Toelichting
Dit volgt het TLS-profiel en de cryptografietabel van RWS; TLS 1.3 is standaard in CloudNativePG 1.30. Controle: een TLS-scan rechtstreeks op 5432.
Het servercertificaat voor de databasenaam komt via cert-manager uit de PKI van het geheimenbeheer, onder de tussen-CA van de cel; in bedrijfskritische productie onder de tussen-CA ‘vloot’, op de dienstnaam waarmee ook de andere cel verbindt. Het is ten hoogste 90 dagen geldig, wordt bij twee derde vernieuwd, en toepassing en geheimenbeheer controleren het op naam en keten (sslmode verify-full). De beheerfunctie krijgt het als serverTLSSecret met serverCASecret en herlaadt het zonder herstart.
Toelichting
Onderling gebruiken de exemplaren certificaten die de beheerfunctie zelf vernieuwt. Dat het vernieuwde certificaat zonder herstart werkt, is een acceptatiecriterium; terugvaloptie is een herstart bij ontwikkelen en beproeven of een overschakeling in reguliere productie, in het eerstvolgende onderhoudsvenster binnen de resterende 30 dagen geldigheid.
De cryptografie volgt per pad de cryptografietabel van RWS. Het cryptografieoverzicht noemt per database het protocol, de algoritmen en de sleutellengte.