Doorsturen $_POST variable

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software Ontwikkelaar

Functieomschrijving In deze uitdagende functie als Software Developer ga je de volgende taken uitvoeren: Maatwerk back-end software programmeren; API koppelingen bouwen; Software optimaliseren voor klanten; Bouwen maatwerk applicaties; Werken met Microsoft stack zoals C#, .NET (Core) en Entity framework; Bedrijfsprofiel Je gaat werken bij een klein softwareontwikkelingsbureau, die maatwerk software bouwt voor klanten door heel Nederland. Dit doen zij al meer dan 20 jaar. Het is van oorsprong een familiebedrijf, opgezet door de eigenaar, die er nog steeds werkt. Het team bestaat vooral uit back-end developers en één systeembeheerder. Je krijgt veel kans om jezelf te ontwikkelen en krijgt tevens

Bekijk vacature »

Senior .NET developer

Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare waarde. Je werkt samen met ruim 35 IT-professionals aan zowel greenfield- als legacy-projecten. Dat doe je samen met ontwikkelaars, data engineers, product owners en technisch-/functioneel beheerders. In jouw rol maak je onderdeel uit van een kleiner scrumteam dat zich richt op één specifieke productstroom. Concreet hou jij je bezig met het ontwikkelen van applicaties en services op basis van ASP.NET Core en Blazor. Ook denk en werk je mee aan de continue verbetering en professionalisering van het ontwikkelproces (ondersteund

Bekijk vacature »

Medior PHP Developer

Functie omschrijving We are looking for a dutch native speaker Wil jij als developer werken bij een interne organisatie en de eigen software verder helpen ontwikkelen? Lees dan snel verder! In deze functie ga je werken als PHP Developer en de interne software en applicaties verder ontwikkelen. In het kort houdt dit in: Je gaat de interne applicaties en software verder optimaliseren. Verder bouw je verschillende API's en koppelingen tussen systemen. Je gaat het CRM-systeem door middel van PHP verder ontwikkelen. Ook ga je collega's ondersteunen bij vragen over de software en applicaties. Bedrijfsprofiel Dit bedrijf is actief in het

Bekijk vacature »

Medior PHP - Develop direct en zelfstandig in team

Bedrijfsomschrijving Houd jij ervan om in team te werken waar zo goed als alles tegen elkaar gezegd kan worden? Het team bestaat uit ongeveer 10 professionals waarin direct met elkaar gecommuniceerd wordt. Dit resulteert in een informele maar prettige werksfeer met mensen van een gemiddelde leeftijd van 30 jaar. Een sterke mening wordt hier gewaardeerd. Ons bedrijf stelt zich op als partner voor onze klanten afkomstig uit verschillende branches. En dat maakt het werk divers en uitdagend. De opdrachtgever verwacht telkens opnieuw positief verrast te worden met het maatwerk dat door ons geleverd wordt. In de conceptfase leidt jouw argumentatie

Bekijk vacature »

JavaScript Developer

Dit ga je doen Ontwikkelen van Product Informatie Management (PIM) systemen; Werken aan zowel grotere als kleine projecten voor toonaangevende klanten binnen o.a. de retail; Verantwoordelijk voor de backend werkzaamheden; Naast de backend werk je ook aan de front-end; Je denkt proactief mee om processen te verbeteren en nieuwe tools te ontwikkelen. Hier ga je werken Als JavaScript Developer kom je te werken binnen een vooruitstrevende organisatie die Product Informatie Management (PIM) systemen levert aan hun klanten. Hun klanten zijn toonaangevende bedrijven binnen o.a. de retail. De organisatie is gevestigd in regio Zwolle en bestaat uit zo'n 35 medewerkers, waarvan

Bekijk vacature »

Backend developer

Functie omschrijving Ben jij graag bezig met de back-end van applicaties? Zou je dit graag willen doen voor een kleine werkgever waar ook tijd is voor een drankje op zijn tijd? Je taken hierbij zullen bestaan uit: Gebruik maken van de volgende technieken: .NET (core), C#, SQL, XML, MVC, JSON, REST & SOAP API. Gebruik maken van de volgende tools: Visual Studio, GIT, Jira, Jenkins. Bovengenoemde technieken en tools ga je gebruiken om: Nieuwe functionaliteiten te ontwikkelen. Wijzigingsverzoeken van klanten uitvoeren. Verzorgen van koppelingen tussen data. Bedrijfsprofiel Jouw nieuwe werkgever bevindt zich in regio Raamdonksveer en bieden oplossingen op gebied

Bekijk vacature »

Software Developer PHP

Functie omschrijving PHP Software Developer gezocht! Wij zoeken een PHP Software Developer die voor een organisatie gaat functioneren als verlengstuk van de klant. Wij zoeken voor deze functie iemand die enthousiast wordt van technisch complexe zaken. In deze functie werk je veel samen met de front-end developers van het bedrijf en zorg je voor grote verschillen bij de klant. Verder zoekt dit bedrijf iemand die. Instaat is om aan meerdere projecten tegelijkertijd te werken; Graag werkt met de nieuwste technieken; Zichzelf graag uitdaagt en die altijd de beste wilt zijn. Bedrijfsprofiel Je nieuwe thuis? De organisatie waar je voor gaat

Bekijk vacature »

Front-end Developer vue.js node.js SaaS

Dit ga je doen Het ontwikkelen van nieuwe features die bijdragen aan de groei van de klanten van de organisatie; Je denkt mee over nieuwe innovaties, features en verbeteringen in de applicatiearchitectuur; Je draagt bij aan de continue ontwikkeling van jouw team doordat je elke dag streeft naar het verbeteren van jouw eigen prestaties; Je neemt actief deel aan Scrum meetings en de Frontend Guild. Hier ga je werken Voor een snel groeiend bedrijf de regio Nieuw Vennep zijn wij opzoek naar een ervaren Front-end Developer. De organisatie is actief in de e-commercebranche en ontzorgt haar klanten middels een SaaS-platform.

Bekijk vacature »

Functional Application Manager (all genders)

TenneT is growing fast to realize its strategic ambitions. We play a leading role in driving the energy transition. We are looking for a passionate Functional Application Manager (all genders) at our locations Bayreuth (GE) or Arnhem (NL) who will contribute to this and that might be you? Your contribution to TenneT You are responsible for the optimal functioning of Generic IT applications within an international agile working team. Satisfied users are your top priority. You move between the various internal and external suppliers that you need to make these IT services work. You are able to negotiate with both

Bekijk vacature »

Programmeur

Functieomschrijving Werken aan diverse projecten o.a. met PHP, Java en Linux; Leveren van communicatienetwerken met een hoge beveiligingsgraad; Ontwikkelen van technische Open Source software; Schrijven en onderhouden van technische specificaties. Bedrijfsprofiel Onze opdrachtgever is een infra en security specialist en richt zich als gespecialiseerd IT bedrijf op alles omtrent netwerken, communicatiesoftware, hosting en verbindingen. Klanten worden volledig ontzorgd, zowel in house / remote, als op locatie. Je hebt frequent en intensief klantcontact en ervaart veel vrijheid in het nemen van initiatieven en het aandragen van ideeën en oplossingen. Ze zijn gevestigd in omgeving Gouda en werken vanuit een mooi kantoorpand

Bekijk vacature »

Java Programmeur

Functie Heb jij altijd al samen willen werken met ervaren java ontwikkelaars dan hebben wij hier de ultieme kans voor jou! Voor een opdrachtgever in omgeving van Naaldwijk zijn wij op zoek naar uitbreiding van het vaste ontwikkel team. Je zult je hier voornamelijk bezig gaan houden met; Wijzigingsverzoeken van klanten uitvoeren, hier wordt je diep in betrokken; Samen met consultants sluit je aan bij gesprekken met klanten, voor alle projecten; Je schakelt veel met consultants, wat is de behoefte van de klant? Hoe kan je hierop integreren?; Het framework moet naar de Cloud gebracht worden, je wordt betrokken bij

Bekijk vacature »

Back-end Developer

Functie omschrijving We are looking for a dutch native speaker Voor een logistieke klant in de regio van Oss ben ik op zoek naar een Fullstack Ontwikkelaar. Jij kan coderen als geen ander! In deze functie ben je verantwoordelijk voor het ontwerpen van webapplicaties en desktopapplicaties. Dit ga je doen door middel van de technieken C# en ASP.NET. Jij hebt direct contact met klanten en schakelt veel met collega's. Verder heb je de volgende werkzaamheden: Klantwensen vertalen naar C#-oplossingen; Ontwerpen en implementeren van nieuwe applicaties; Implementeren en onderhoud bestaande applicaties; Overleg voeren met het IT team(andere developers) Troubleshooten op gebied

Bekijk vacature »

Back-end Developer Java

Dit ga je doen Het (door)ontwikkelen van een zelfgebouwde applicatie in Java, Spring Framework, SQL, HTML, CSS en Javascript; End-to-end beheer m.b.t. de applicatie en koppelen van applicaties binnen het landschap; Ontwikkelen van rapportages voor de interne organisatie; Ontwikkelen van aanvullende functionaliteiten m.b.t. de applicatie; Uitvoeren van testen en code reviews. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die medische gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen en verbeteren van de kwaliteit van de zorg in heel Nederland.

Bekijk vacature »

Senior Android Developer

As a Senior mobile developer, you will contribute to the digital transformation of our clients. You will take part in a self-organizing multi-disciplined mobile platform. You have at least five years' experience with mobile development. Working together as a team and collaborate is really important. As a member of a multi-cultural scrum team, you work together towards the best results. You want to create the best solution for the customers and take full responsibility of the mobile platform: building, testing and supporting it. You are able of taking over the basic activities of other DevOps team members when necessary, like

Bekijk vacature »

Full Stack .NET Developer C# ASP.NET

Samengevat: Deze werkgever is gespecialiseerd in het op afstand bewaken en besturen van machines en processen. Ben jij een ervaren Full Stack .NET Developer? Heb je ervaring met C# en ASP.NET? Vaste baan: .Net Developer C# ASP.NET HBO €3.300 - €4.500 Deze werkgever is een snel groeiende onderneming gespecialiseerd in het op afstand bewaken en besturen van machines en processen, IoT (Internet of Things). Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Wil jij bij de top specialisten horen? Ben jij op zoek naar een

Bekijk vacature »

04/01/2017 17:30:59
Quote Anchor link
Wil de .php scripts buiten document root te houden maar is de toepassing zwaar met AJAX.

Zo...

JS -> AJAX post met URI 'mijnGeheimScript.php' -> LAMP -> (document_root)/.htaccess ->

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
    RewriteEngine on
        RewriteCond %{REQUEST_URI} -d
        RewriteRule "^/$" "/start_pagina.html"
    
    <IfModule mod_php5.c>
        php_value include_path "../assets/PHP"
        ErrorDocument 404 /proxy.php
    </IfModule>


En proxy.php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php

preg_match("~.php$~", $_SERVER["REQUEST_URI"])
    ?
include ltrim($_SERVER["REQUEST_URI"], "/")
    :
http_response_code(404);
?>


Apache kunt niet mijnGeheimScript.php vindt (404) -> proxy.php is niet verzoekt vanuit externe dus geen $_POST | $_GET | $_REQUEST variable(s) zijn gecreëerd :( maar wel draaid mijnGeheimScript.php

.../assets/PHP/.htaccess ->

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
    Options -Indexes

    Deny from all


Ideeën?
Gewijzigd op 05/01/2017 15:52:20 door
 
PHP hulp

PHP hulp

26/03/2023 05:01:33
 
Thomas van den Heuvel

Thomas van den Heuvel

04/01/2017 19:20:06
Quote Anchor link
Security through obscurity lijkt mij niet de weg om te gaan. Waarom mag men niet weten dat het PHP-scripts betreft? In nieuwere webservers/PHP-versies kun je er volgens mij voor zorgen dat er geen informatie naar buiten gaat over typen en versies.

Daarnaast zou je je applicatie kunnen laten werken via één voordeur (single point of entry): index.php. Deze zet je in je webdir, de rest van je PHP-code kun je buiten je webdirectory houden.
 
Ben van Velzen

Ben van Velzen

04/01/2017 19:20:28
Quote Anchor link
Waarom wil je je php scripts buiten de docroot houden? Voor configuratiebestanden is dat logisch, voor de rest niet echt. En nu zie je wat voor problemen je jezelf op de hals haalt.
 

04/01/2017 23:53:55
Quote Anchor link
Thomas van den Heuvel op 04/01/2017 19:20:06:
Security through obscurity lijkt mij niet de weg om te gaan.
Dit is 't niet. Beveiligd is 't.

Thomas van den Heuvel op 04/01/2017 19:20:06:
In nieuwere webservers/PHP-versies kun je er volgens mij voor zorgen dat er geen informatie naar buiten gaat over typen en versies.
Link / bewijs, AUB?

Thomas van den Heuvel op 04/01/2017 19:20:06:
Daarnaast zou je je applicatie kunnen laten werken via één voordeur (single point of entry): index.php. Deze zet je in je webdir, de rest van je PHP-code kun je buiten je webdirectory houden.
Hoe dan weet je welke script moeten draaien (en met welke query string)?
 
- Ariën  -
Beheerder

- Ariën -

04/01/2017 23:58:35
Quote Anchor link
- In PHP kan je de headers met de PHP-versie afschermen met de 'expose_php' directive op 0.
- Voor Apache en zijn versienummertjes kan dit met:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
ServerSignature Off
ServerTokens Prod


- En met Nginx kan dit met:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
server_tokens off;


Verder ontgaat mij nog steeds het exacte nut waarom je een proxy wilt bouwen? Je kan toch een AJAX-script bouwen die classes/methods/functies aanroept welke (zoals eigenlijk hoort) netjes buiten de webroot staan?
Gewijzigd op 05/01/2017 00:00:49 door - Ariën -
 

04/01/2017 23:59:14
Quote Anchor link
Ben van Velzen op 04/01/2017 19:20:28:
En nu zie je wat voor problemen je jezelf op de hals haalt.
Sorry, maar verwijten is niet behulpzaam :(
 
- Ariën  -
Beheerder

- Ariën -

05/01/2017 00:04:11
Quote Anchor link
Max Hopper op 04/01/2017 23:53:55:
Thomas van den Heuvel op 04/01/2017 19:20:06:
Daarnaast zou je je applicatie kunnen laten werken via één voordeur (single point of entry): index.php. Deze zet je in je webdir, de rest van je PHP-code kun je buiten je webdirectory houden.
Hoe dan weet je welke script moeten draaien (en met welke query string)?

Daar had ik al o.a in een ander topic al een oplossing voor gepost.
Gewijzigd op 05/01/2017 00:04:43 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

05/01/2017 01:06:44
Quote Anchor link
Max Hopper op 04/01/2017 23:53:55:
Thomas van den Heuvel op 04/01/2017 19:20:06:
Security through obscurity lijkt mij niet de weg om te gaan.
Dit is 't niet. Beveiligd is 't.

Uhm. Nee? Ik kan me een partij brakke code schrijven, en die vervolgens buiten de webdir plaatsen en via index.php aanroepen. Hoe is dat veiliger?

Daarnaast, zelfs als je rauwe php-bestanden door een of andere fout zou kunnen downloaden, dan is er echt meer aan de hand? Klinkt meer als hosting die steken laat vallen dan.

Je kunt dit soort discussies tot in het absurde voeren natuurlijk, met als eindconclusie dat niets veilig is. Dat is echter niet erg praktisch dus je zult tot op zekere hoogte aannames moeten doen. Het lijkt mij echter vaker het geval dat brakke code een boosdoener is dan webservers die hele rare dingen doen.
 

05/01/2017 16:00:26
Quote Anchor link
Werkt 't:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
    RewriteEngine on
        RewriteCond %{REQUEST_URI} -d
        RewriteRule \.php$ /proxy.php [end]
    
    <IfModule mod_php5.c>
        php_value include_path "../assets/PHP"
    </IfModule>

Nu is de hele bol super globals in de BESCHERMDE script zijn verkrijgbaar.

<full_disclosure>
inhout van ../assets/PHP/.htaccess:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
    Options -Indexes

    Deny from all

</full_disclosure>
Gewijzigd op 05/01/2017 16:24:58 door
 
Frank Nietbelangrijk

Frank Nietbelangrijk

05/01/2017 16:02:59
Quote Anchor link
>> Hoe dan weet je welke script moeten draaien (en met welke query string)?

Die informatie kun je halen uit de $_SERVER super-global array.

Ik zou zeggen: pak een eenvoudig PHP framework zoals bijvoorbeeld CakePHP. Daar heb je een hoop profijt van.
 

05/01/2017 16:14:07
Quote Anchor link
Uhh, alleen als de HTTP GET methode was gebruikte (en deze zijn AJAX POST met Content-Type: application/x-www-form-urlencoded en multipart/form-data met GEEN query string).

Edit:
Het is niet nodig om het voorlaatste bericht te quoten. Daarom heb ik deze verwijderd.
Gewijzigd op 05/01/2017 16:18:53 door - Ariën -
 
Frank Nietbelangrijk

Frank Nietbelangrijk

05/01/2017 16:24:16
Quote Anchor link
Nee je vat hem niet.

Single Point entry:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
http://example.com/                       ====>   [.htaccess]   ===>   http://example.com/index.php/
http://example.com/about                  ====>   [.htaccess]   ===>   http://example.com/index.php/about
http://example.com/contact                ====>   [.htaccess]   ===>   http://example.com/index.php/contact
http://example.com/contact/confirmation   ====>   [.htaccess]   ===>   http://example.com/index.php/contact/confirmation


Zoals je hierboven in het schema kunt lezen worden alle url's doorgestuurd naar index.php, het enigste php bestand in je webroot.
In dit index.php bestand doe je slechts een paar kleine simpele dingetjes. Alle andere php bestanden staan buiten je webroot.

Het heeft niets te maken met POST of GET of AJAX.

Een framework biedt je alles waar je nu om roept in dit draadje

onder andere:
- single point entry
- clean url's
- directory structuur
- tal van additional modules voor allerlei doeleinden
- een schat aan libraries

Toevoeging op 05/01/2017 16:31:06:

GOOGLE ook eens op MVC...
 

05/01/2017 16:33:46
Quote Anchor link
Heeft als met AJAX te maken.

'gewoon' URL verzoek (Chrome Inspector):
Request URL:https://acer-ubuntu:4443/WM_3.html
Request Method:GET
Status Code:200 OK
Remote Address:192.168.2.11:4443

'gewoon' AJAX verzoek vanuit WM_3.html (Javascript):
Request URL:https://acer-ubuntu:4443/validateAccountName.php
Request Method:POST
Status Code:204 No Content
Remote Address:192.168.2.11:4443

Accept:*/*
Accept-Encoding:gzip, deflate, br
Accept-Language:en-GB,en;q=0.8,nl;q=0.6,de;q=0.4,it;q=0.2
Connection:keep-alive
Content-Length:16
Content-Type:application/x-www-form-urlencoded; charset=UTF-8
DNT:1
Host:acer-ubuntu:4443
Origin:https://acer-ubuntu:4443
Referer:https://acer-ubuntu:4443/WM_3.html
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
X-Requested-With:XMLHttpRequest

En nu, pakt 'proxy.php' de URI en 'include()' de gevraagd script.
Gewijzigd op 05/01/2017 16:36:01 door
 
Frank Nietbelangrijk

Frank Nietbelangrijk

05/01/2017 16:44:57
Quote Anchor link
Ik heb moeite om je te volgen dus misschien moet je je probleem wat beter omschrijven?

Maar er is een verschil tussen afgeschermde mappen IN of hoger dan je WEBROOT en bestanden BUITEN je webroot he?

Stel je webroot is:

/var/www/example.com/public_html (Je index.php is dus: /var/www/example.com/public_html/index.php)

Dan is dit een voorbeeld van een afgeschermde map:
/var/www/example.com/public_html/php ( in de php map staat dan een .htaccess met de inhoud 'Deny from all')

En dit is een voorbeeld van een map buiten je webroot:
/var/www/example.com/private (Hier kun je met het http protocol zowiezo niet komen)
 

05/01/2017 17:11:12
Quote Anchor link
Met een URL zoals: https://acer-ubuntu:4443/validateAccountName.php de script moet in DOCUMENT_ROOT liggen... ONBEVEILIGD.

'Deny from all'? Waar? In {DOCUMENT_ROOT}/.htaccess? De AJAX verzoek aan de script krijgt HTTP 403 (en gewoone URL verzoeken, ook).

Stel je dat scripts liggen in {DOCUMENT_ROOT}/PHP/ met een .htaccess inhout 'Deny from all'. Nu krijgt de verzoek HTTP 404. Of je de pad vanuit de Javascript aanpassen tot '/PHP/validateAccountName.php' is de AJAX verzoek: https://acer-ubuntu:4443/PHP/validateAccountName.php en krijgt de verzoek HTTP 403.

Toegang te scripts, wat liggen buiten DOCUMENT_ROOT door een script (proxy.php) dat woont in DOCUMENT_ROOT krijgt HTP 200.
 
Thomas van den Heuvel

Thomas van den Heuvel

05/01/2017 18:15:25
Quote Anchor link
Waarom gebruik je jouw oplossing (welke problemen lost dit op)? Motivatie? Want ik kan je (oplossingsrichting) eerlijk gezegd niet echt volgen.

Waar loop je tegenaan (oorspronkelijke bericht: je mist superglobals)? Heb je een concrete vraag?

Wie heeft je in hemelsnaam verteld dat een andere aanpak "onveilig" zou zijn? Kun je ook uitleggen waarom het onveilig zou zijn? Indien het gaat om het voorkomen van rechtstreekse aanroepen van bepaalde scripts: daar zijn ook andere, en wellicht makkelijkere, oplossingen voor.
 

05/01/2017 18:51:54
Quote Anchor link
Ik wil niet de IP binnen de scripts openbaar te maken. Ook niet de mappen structuur van de toepassing (ingezien van JavaScript / AJAX verzoeken). Zo, buiten DOCUMENT_ROOT moeten PHP scripts zitten.

En, ik wil graag andere, makkelijkere oplossingen te horen.

Doel: nul data lekkage
 
Frank Nietbelangrijk

Frank Nietbelangrijk

05/01/2017 19:34:59
Quote Anchor link
>> Doel: nul data lekkage

Je kunt de internetkabel uit je server trekken, dan heb je geen lekkage meer ;-)

Wat ik bedoel te zeggen:

Natuurlijk wil je bepaalde gegevens niet laten lekken maar wat jij doet is heel je huis met rolluiken beveiligen behalve de garagedeur welke je vervolgens vergeet in het slot te draaien.

Mag ik vragen wat die proxy.php doet. Krijg altijd een beetje de smaak van illegale praktijken in mijn mond van het woord proxy. En als dat niet het geval is wil je misschien vertellen wat je wel wilt gaan maken?
 

05/01/2017 21:53:34
Quote Anchor link
Niks -
Max Hopper op 04/01/2017 17:30:59:
En proxy.php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php

preg_match("~.php$~", $_SERVER["REQUEST_URI"])
    ?
include basename($_SERVER["REQUEST_URI"])
    :
http_response_code(404);
?>


(maakte 't pad 'agnostisch')
Gewijzigd op 05/01/2017 22:50:33 door
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.