Hoofdinhoud
Inleiding
Logius beheert het Standaard Platform: een kant-en-klaar containerplatform voor het bouwen, uitrollen, draaien en beheren van CloudNative applicaties binnen de Rijksoverheid.
Als klant rol je je applicaties en datastores uit op het Standaard Platform. Je maakt daarbij gebruik van je eigen componenten, en beheert deze zelf in Test en Productie. De aansluitvoorwaarden daarvoor zijn uitgewerkt op deze pagina.
Het Standaard Platform ("platform") omvat de volgende standaard dienstverlening (informele opsomming, voor formele beschrijving raadpleeg servicemanagement via het algemeen contactformulier):
Alle diensten zijn "multi-tenant" ingeregeld, tenzij anders aangegeven.
Dienst toegang, zodat je als klant:
- Beveiligd kan inloggen op alle platform-netwerken en diensten
- Geautoriseerd gebruik kan maken van alle diensten
Dienst CI/CD zodat je als klant:
- Broncode, secrets, documentatie en build pipelines kan onderhouden
- Applicatie images geautomatiseerd kan bouwen naar een image registry
- Applicatie images geautomatiseerd kan uitrollen naar Kubernetes
Dienst Image Registry, zodat je als klant:
- Applicatie images en Helm Charts geautomatiseerd kan opslaan
- Applicatie images geautomatiseerd kan controleren op kwetsbaarheden ("Common Vulnerability Exposures", CVEs)
- Applicatie images uit publieke registries kan "proxiën" en "cachen", zodat applicaties onafhankelijk kunnen draaien van derden
Dienst Artefact Manager, zodat je als klant:
- (Java) software artefacten kan opslaan, zodat deze in build pipelines herbruikbaar zijn
- Artefacten uit publieke repositories kan "proxiën" en "cachen", zodat build pipelines onfhankelijk kunnen draaien van derden
Dienst OTAP-omgeving, zodat je als klant:
- Applicaties geïsoleerd kan draaien in Kubernetes namespaces
- Applicaties geïsoleerd kan beheren (kubectl of interactief dashboard)
Dienst Versleuteling, zodat je als klant:
- Private keys, wachtwoorden, etcetera op veilige wijze in CI/CD kan opslaan, en van daaruit geautomatiseerd kan uitrollen
- Domain Validated (DV) certificaten geautomatiseerd kan aanvragen en uitrollen (voorbeeld: Let’s Encrypt)
- SSL kunt aanzetten op hostname/uitgerolde certificaten
- Let op: Organization Validated (OV) certificaten dien je zelf aan te vragen bij je eigen Trust Service Provider (TSP)
Dienst Technische Logging, zodat je als klant:
- Logdata eenduidig naar "standard out" kan wegschrijven
- Logdata centraal kan raadplegen
- Alerts kan zetten op logdata
- Voor dit type van logging voldoet aan de standaard bewaartermijnen van NORA en BIO (minimaal 7 dagen Test, minimaal 30 dagen Productie)
Dienst Monitoring, zodat je als klant:
- Standaard metrics centraal kan raadplegen, zoals bijvoorbeeld: CPU-, RAM- en storage-gebruik
- Eigen metrics kan ontsluiten en eveneens centraal kan raadplegen
- Alerts kan zetten op metrics.
Dienst Storage, zodat je als klant:
- Data kan wegschrijven op persistente data volumes
Dienst Backup en Restore, zodat je als klant:
- Persistente data volumes kan annoteren voor dagelijkse backup in ander datacenter
- Deze dienst is alleen van toepassing op niet-transactionele data
Dienst Netwerkverkeer, zodat je als klant:
- Je applicatie binnen het interne netwerk van het platform, of op een extern netwerk kan ontsluiten (Internet, Rijksweb, Diginetwerk)
- Kan vertrouwen op de aanwezigheid van Internet Service Provider (ISP), DNS (alleen interne platform netwerk), anti-DDoS, routers, gateways, firewalls, load balancers (L4), en ingress controllers (L7, reverse proxy)
- Kan uitgaan van "deny by default" (voor je applicatie geldt standaard geen toestemming voor ingaand en uitgaand netwerkverkeer, er is geen toegang middels ssh, etc.)
- Je hostnames aan de allow-list kan toevoegen
- HTTP-verkeer geautomatiseerd verder kunt fine-tunen
- Je applicaties multi datacenter kan draaien
Dienst Support, zodat je als klant:
- Architecturaal wordt ondersteund bij aanvang, realisatie en implementatie
- Als DevOps team welkom wordt geheten door standaard onboarding en interactieve toelichting
- Gebruik kan maken van uitgebreide documentatie
- Gebruik kan maken van voorbeeldapplicaties/patronen (deze zijn indicatief, zonder formele support afspraak)
- Tijdens kantooruren vragen kan stellen in een online chatbox
- Formele wijzigingsverzoeken kunt doen in een ticketing systeem
- Hackathons kan aanvragen, indien gewenst, voor speciale onderwerpen; zoals hoge beschikbaarheid, multi-datacenter, performance test, etc.
- 7x24 ondersteuning hebt voor P1-incidenten
- Best-effort support krijgt op het gebruik van applicatie- en database componenten
- In bovenstaande kanalen up-to-date wordt gehouden over platform lifecyclemanagenent, gepland onderhoud, storingen, etc.
- Gelegenheid hebt om samen met Logius en de andere platform gebruikers de inzet van container technologie en Cloud Native applicaties binnen de Nederlandse overheid te bevorderen
Als Logius willen we zoveel mogelijk aansturen op self-service, dit wordt continu verbeterd.
Buiten scope:
- Als Logius zijn we niet verantwoordelijk voor de bouw- en exploitatie van klantapplicaties op SP; m.a.w.
- Als Logius bouwen we geen klantapplicaties op SP, en beheren we deze ook niet
Aansluitvoorwaarden
Bouwen, uitrollen, beheren, en beveiligen:
Bouwen
Als klant:
Voorwaarde | Omschrijving |
---|---|
AV‑001 | Je bezit aantoonbare kennis van containertechnologie, containerorkestratie en Cloud Native (CNCF) Zodat het realisatietraject efficiënt kan worden gestart. Als Logius leiden we je niet op in Docker, Kubernetes etc. |
AV‑002 | Je streeft naar de principes van "The Twelve Factor App" Zodat applicaties passen binnen de concepten van Cloud Native, zoals horizontale schaalbaarheid, stateless draaien, hoge beschikbaarheid, veerkracht etc. |
AV‑003 | Je ontwikkelt applicaties in de CI/CD omgeving van het platform Zodat deze geautomatiseerd kunnen worden uitgerold en beheerd. Broncode kan optioneel worden gesynchroniseerd van/naar publieke Git repo's. |
AV‑004 | Je bouwt applicatie-images middels rootless-tooling Zodat de CI/CD omgeving van het platform veilig blijft. |
AV‑005 | Je bouwt applicatie-images die zelf ook rootless zijn Zodat de Test en Prod omgevingen van het platform veilig blijven. |
AV‑006 | Je bouwt applicatie-images conform OCI Zodat deze geautomatiseerd kunnen worden opgeslagen, uitgerold en beheerd. |
AV‑007 | Je bouwt applicatie-images die op Kubernetes worker nodes met Linux kunnen draaien Windows en MacOS nodes worden vooralsnog niet ondersteund. Dit laat in het midden op welke technologie en OS de Docker image zelf gebaseerd is. |
AV‑008 | Je pusht applicatie-images naar de image registry van het platform Zodat deze van daaruit automatisch kunnen worden uitgerold. |
AV‑009 | Je overweegt publieke images te betrekken via de image registry van het platform Zodat geen continue afhankelijkheid op derde partijen, en je de images geautomatiseerd kunt scannen op kwetsbaarheden (CVEs). |
AV‑010 | Je draagt zorgt voor up-to-date applicatie-images Inclusief het zo snel mogelijk doorvoeren van security patches, zodat de images veilig blijven. |
AV‑011 | Je maakt op standaard wijze gebruik van de platform faciliteiten Zodat Logius de "cloud-agnosticiteit" van het platform kan waarborgen. |
AV‑012 | Je volgt de algemene richtlijnen van de Rijksoverheid Zoals bijvoorbeeld website-richtlijnen en forum standaardisatie; zie referenties onderaan. |
AV-013 | Je zorgt voor veerkracht in het gebruik van SP APIs Zodat tijdelijke onbeschikbaarheid van bijvoorbeeld GitLab-, Harbor-, Elastic API etc. applicatief wordt afgevangen |
AV-014 | Je streeft naar kleine container images Zodat je die images probleemloos kunt pushen naar de image registry; zodat je pods snel kunnen starten. (Advies: houd de image grootte bij voorkeur onder de 250 MiB, in elk geval onder de 1 GiB.) |
Uitrollen
Voorwaarde | Omschrijving |
---|---|
AV‑101 | Je rolt applicaties op geautomatiseerde wijze uit Zodat handmatig beheer wordt voorkomen. Handmatige interventie is wel toegestaan, maar dient daarna alsnog te worden geautomatiseed. |
AV‑102 | Je houdt een strikte scheiding aan tussen Test en Productie Zodat netwerkscheiding kan worden gehandhaafd. |
AV‑103 | Je draagt zorg voor veilige uitrol van secrets Zodat wachtwoorden, private keys etc. niet als "plain text" in Git repo's zijn terug te vinden. |
AV‑104 | Je draagt zorg voor geautomatiseerde unit- en integratietests Zodat applicaties aantoonbaar goed kunnen functioneren. Logius is niet verantwoordelijk voor de applicaties van de klant. |
AV‑105 | Je draagt zorg voor je eigen externe DNS Dit betreft de externe netwerken (Internet, Rijksweb, Diginetwerk); voor het interne platform-netwerk voorziet Logius in een standaard aanwezige DNS. |
AV‑106 | Je volgt de domeinnaam richtlijnen van de Rijksoverheid Zie referentie onderaan; controleer tenaamstelling op https://www.sidn.nl/whois (“Rijksoverheid” als “Houder” en “Registrar”); controleer website en mail op internet.nl. |
AV‑107 | Je draagt zorg voor images die door de operators van SP worden uitgerold Alleen van toepassing indien je gebruik maakt van operators. SP blijft verantwoordelijk voor de operators zelf, en het beschikbaar stellen van eventuele default images. |
Beheren
Voorwaarde | Omschrijving |
---|---|
AV‑201 | Je voert zelf beheer in centraal logmanagement Logius is niet verantwoordelijk voor de logging van de klant. |
AV‑202 | Je voert zelf beheer in centraal monitoring-management Logius is niet verantwoordelijk voor de monitoring van de klant. |
AV‑203 | Je voert zelf beheer over data volumes die mee moeten draaien met automatische backup Alleen niet-transactionele (backup) volumes. Overweeg zelf eigen (transactionele) backups voor betere RPO. |
AV‑204 | Je applicaties loggen naar stdout of stderr Zodat deze automatisch naar centraal logmanagement wordt verstuurd, met standaard retentie. Optioneel: naar bestand in eigen volume, met eigen retentie, komt niet in centraal logmanagement. |
AV‑205 | Je draagt zorg voor adequaat resourcegebruik Zodat onnodige verspilling van RAM, CPU en storage wordt voorkomen. Advies: maak gebruik van Pod-autoscaling. |
AV‑206 | Je voert zelf periodieke backup en restore tests uit Zodat de werking aantoonbaar in orde is. Logius is niet verantwoordelijk voor de backups van de klant. |
AV‑207 | Je voert zelf periodieke performance tests uit Zodat de kengetallen van de applicatie aantoonbaar werkend zijn. |
AV‑208 | Je meldt een performance test tijdig vantevoren aan bij Logius Zodat bijvoorbeeld rekening kan worden gehouden met het toevoegen van client-IP's aan allow-lists. |
AV‑209 | Je houdt rekening met (gepland) platform-onderhoud overdag Zodat dit voor Logius beheersbaar blijft. Als je geen downtime accepteert, dien je je applicatie hoog-beschikbaar uit te rollen met meerdere Kubernetes replica's, eventeel aangevuld met Pod Disruption Budgets (PDBs). |
AV-210 | Je valideert wijzingen van SP in Test, voordat deze door SP worden uitgerold naar Prod (beide conform onderhoudskalender SP) Zodat je applicatie met deze changes integraal getest wordt, en verrassingen in Prod voorkomen worden. |
Beveiligen
Voorwaarde | Omschrijving |
---|---|
AV‑301 | Je draagt, indien van toepassing, zorg voor de juiste mail records op je DNS en het ordentelijk versturen van mail Zodat o.a. mail veilig kan worden verstuurd, en waarmee voorkomen wordt dat de platform mail-relay op deny-lists terecht komt. |
AV‑302 | Je bent zelf verantwoordelijk voor ordentelijke aan- en afmelding van je medewerkers (IDU-proces) Zodat DevOps gebruikers alleen indien gerechtigd toegang tot het platform krijgen. |
AV‑303 | Je bent zelf verantwoordelijk voor ordentelijke aan- en afmelding van gebruikersrollen Zodat DevOps gebruikers de juiste, "least-privilege" rechten krijgen op het platform (conform platform rollenmodel). |
AV‑304 | Je applicaties voldoen aan de Baseline Informatiebeveiliging Overheid (BIO) en draagt zorg voor een In Control Verklaring (ICV). Logius is niet verantwoordelijk voor BIO en ICV van de klant. |
AV‑305 | Je applicaties voldoen aan de Algemene Verordening Gegegevensbescherming (AVG) Logius is niet verantwoordelijk voor de AVG van de klant. |
AV‑306 | Je voert, indien van toepassing, periodiek een Data Protection Impact Assessment (DPIA) uit Logius is niet verantwoordelijk voor de DPIA van de klant. |
AV‑307 | Je voert, indien van toepassing, periodiek een security audit of Pentest uit Indien je kwetsbaarheden ontdekt in het platform, dan meld je deze aan Logius. |
AV‑308 | Je meldt een Pentest vantevoren aan bij Logius Zodat bijvoorbeeld rekening kan worden gehouden met verdacht gedrag. |
AV‑309 | Je voert beleid op veilige broncode en (draaiende) container images Zoals: comply-or-explain op image CVEs (self-service), statische code-analyse (SAST), OWASP-maatregelen (via WAF), het voorkomen van Supply Chain Attacks... |
AV‑310 | Je voert beleid op draaiende applicatiess Zoals: anti-virus scanning op ge-uploade bestanden, malware checks/dynamische code-analyse (DAST). |
AV‑311 | Je volgt publieke security richtlijnen en bulletins Zoals: CIS, NCSC, ... |
AV‑312 | Je applicaties voldoen aan overige vigerende wet- en regelgeving Naast BIO, en AVG, zie onder andere ook VIR, VIR-BI, BVR, en referenties onderaan. |
AV‑313 | Je applicaties en de werkstations van je DevOps teams voldoen aan “best practices” op het gebied van beveiliging Denk aan het versleutelen van laptops, het wijzigen van standaard admin passwords, password-rotation, etc. |
AV‑314 | Je hebt een functionaris aan wie je verantwoording aflegt over je beveiliging Denk hierbij aan een CISO, IB-er, of externe auditor. |
AV-315 | Je bent zelf verantwoordelijk voor de veiligheid van je applicatie, inclusief (productie)data |
Naleving
Voorwaarde | Omschrijving |
---|---|
AV‑401 | Je conformeert je aan het principe van "wie uitrolt, die beheert" Zodat je zelf belang hebt bij kwalitatief goede software. Je bent zelf expert in je gebruikte componenten. Logius is niet verantwoordelijk voor de applicaties van de klant. |
AV‑402 | Je conformeert je aan de doorontwikkeling en lifecyclemanagement van het platform Zodat Logius het platform zelf ook up-to-date kan houden (patches, upgrades, migraties). Houd ook rekening met de doorontwikkeling van Kubernetes (beta) APIs en operators. Denk bijvoorbeeld aan de upgrade van jouw database nadat SP de database operator upgradet. |
AV‑403 | Je conformeert je in geval van risicovol malfunctioneren of beveiligingsincident aan het (tijdelijk) afsluiten van je applicatie, zonder aankondiging vooraf door Logius Zodat o.a. de veiligheid gegarandeerd blijft voor de andere klanten op het platform. Voorbeeld: gecompromitteerde containers met uitbraak naar kernel. |
AV‑404 | Je bent zelf verantwoordelijk voor het juiste gebruik en de borging van (open source) licenties en intellectueel eigendom van je applicatie. En respecteert licenties van (open source) componenten van derden die je in je applicatie gebruikt. |
AV‑405 | Je houdt rekening met het eventueel verhuizen van je workloads naar een ander cluster (uitzondering, in overleg). Zodat Logius een maximaal aantal worker nodes per cluster kan aanhouden en een monoliet wordt voorkomen. |
AV‑406 | Je voldoet aan de door Logius bekendgemaakte (technische) eisen en voorgeschreven beveiligingsmiddelen/-maatregelen En houdt rekening met wijzigingen die binnen een redelijke termijn dienen te worden doorgevoerd (bij ingrijpende wijzigingen max. 3 maanden). |
AV‑407 | Je draagt zorg voor acceptabel gebruik van het platform door jezelf, je medewerkers en je derde partijen Zoals onder andere NIET: ongeoorloofde toegang verlenen, onderscheppen van informatie, achterhouden van informatie, malware plaatsen, debug-logging aan laten staan, grote data volumes (PVCs) onnodig backuppen, onnodige hoeveelheid pipeline jobs of cronjobs, analytics t.b.v. advertentiedoeleinden, wraakacties, gokactiviteiten, aanstootgevende inhoud, uitlokken van overbelasting of DDoS en alle overige onwettige handelingen. |
Vrijwaring
Voorwaarde | Omschrijving |
---|---|
AV‑501 | Je vrijwaart Logius tegen iedere aansprakelijkheid als gevolg van het gebruik van het platform In bijzonder bij het niet naleven van deze aansluitvoorwaarden. |
Referenties
- AVG - https://autoriteitpersoonsgegevens.nl
- Basisregistraties - https://www.digitaleoverheid.nl/overzicht-van-alle-onderwerpen/stelsel-van-basisregistraties/
- BIO- https://www.noraonline.nl/wiki/BIO_(Baseline_Informatie_beveiliging_Overheid)
- BIO, VIR, VIR-BI, BVR - https://zoek.officielebekendmakingen.nl/stcrt-2019-26526.html
- CNCF - https://www.cncf.io
- Digitale overheid - https://www.digitaleoverheid.nl/
- Domeinnaam richtlijnen van de Rijksoverheid - https://www.communicatierijk.nl/vakkennis/r/rijkswebsites/verplichte-richtlijnen/domeinnaambeleid
- Forum standaardisatie - https://www.forumstandaardisatie.nl/
- GDI - https://www.rijksoverheid.nl/documenten/rapporten/2022/12/02/gdi-programmeringsplan-2023
- Kubernetes API's -https://kubernetes.io/docs/reference/using-api/api-overview/#api-versioning
- NCSC - https://www.ncsc.nl/
- NIST - https://csrc.nist.gov/publications/detail/sp/800-190/final
- OWASP - https://www.owasp.org/
- Standaarden - https://standaarden.overheid.nl/
- The Twelve Factor App- https://12factor.net/
- Website richtlijnen - https://www.communicatierijk.nl/vakkennis/r/rijkswebsites
- Wetgeving - https://wetten.overheid.nl/