Skip to content

Publiceer nieuwe versie #11

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 24 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
f9128b2
PR trigger
sanderke Jan 14, 2022
f15b58c
sync build.yml
logius-standaardenbeheer Feb 23, 2022
3717ff8
sync build.yml
logius-standaardenbeheer Feb 24, 2022
497b5c8
data-include-format
logius-standaardenbeheer Apr 4, 2022
bb813fb
Update config.js
sanderke Apr 6, 2022
3a473c5
colofon postcode
logius-standaardenbeheer Aug 26, 2022
cb1a326
Issue formulieren
wisze Oct 27, 2022
daeaa20
Reusable publish workflow
logius-standaardenbeheer Mar 14, 2023
0d8b5e3
gitdocumentatie (#3)
logius-standaardenbeheer May 3, 2023
0ee8bf9
cleanup
sanderke Oct 25, 2023
a0d8679
sync wijzigingsformulier.yml
logius-standaardenbeheer Nov 15, 2023
04ad236
update
PHaasnoot Aug 30, 2024
f82f2f7
Update ch04_TLS .md
PHaasnoot Sep 10, 2024
107b27c
Update ch01_Inleiding.md
PHaasnoot Sep 10, 2024
25bda02
Add files via upload
sanderke Sep 10, 2024
dc439d8
Nieuwe refs
sanderke Sep 10, 2024
a1c436e
DK portaal als ref
sanderke Sep 10, 2024
d576d31
Update ch05_Cipher suites voor TLS, signing en encryptie .md
PHaasnoot Sep 11, 2024
df24747
Update ch05_Cipher suites voor TLS, signing en encryptie .md
logius-standaardenbeheer Sep 16, 2024
6f13002
Update ch05_Cipher suites voor TLS, signing en encryptie .md
logius-standaardenbeheer Sep 16, 2024
40b70d1
Update ch05_Cipher suites voor TLS, signing en encryptie .md
logius-standaardenbeheer Sep 17, 2024
bb95ea3
Update ch04_TLS .md
logius-standaardenbeheer Sep 17, 2024
26ba6b8
Merge pull request #7 from Logius-standaarden/2024-08-review-ph
sanderke Sep 20, 2024
8c2a1e6
Beheer: update digikoppeling overzicht met linkjes (#10)
TimvdLippe Feb 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .github/ISSUE_TEMPLATE/aanpassing_documentatie.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Aanpassing op documentatie
description: Stel een (tekstueele) wijziging voor in de documentatie van de Digikoppeling standaard
title: "RFC ..."
labels: ["digikoppeling", "documentatie"]
body:
- type: checkboxes
id: standaard
attributes:
label: Soort
description: Om wat voor wijziging gaat het?
options:
- label: Tekstuele fout
- label: Verbetersuggestie
- label: Onduidelijke tekst
- type: textarea
id: omschrijving
attributes:
label: Omschrijving
description: Wat is de voorgestelde wijziging? Op welke pagina of sectie staat het?
placeholder: Tik hier uw voorgestelde wijziging
validations:
required: true
- type: input
id: contact
attributes:
label: Naam
description: Naam. Uw naam wordt online getoond in het issue. U kunt ook anoniem invullem.
validations:
required: false
- type: input
id: email
attributes:
label: Email
description: E-mail adres. Uw e-mail adres wordt online getoond in het issue. U kunt ook anoniem invullem.
validations:
required: false
- type: input
id: organisatie
attributes:
label: Organisatie
description: Naam van uw organisatie. Dit veld is verplicht omdat we deze in het overzicht opnemen.
validations:
required: true
46 changes: 0 additions & 46 deletions .github/ISSUE_TEMPLATE/opmerkingen.md

This file was deleted.

26 changes: 0 additions & 26 deletions .github/ISSUE_TEMPLATE/vragen.md

This file was deleted.

34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/wijzigingsformulier.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Wijzigingsformulier
description: Stel een (inhoudelijke) wijziging voor op de Digikoppeling standaard. Voor een tekstuele wijziging op de documentatie bestaat een ander formulier.
title: "RFC ..."
labels: ["Standaard: digikoppeling", "Type: wijziging"]
body:
- type: textarea
id: omschrijving
attributes:
label: Omschrijving
description: Wat is de voorgestelde wijziging?
placeholder: Vul hier de voorgestelde aanpassing in
validations:
required: true
- type: input
id: contact
attributes:
label: Naam
description: Naam. Uw naam wordt online getoond in het issue. U kunt ook anoniem invullen.
validations:
required: false
- type: input
id: email
attributes:
label: Email
description: E-mailadres. Uw e-mailadres wordt online getoond in het issue. U kunt ook anoniem invullen.
validations:
required: false
- type: input
id: organisatie
attributes:
label: Organisatie
description: Naam van uw organisatie. Dit veld is verplicht omdat we deze in het overzicht opnemen.
validations:
required: true
60 changes: 20 additions & 40 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,40 +1,20 @@
on:
workflow_dispatch:
jobs:
main:
name: HTML
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- run: npx respec --localhost --src index.html --out snapshot.html
- uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: static HTML
wcag:
needs: main
name: WCAG
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- run: git pull
- run: npm install -g pa11y
- run: pa11y ./snapshot.html
pdf:
needs: main
name: PDF
runs-on: ubuntu-20.04
steps:
- run: |
sudo apt-get install -y xfonts-base xfonts-75dpi
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb -O wkhtmltopdf.deb
sudo dpkg -i wkhtmltopdf.deb
- uses: actions/checkout@v2
- run: git pull
- run: wkhtmltopdf --enable-local-file-access snapshot.html doc.pdf
- run: |
wget https://raw.githubusercontent.com/Logius-standaarden/Digikoppeling-Algemeen/main/scripts/pdf-name.py
python pdf-name.py
rm pdf-name.py
- uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: PDF
name: Build and Check
on:
workflow_dispatch:
pull_request:
push:
branches:
- main
jobs:
build:
name: Build
uses: Logius-standaarden/Automatisering/.github/workflows/build.yml@main
check:
needs: build
name: Check
uses: Logius-standaarden/Automatisering/.github/workflows/check.yml@main
publish:
needs: build
name: Publish (Logius)
uses: Logius-standaarden/Automatisering/.github/workflows/publish.yml@main
secrets: inherit
2 changes: 1 addition & 1 deletion 03_colofon.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

| | |
|---|---|
| Logius Servicecentrum: | Postbus 96810 2509<br>JE Den Haag<br>t. 0900 555 4555 (10 ct p/m)<br>e.<[email protected]> |
| Logius Servicecentrum: | Postbus 96810 <br>2509 JE Den Haag<br>tel. 0900 555 4555 (10 ct p/m)<br>email [email protected] |
Binary file not shown.
7 changes: 3 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# Digikoppeling Beveiligingstandaarden en voorschriften

- html: https://logius-standaarden.github.io/Digikoppeling-Beveiligingsstandaarden-en-voorschriften/
- html(static): https://logius-standaarden.github.io/Digikoppeling-Beveiligingsstandaarden-en-voorschriften/snapshot.html
- markdown: [04_content.md](04_content.md)/
- PDF-versie: https://github.com/Logius-standaarden/Digikoppeling-Beveiligingsstandaarden-en-voorschriften/blob/master/Digikoppeling-Beveiligingsstandaarden-en-voorschriften.pdf
- Gepubliceerde versie: https://gitdocumentatie.logius.nl/publicatie/dk/beveilig/
- Werkversie: https://logius-standaarden.github.io/Digikoppeling-Beveiligingsstandaarden-en-voorschriften/
- PDF: https://gitdocumentatie.logius.nl/publicatie/dk/beveilig/Digikoppeling-Beveiligingsstandaarden-en-voorschriften.pdf
37 changes: 32 additions & 5 deletions ch01_Inleiding.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,40 @@ De koppelvlakstandaarden dienen te leiden tot een maximum aan interoperabiliteit

## Digikoppeling standaarden

De Digikoppeling standaarden bestaan uit de volgende documenten (groene blokken zijn onderdeel van de Digikoppeling standaard):
De documentatie is als volgt opgebouwd:

*Specificatie van de koppelvlakstandaarden*
<figure>
<object data="https://logius-standaarden.github.io/publicatie/dk/actueel/media/DK_Specificatie_structuur.svg" type="image/svg+xml" id="infographic">Overzicht van de onderdelen van de Digikoppeling Standaard, de standaard is onderverdeeld in normatieve en ondersteunende onderdelen</object>
<figcaption>Opbouw documentatie Digikoppeling</figcaption>
</figure>

De koppelvlakspecificatie beschrijft de eisen die gesteld worden aan de adapters om interoperabel met elkaar te kunnen communiceren. De hele set informatie die tezamen nodig is voor een complete generieke Digikoppeling koppelvlakdefinitie bestaat uit:
<b>Legenda</b>

- Interfacedefinitie.

- Beveiligingsvoorschriften en standaarden voor de transport laag, signing en encryptie (cipher suites).
<table class="legendum">
<thead>
<tr>
<th><strong>Kleur</strong></th>
<th><strong>Soort Document</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td class="green">Groen</td>
<td>Standaard documentatie</td>
</tr>
<tr>
<td class="grey">Grijs</td>
<td>Ondersteunende documentatie</td>
</tr>
</tbody>
</table>


<b>Beheer</b>

- De standaarddocumenten (groen/vierkant aangegeven) vallen onder het beheer zoals geformaliseerd in het document [[[?DK-Beheermodel]]].

- De ondersteunende documentatie wordt onderhouden door Logius als de beheerder van de standaard (en afgestemd met stakeholders/ gebruikers).

- Alle goedgekeurde documenten zijn te vinden op de website van Logius, [www.logius.nl](https://www.logius.nl/onze-dienstverlening/domeinen/gegevensuitwisseling/digikoppeling).
5 changes: 2 additions & 3 deletions ch02_Identificatie.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ Het organisatie identificatienummer (OIN) is het identificerende nummer voor org

De bron voor identificatie van organisaties is een erkend register dat is opgenomen in het OIN beleid. In de meeste gevallen is dit het Handelsregister. Het OIN kan worden opgezocht in het OIN Register.

Zie [[?Digikoppeling Identificatie-Authenticatie]]] voor meer informatie.

Het OIN register is bereikbaar op [*https://portaal.digikoppeling.nl/registers/*](https://portaal.digikoppeling.nl/registers/).
Zie [[[?DK-IDAuth]]] voor meer informatie.

Het OIN register is bereikbaar via het [[[DK-Portaal]]].
10 changes: 5 additions & 5 deletions ch03_PKIoverheid certificaten.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@

| Standaarden | Status | Genoemd in |
| --- | --- | --- |
| PKIoverheid certificaten & CRL Profile | Verplicht | PKIoverheid Programma van Eisen [[PKI Policy]], [[rfc3447]]|
| PKIoverheid certificaten & CRL Profile | Verplicht | [[[PKIO-PvE]]], [[rfc3447]]|

## Wat is PKIoverheid?

### PKIoverheid

PKIoverheid is de public key infrastructure in Nederland waarmee PKIoverheid certificaten worden uitgegeven en toegepast conform afspraken die zijn vastgelegd in het PKIoverheid Programma van Eisen.

Zie ook het document [[?Digikoppeling-Cert]] en [[?PKIoverheid]]
Zie ook het document [[[?DK-gbachtcert]]] en [[[?PKIoverheid]]]

### PKIoverheid certificaat

Expand All @@ -26,17 +26,17 @@ Digikoppeling vereist dat de communicatiepartners PKIoverheid private root certi

| Nr | Voorschrift | Toelichting |
| --- | --- | --- |
| PKI001 | Gebruik OIN in subject serial number veld is verplicht | Dit is afgesproken met de TSPs in de Digikoppeling Overeenkomsten. Zij verstrekken PKIoverheid certificaten met het OIN in het subject.serialnumber field conform de OIN systematiek als het een certificaat betreft dat voor Digikoppeling wordt gebruikt. [[PKI CA]] |
| PKI001 | Gebruik OIN in subject serial number veld is verplicht | Dit is afgesproken met de TSPs in de Digikoppeling Overeenkomsten. Zij verstrekken PKIoverheid certificaten met het OIN in het subject.serialnumber field conform de OIN systematiek als het een certificaat betreft dat voor Digikoppeling wordt gebruikt. [[PKI-CA]] |
| PKI002 | PKIoverheid certificaat moet geldig zijn (het mag niet zijn verlopen of ingetrokken). | |
| PKI003<br>(WT004) | De geldigheid van het certificaat wordt getoetst met betrekking tot de geldigheidsdatum en de Certificate Revocation List(CRL) die voldoet aan de eisen van PKI-overheid. | |
| PKI004<br>(WT005) | De betreffende CRL dient zowel voor de versturende als ontvangende partij te benaderen zijn. | |
| PKI005 | Het certificaat moet zijn van het type PKIoverheid private root (PKI Staat der Nederlanden Private Root) <sup>1</sup>. <br><br><sup>1</sup> Uitzondering is wanneer er in het kader van certificaatbeheer op 1 server reden is om PKIO public root certificaten te gebruiken voor zowel koppeling als voor webserver. Hier dienen dan bilateraal afspraken over te worden gemaakt tussen de partijen.<br>(Bij gebruik van PKIO public root certificaten is een specifieke eis en aandachtspunt dat deze vanwege externe regelgeving altijd binnen drie tot vijf dagen vervangen moeten kunnen worden.)<br>Deze uitzondering is toegestaan tot 01-12-2022<br><br>Voor Serviceaanbieders en Servicegebruikers geldt dat zij uiterlijk per 1-1-2021 gebruik moeten maken van private root certificaten| PKIOverheid geeft aan dat voor machine-naar-machine (M2M) verkeer (zoals Digikoppeling) Private root certificaten gebruikt dienen te worden.|
| PKI005 | Het certificaat moet zijn van het type PKIoverheid private root (PKI Staat der Nederlanden Private Root) <br>Voor Serviceaanbieders en Servicegebruikers geldt dat zij vanaf 1-1-2021 gebruik moeten maken van private root certificaten| PKIOverheid geeft aan dat voor machine-naar-machine (M2M) verkeer (zoals Digikoppeling) Private root certificaten gebruikt dienen te worden.|

### PKIoverheid programma van eisen

1. Een PKIoverheid certificaat dient conform de eisen van het PKIoverheid PvE te worden uitgegeven door de Trust Service Providers (TSP).

1. De te gebruiken certificaten in de productie omgeving voldoen aan de eisen van PKIoverheid (PvE) en de inhoud van de identificerende velden in het certificaat dienen te voldoen aan de afspraken zoals gesteld in de functionele eisen in het document [[?Digikoppeling Identificatie-Authenticatie]]. Met het toepassen van PKIoverheid-certificaten die Digikoppeling compliant zijn, wordt hieraan voldaan.
1. De te gebruiken certificaten in de productie omgeving voldoen aan de eisen van PKIoverheid (PvE) en de inhoud van de identificerende velden in het certificaat dienen te voldoen aan de afspraken zoals gesteld in de functionele eisen in het document [[[?DK-IDAuth]]]. Met het toepassen van PKIoverheid-certificaten die Digikoppeling compliant zijn, wordt hieraan voldaan.

1. Certificaten voor productie wijken af van certificaten voor test doordat zij op verschillende ‘roots’ zijn gebaseerd, respectievelijk 'Staat der Nederlanden Root Private Root’ en ‘PKI TRIAL root’.

Expand Down
12 changes: 8 additions & 4 deletions ch04_TLS .md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# TLS
# TLS (Transport Layer Security)

Transport Layer Security (TLS) is een protocol dat een veilige versleutelde verbinding legt tussen systemen waardoor gegevens vertrouwelijk en compleet wordt uitgewisseld. Binnen de context van Digikoppeling verplicht TLS het gebruik van wederzijde authenticatie van de betrokken partijen, zodat alleen geautoriseerde systemen kunnen communiceren met elkaar.

## Standaarden

Expand All @@ -18,15 +20,17 @@
| TLS004 | Een Serviceaanbieder is <span class="underline">verplicht</span> TLS versie 1.2 te ondersteunen, daarnaast is het <span class="underline">aanbevolen</span> voor een Serviceaanbieder om TLS versie 1.3 te ondersteunen. Als een Serviceaanbieder TLS versie 1.3 aanbiedt dan is het aanbevolen voor Serviceafnemers om TLS 1.3 te gebruiken | NCSC geeft aan: “De beste bescherming wordt momenteel geboden door de meest recente TLS versie: TLS 1.3” Zie [[NCSC 2021]] |
||TLS 1.0 en TLS 1.1 zijn niet meer toegestaan|Niet meer toegestaan binnen de Digikoppeling standaard vanaf 10-9-2016 |
| TLS005 | Het is verplicht voor communicatie over HTTPS port 443 te gebruiken | Port 443 is de standaard poort voor HTTPS verkeer |
| TLS006 | Het is verplicht te voldoen aan de NCSC ICT-beveiligingsrichtlijnen voor TLS | Zie H3 van [[NCSC 2021]] |
| TLS006 | Het is verplicht te voldoen aan de NCSC ICT-beveiligingsrichtlijnen voor TLS | Zie H3 van [[NCSC 2021]] (*) |

(*) Zie https://www.ncsc.nl/documenten/publicaties/2023/september/18/maak-je-organisatie-quantumveilig voor specifieke adviezen NCSC/AIVD t.a.v. Post Quantum Cryptografie

## Onderbouwing

Zowel de Digikoppeling-koppelvlakstandaard ebMS2 als de Digikoppeling-koppelvlakstandaard WUS en Digikopppeling-koppelvlakstandaard Grote Berichten schrijven het gebruik voor van (tweezijdig) TLS om de berichtenstroom te beveiligen. Het protocol TLS heeft betrekking op het communicatiekanaal. De Digikoppeling-koppelvlakstandaarden stellen deze eis dus aan de transportlaag en aan de authenticatie van organisaties.

In Digikoppeling is ervoor gekozen om PKIoverheid certificaten te gebruiken op het niveau van het communicatiekanaal (TLS) om de directe communicatiepartners te authenticeren. TLS kan niet toegepast worden om end-to-end authenticatie uit te voeren in een multi-hop (voor ebMS2) omgeving; zie daarvoor berichtniveau beveiliging in de [[?Digikoppeling Architectuur]] documentatie.
In Digikoppeling is ervoor gekozen om PKIoverheid certificaten te gebruiken op het niveau van het communicatiekanaal (TLS) om de directe communicatiepartners te authenticeren. TLS kan niet toegepast worden om end-to-end authenticatie uit te voeren in een multi-hop (voor ebMS2) omgeving; zie daarvoor berichtniveau beveiliging in de [[[?DK-Architectuur]]] documentatie.

## Overwegingen

Het NCSC adviseert om TLS altijd te configureren op basis van [[NCSC 2021]] voor Transport Layer Security].
Het NCSC adviseert om TLS altijd te configureren op basis van [[NCSC 2021]] voor Transport Layer Security.

7 changes: 4 additions & 3 deletions ch05_Cipher suites voor TLS, signing en encryptie .md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

| Nr | Voorschrift | Toelichting |
| --- | --- | --- |
| TLSCIPH001 | De gebruikte TLS cryptografische algoritmen moeten de NCSC classificatie ‘voldoende’ of ‘goed’ hebben. TLS cryptografische algoritmen met de NCSC classificatie ‘uit te faseren’ dienen zo spoedig mogelijk maar uiterlijk 01-01-2021 te worden uitgefaseerd. | Zie [[NCSC 2021]] |
| TLSCIPH001 | De gebruikte TLS cryptografische algoritmen moeten de NCSC classificatie ‘voldoende’ of ‘goed’ hebben. TLS-cryptografische algoritmen die de NCSC-classificatie ‘uit te faseren’ hebben, zijn sinds 1 januari 2021 niet meer toegestaan. | Zie [[NCSC 2021]] |

## XML Signing

Expand Down Expand Up @@ -39,5 +39,6 @@ In plaats daarvan is het dus wenselijk om gebruik te maken van een algoritme dat
| --- | --- | --- |
| ENC001 | Indien er gebruik wordt gemaakt van XML encryption op payload niveau dient de FIPS 197 standaard (AES) te worden gebruikt. | [[AES]] |
| ENC002 | Encryptie conform XML versleuteling [[xmlenc-core]] is verplicht | [[xmlenc-core]] |
| ENC003 | De ondersteunde data encryption (data versleuteling) algoritmen zijn: 3DES AES128 AES256 | [[xmlenc-core]] (Gebruik GCM mode indien beschikbaar anders CBC mode in combinatie met een signature) |
| ENC004 | Het Key transport algorithm maakt gebruik van de RSA-OAEP algoritmen. | [[rfc5756]], [xmlenc-core], [[rfc5756]]|
| ENC003 | De ondersteunde data encryption (data versleuteling) algoritmen zijn: _3DES(*)_ AES128 AES256 | [[xmlenc-core]] (Gebruik GCM mode indien beschikbaar anders CBC mode in combinatie met een signature) <BR><BR>(*) 3DES Encryptie - 2024:Verouderd, Vanaf 2025:Niet Gebruiken.<BR> 3DES Decryptie - Toegestaan voor Legacy applicaties; |
| ENC004 | Het Key transport algorithm maakt gebruik van de RSA-OAEP algoritmen. | [[rfc5756]], [[xmlenc-core]], [[rfc5756]]|

Loading