Ga naar inhoud
FTV Beeldmerk

Federatieve Toegangsverlening

< Vorig artikel

OpenFTV algemeen

Van beleid naar beleidsregels

Het beleid rondom laadpalen bestaat uit een deel gemeentelijk besluit, en deels uit overeenkomsten met de Rijksdienst voor Identiteitsgegevens (RvIG) en met de Rijksdient voor het Wegverkeer (RDW).

Hier werken we het complete fictieve beleid stap voor stap uit in beleidsregels. Onder elke beleidsregel staat een link naar het overeenkomstige bestand in de OpenFTV repository.

Gemeentelijk beleid

Het zaaksysteem is het werkgebied van de gemeente zelf. Zij besluit zelf wat ze aan doelbindingen heeft, welke gegevens bij die doelbindingen gebruikt mogen worden en wie die gegevens mag verwerken.

Doelbinding

In dit geval heeft de gemeente een nieuwe doelbinding bedacht, die van een laadpaalvergunning. En als actie daarbij in ieder geval het aanvragen van een laadpaalvergunning. Dit kan in een beleidsregel in Cedar als volgt worden opgeschreven:


forbid (
    principal,
    action == name::"aanvragen",
    resource is laadpaalVergunning
)
unless {
    context has doelbinding &&
    context.doelbinding == "laadpaal-vergunning"
};

Link naar repository

Dataminimalisatie

Vervolgens legt de gemeente zich beperkingen op in het kader van dataminimalisatie.

  • Van de persoonsgegevens zijn alleen BSN, NAW en meerderjarigheid relevant. Het RvIG levert meer, maar dat mag niet gebruikt worden door het zaaksysteem als het gaat om laadpaalvergunningen.
  • Van de voertuiggegevens zijn alleen kenteken en de uitstootklasse nodig.

Dit wordt gerealiseerd doordat de beleidsregel een obligation toevoegt aan het antwoord die opsomt welke velden behouden moeten worden. En dat impliceert dat alle ander velden weggelaten moeten worden.

In Rego ziet dat er zo uit:


context := {"obligations": [{
    "type": "custom",
    "id": "laadpaalvelden",
    "properties": {
        "action": "filter_fields",
        "keep": ["bsn", "voornamen", "geslachtsnaam", "gemeente", "volwassen"],
    },
}]}

Link naar repository

Afdeling

Aanvragen van de laadpaalvergunningen is alleen toegestaan aan medewerkers van de afdeling burgerzaken. Welke afdelingen iemand werkt is geconfigureerd in het gebruikersbeheer, en kan in de beleidsregel uitgelezen worden als eigenschap van de Principal.


@reason("afdeling")
forbid (
    principal,
    action == name::"aanvragen",
    resource is laadpaalAanvraag
)
unless {
    principal has afdeling &&
    principal.afdeling == "Burgerzaken"
};  

Link naar repository.

Verplichte opleiding

Voor het beheer van de vergunningen heeft de gemeente een opleiding gemaakt, en het met goed gevold afleggen van het bijbehorende examen is vereist voor het aanvragen van een vergunning.


@reason("opleiding")
forbid (
    principal,
    action == name::"aanvragen",
    resource is laadpaalAanvraag
)
unless {
    principal has "laadpaal-opleiding"
};

Link naar repository.

Daarnaast mag het diploma mag niet meer dan een jaar oud zijn.


@reason("verlopen opleiding")
forbid (
    principal,
    action == name::"aanvragen",
    resource is laadpaalAanvraag
)
unless {
    context has now &&
    datetime(context.now).durationSince(datetime(principal["laadpaal-opleiding"])) <= duration("365d")
};

Link naar repository.

RvIG

In deze demonstratie komen de persoonsgegevens van een fictieve verschijning van de RvIG. Deze beheert onder andere de landelijke voorziening BRP.

Toegang tot de BRP wordt in eerste instantie verleend via een zogenaamd besluit. Elke gemeente dient ’een taak van algemeen belang of uitoefening van openbaar gezag’, en heeft daarvoor persoonsgegevens nodig. Als basis is er een landelijk besluit, en per gemeente wordt een specifiek autorisatiebesluit genomen, hier een voorbeeld van de gemeente Utrecht. Als bijlage bij elk besluit is er een autorisatietabel, ook wel ‘kruisjeslijst’, waarin staat welke velden die gemeente voor welk soort bevraging gaat ontvangen. Hier als voorbeeld de kruisjeslijst van Utrecht.

Dit besluit is op gemeenteniveau, niet op doelbindingniveau. De gemeente moet zelf in de gaten houden dat de gegevens beperkt worden tot wat nodig is voor een specifieke doelbinding. De volgende beleidsregel voldoet daarom:


package doelbinding["identificatie-en-ingezetenschap"]

import rego.v1

allow := true

Link naar repository.

Een beperking die wel opgelegd wordt is dat alleen ingezetenen van de eigen gemeente mogen worden ingezien. RvIG controleert daarop door de ‘afnemersindicatie’, een unieke nummering van afnemers waarvan Vlierdam er een is, te vergelijken met de ‘gemeentecode’ die bij elke burger is opgenomen.


package doelbinding["identificatie-en-ingezetenschap"]

import rego.v1

allow := true

Link naar repository.

RDW

De fictieve versie van de RDW beheert de Basisregistratie Voertuigen (RDW). Toegang werkt net als bij de BRP via een algemeen landelijk besluit en een specifiek besluit per afnemer.

De meeste gemeenten, waaronder Vlierdam, mogen niet de kentekens van diplomatieke voertuigen inzien. Deze personen zijn beschermd en mogen alleen door afnemers zoals de marechaussee ingezien worden.


package doelbinding["laadinfra-verificatie"]

import rego.v1

default allow := false

default reason := ""

allow if not input.context.response

allow if input.context.response.status >= 300

# Scenario 1: RDW doesn't share diplomatic vehicles. Scenario 2 replaces this rule and the next with
# `allow if input.context.response`, leaving it to the gemeente to show them to the Gemeentesecretaris only.
allow if {
is_array(input.context.response.body)
not has_diplomatic_vehicle
}

has_diplomatic_vehicle if {
some voertuig in input.context.response.body
voertuig.diplomatiek == true
}

reason := "RDW verstrekt geen gegevens over diplomatieke voertuigen" if not allow

context := {"reason": reason} if reason != ""

Link naar repository.

< Vorig artikel

OpenFTV algemeen