agentsclimarketplace

Cloud overheid

Skill djimit/overheid-plugins/skills/cloud-overheid

Helpt bij het beoordelen en implementeren van cloudoplossingen voor de Nederlandse overheid conform het rijksbrede cloudbeleid, BIO cloud-controls, SLM en de strategische leveranciersbeoordeling. Biedt richtlijnen voor risicoafweging, exit-strategie, datasoevereiniteit en compliance. Gebruik deze skill wanneer de gebruiker vraagt over 'cloud overheid', 'cloudbeleid', 'cloud policy government', 'SaaS overheid', 'IaaS overheid', 'PaaS overheid', 'cloud risico', 'cloud risk assessment', 'cloud classificatie', 'BIO cloud', 'BIO cloud controls', 'cloud beveiliging overheid', 'cloud security government', 'cloudmigratie overheid', 'cloud migration government', 'exit-strategie cloud', 'vendor lock-in overheid', 'datasoevereiniteit', 'data sovereignty', 'cloud first', 'cloud tenzij', 'SLM', 'Strategisch Leveranciersmanagement', 'hyperscaler overheid', 'AWS overheid', 'Azure overheid', 'Google Cloud overheid', 'sovereign cloud', 'EUCS', 'EU Cloud Certification Scheme', 'Haven', 'container platform overheid', 'Kubernetes overheid', 'multicloud overheid', of wanneer de gebruiker een clouddienst wil inzetten, beoordelen of migreren voor een overheidsorganisatie.From its SKILL.md

Install
npx -y skills add djimit/overheid-plugins --skill cloud-overheid

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

11.7 KB, as published. Nobody here has run it

Cloud Overheid — Cloudbeleid, Risicoafweging en BIO Cloud Controls

Beoordeel en implementeer cloudoplossingen voor de overheid conform het rijksbrede cloudbeleid en BIO.

Bron: Rijkscloudbeleid | BIO | Haven

Cloudbeleid overheid

AspectDetail
Rijksbeleid"Cloud, tenzij" — cloud is de standaard tenzij er zwaarwegende redenen zijn
VNGGemeentelijk cloudbeleid conform BIO en Common Ground
ScopeSaaS, PaaS, IaaS en hybride omgevingen
ToezichtCIO Rijk, BIT (Bureau ICT-toetsing)
KaderBIO (BBN2/BBN3), NCSC-richtlijnen, AVG, AI Act
EUEUCS (EU Cloud Certification Scheme) in ontwikkeling

Cloud-eerste principes

PrincipeBetekenis
Cloud, tenzijGebruik cloud tenzij risico's onaanvaardbaar zijn
Public, tenzijGebruik public cloud tenzij data-classificatie dit niet toelaat
MulticloudVoorkom afhankelijkheid van een enkele leverancier
Open standaardenGebruik open standaarden voor portabiliteit
Data in EUPersoonsgegevens en gevoelige overheidsdata binnen de EU

Risicoafweging cloudmigratie

Stap 1: Dataclassificatie

ClassificatieVoorbeeldenCloud-opties
OpenbaarOpen data, publicatiesPublic cloud (SaaS/IaaS)
Departementaal vertrouwelijkInterne notities, conceptbeleidPublic cloud met encryptie
Staatsgeheim - ConfidentieelGevoelig beleid, persoonsgegevens (bijzonder)Private/sovereign cloud of on-premises
Staatsgeheim - Geheim/Zeer geheimInlichtingen, defensieOn-premises (geen cloud)

Stap 2: BIO-classificatie (BBN)

BBNBeschrijvingCloud-eisen
BBN1BasisStandaard cloudbeveiliging voldoende
BBN2Verhoogd (standaard voor overheid)Aanvullende controls: encryptie, logging, RBAC
BBN3HoogStrenge eisen: sovereign cloud, HSM, audit

Stap 3: Risicobeoordeling

Data-classificatie + BBN → Risiconiveau
    |
    +-- Laag risico → Public cloud toegestaan
    |   (open data, BBN1)
    |
    +-- Midden risico → Public cloud met maatregelen
    |   (intern, BBN2, persoonsgegevens)
    |   Maatregelen: encryptie, BYOK, EU-regio, DPA
    |
    +-- Hoog risico → Private/sovereign cloud
    |   (bijzondere persoonsgegevens, BBN3)
    |
    +-- Zeer hoog risico → Geen cloud
        (staatsgeheim)

BIO cloud controls

Aanvullende BIO-maatregelen voor cloudgebruik (bovenop standaard BIO):

DomeinControlBBN2BBN3
GovernanceCloud-exitstrategie vastgesteldVerplichtVerplicht
GovernanceStrategisch leveranciersmanagement (SLM)VerplichtVerplicht
GovernanceRisicoanalyse cloudgebruikVerplichtVerplicht
IdentiteitMFA voor cloud-beheertoegangVerplichtVerplicht
IdentiteitFederatieve identiteit (SSO)AanbevolenVerplicht
DataEncryptie at rest (AES-256)VerplichtVerplicht
DataEncryptie in transit (TLS 1.2+)VerplichtVerplicht
DataBring Your Own Key (BYOK)AanbevolenVerplicht
DataDatalocatie EU/EERVerplichtVerplicht
DataGeen toegang door buitenlandse overheden (CLOUD Act)RisicoafwegingVerplicht
LoggingCloudaudit-loggingVerplichtVerplicht
LoggingSIEM-integratieAanbevolenVerplicht
NetwerkNetwerksegmentatieVerplichtVerplicht
NetwerkWAF/DDoS-beschermingVerplichtVerplicht
ContinuiteitBackup met encryptieVerplichtVerplicht
ContinuiteitMulti-regio beschikbaarheidAanbevolenVerplicht
Supply chainSubverwerkers inzichtelijkVerplichtVerplicht

SaaS-beoordelingskader

from dataclasses import dataclass
from enum import Enum

class Risico(Enum):
    LAAG = "laag"
    MIDDEN = "midden"
    HOOG = "hoog"
    ZEER_HOOG = "zeer_hoog"

@dataclass
class SaaSBeoordeling:
    naam: str
    leverancier: str
    dataclassificatie: str
    bbn: int
    persoonsgegevens: bool
    bijzondere_gegevens: bool
    data_in_eu: bool
    encryptie_at_rest: bool
    encryptie_in_transit: bool
    mfa_beheer: bool
    exit_strategie: bool
    verwerkersovereenkomst: bool
    subverwerkers_inzichtelijk: bool
    cloud_act_risico: bool

    @property
    def risico(self) -> Risico:
        if self.bijzondere_gegevens and not self.data_in_eu:
            return Risico.ZEER_HOOG
        if self.bbn >= 3:
            return Risico.HOOG
        if self.persoonsgegevens and (self.cloud_act_risico or not self.data_in_eu):
            return Risico.HOOG
        if self.persoonsgegevens:
            return Risico.MIDDEN
        return Risico.LAAG

    @property
    def toegestaan(self) -> bool:
        verplicht = [
            self.encryptie_at_rest,
            self.encryptie_in_transit,
            self.mfa_beheer,
            self.exit_strategie,
        ]
        if self.persoonsgegevens:
            verplicht.extend([
                self.verwerkersovereenkomst,
                self.data_in_eu,
                self.subverwerkers_inzichtelijk,
            ])
        return all(verplicht) and self.risico != Risico.ZEER_HOOG

    def rapport(self) -> str:
        status = "TOEGESTAAN" if self.toegestaan else "NIET TOEGESTAAN"
        return f"{self.naam} ({self.leverancier}): {status} - risico: {self.risico.value}"

Exit-strategie

Elke cloudoplossing vereist een gedocumenteerde exit-strategie:

AspectVereiste
Data-exportAlle data exporteerbaar in open formaat (JSON, CSV, SQL)
Data-verwijderingLeverancier verwijdert alle data na exit (bewijs)
DoorlooptijdMaximale doorlooptijd voor migratie gedefinieerd
KostenExit-kosten vooraf vastgelegd in contract
AlternatiefTen minste 1 alternatieve leverancier geidentificeerd
PortabiliteitGebruik open standaarden; vermijd proprietary API's
TestmigratieJaarlijkse test-exit om haalbaarheid te valideren

Haven — Container Platform Standaard

AspectDetail
WatStandaard voor Kubernetes-platforms bij de overheid
DoelPortabiliteit tussen cloud- en on-premises-omgevingen
BeheerderVNG / Common Ground
BasisKubernetes + aanvullende security- en compliance-eisen
CertificeringHaven-compliant platforms worden gecertificeerd
# Haven-compliant Kubernetes deployment voorbeeld
apiVersion: apps/v1
kind: Deployment
metadata:
  name: zaaksysteem
  labels:
    app: zaaksysteem
    haven.commonground.nl/compliant: "true"
spec:
  replicas: 2
  selector:
    matchLabels:
      app: zaaksysteem
  template:
    metadata:
      labels:
        app: zaaksysteem
    spec:
      securityContext:
        runAsNonRoot: true
        seccompProfile:
          type: RuntimeDefault
      containers:
        - name: zaaksysteem
          image: registry.organisatie.nl/zaaksysteem:v2.1.0
          securityContext:
            allowPrivilegeEscalation: false
            readOnlyRootFilesystem: true
            capabilities:
              drop: ["ALL"]
          resources:
            limits:
              memory: "512Mi"
              cpu: "500m"
            requests:
              memory: "256Mi"
              cpu: "250m"
          ports:
            - containerPort: 8080
          livenessProbe:
            httpGet:
              path: /healthz
              port: 8080
          readinessProbe:
            httpGet:
              path: /ready
              port: 8080

Verwerkersovereenkomst cloud

ClausuleVereiste
DoelConcreet beschreven; geen verwerking voor eigen doel leverancier
SubverwerkersLijst bijgehouden; voorafgaande toestemming bij wijziging
DatalocatieEU/EER; expliciet benoemen welke regio's
AuditRecht op audit door verwerkingsverantwoordelijke
DatalekmeldingMelding aan opdrachtgever binnen 24 uur (strenger dan AVG 72 uur)
Einde contractData-retournering en -verwijdering met bewijs
BeveiligingMinimaal BIO BBN2; ISO 27001 certificering

Implementatie-checklist

  • Dataclassificatie: alle data geclassificeerd (openbaar/vertrouwelijk/staatsgeheim)
  • BIO-classificatie: BBN-niveau vastgesteld
  • Risicoanalyse: cloudspecifieke risicobeoordeling uitgevoerd
  • Datalocatie: bevestigd dat data in EU/EER wordt opgeslagen
  • Encryptie: at rest (AES-256) en in transit (TLS 1.2+) geactiveerd
  • BYOK: Bring Your Own Key ingericht (BBN3: verplicht)
  • MFA: multi-factor authenticatie voor alle beheertoegang
  • Logging: cloud-auditlogging geactiveerd en gekoppeld aan SIEM
  • Verwerkersovereenkomst: afgesloten conform AVG Art. 28
  • Subverwerkers: lijst inzichtelijk; wijzigingsprocedure afgesproken
  • Exit-strategie: gedocumenteerd; data-export getest; alternatief geidentificeerd
  • DPIA: uitgevoerd als persoonsgegevens worden verwerkt
  • SLM: strategisch leveranciersmanagement ingericht
  • Haven: bij Kubernetes: Haven-compliant deployment

Gerelateerde skills

SkillWanneer te gebruiken
nora-architectuurBIO-beveiligingseisen en verplichte open standaarden
avg-privacyAVG-eisen voor cloudverwerking van persoonsgegevens
dpia-assessmentDPIA uitvoeren bij cloudmigratie met persoonsgegevens
gemma-common-groundHaven container platform en Common Ground architectuur
digitale-soevereiniteitCLOUD Act, soevereine hosting, data residency voor AI-workloads
overheid-authenticatieDigiD/eHerkenning in cloudomgevingen

Meer informatie

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.