node-oidc-provider wint de tweede BlueHats Prize

BlueHats prijzen zijn een initiatief van het Franse Interministeriele Digitale Directoraat. Ze worden uitgereikt aan beheerders van cruciale Vrije en Open Source projecten. In 2024 worden vier prijzen van elk € 10.000,- uitgereikt. Met veel plezier kondigen we aan dat de winnaar van de tweede BlueHats prijs van 2024 Filip Skokan is, beheerder van het node-oidc-provider project. node-oidc-provider biedt een OAuth 2.0 (RFC 6749) Authorisatie Server met ondersteuning voor OpenID Connect (OIDC) en veel andere additionele standaarden voor de Node.js open-source en cross-platform JavaScript runtime omgeving.

De jury, bestaande uit ambtenaren van ANSSI en DINUM, bevestigde het belang van node-oidc-provider en zijn rol in identiteitfederatie. De leden van de Vrije Software Raad willen dit soort initiatieven in de schijnwerpers zetten: specifieke projecten die essentieel zijn voor software infrastructuren, en die worden beheerd door teams waar je van op aan kunt door de jaren heen.

In reactie op de aankondiging dat hij had gewonnen, zei Filip Skokan:

Ik ben ongelooflijk vereerd met het winnen van de BlueHats prijs. Deze erkenning betekent veel voor me omdat het de jaren van hard werken en toewijding aan het node-oidc-provider project valideert. Ik begon aan dit project om de simpele reden dat ik wilde leren. Te zien dat node-oidc-provider wordt gebruikt door initiatieven als FranceConnect maakt het echt de moeite waard. Dat het project wordt ingezet door dit soort initiatieven versterkt mijn overtuiging om me te blijven inzetten voor zowel open source als organisaties die standaarden ontwikkelen.

Over node-oidc-provider

Via de protocollen die het implementeert maakt node-oidc-provider Single Sign-On (SSO) mogelijk. Hierdoor hebben gebruikers toegang tot meerdere websites met een enkele log-in. SSO delegeert de verantwoordelijkheid voor het verifiëren en veilig maken van gebruikersinteracties naar betrouwbare identiteitsaanbieders. Deze benadering wordt vaak gehanteerd om gebruikers frictieloze toegang te verschaffen tot verschillende diensten met slechts één account van een zelfgekozen identiteitsaanbieder. Dit stroomlijnt de gebruikerservaring terwijl het ook robuuste veiligheidsstandaarden hoog houdt.

node-oidc-provider was Filips eerste open source project. Hij startte het in 2015 als een manier om OIDC en OAuth 2.0 in de vingers te krijgen. Zijn doel was om de code op zo'n manier te ontwikkelen dat het aan de protocollen voldeed. Terwijl hij hier mee bezig was, kwam hij in contact met het OpenID Certificatie programma. Door de uitwisselingen met het programma en het certificatieproces zelf, identificeerde hij niet alleen issues met zijn eigen code, maar ook met de referentie implementatie van de test suite. Dit heeft er aan bijgedragen dat het OpenID Certification programma in 2018 de Identity Innovation prijs won en de European Identity and Cloud prijs. Het gaf Filip het zelfvertrouwen om deel te nemen aan standaardisatieprocessen die worden uitgevoerd door werkgroepen van OIDF en de IETF. De leercurve om dit soort documenten te lezen (en later te schrijven) is steil. Filip heeft er veel plezier in om tijdens het standaardisatieproces de specificaties zo vroeg mogelijk te implementeren zodat hij veel waardevolle feedback kan geven aan de werkgroepen.

Na een paar jaar wekte de toewijding en precisie waarmee Filip werkt aan zijn project de interesse van Auth0 (nu overgenomen door Okta). Zij namen hem in dienst om aan hun producten te werken. Filip gaat door met het beheren van zijn eigen implementatie die inmiddels een stabiel project is geworden. Hij gebruikt het ook als een speeltuin om nieuwe extensie te valideren die worden ontwikkeld binnen het raamwerk van OAuth 2.0.

Lof voor node-oidc-provider

Iedereen kan Vrije en Open Source projecten nomineren voor de BlueHats prijzen (en nomineren kan nog steeds). node-oidc-provider werd genomineerd door Raphaël Dubigny van DINUM. Hij motiveerde zijn keuze als volgt:

De strategie van de software suite van de operator van DINUM is gebaseerd op AgentConnect. AgentConnect is gebaseerd op dezelfde technologische basis als FranceConnect. FranceConnect is afhankelijk van de node-oidc-provider bibliotheek voor het verzekeren van compatibiliteit met de OpenID Connect standaard.

Het behoeft een speciale benoeming dat node-oidc-provider een OpenID Certified™ certificatie heeft. Veel software projecten focussen op het groene pad waar alles optimaal gaat. Filip vindt het leuk om er voor te zorgen dat alle negatieve testcases ook correct worden afgehandeld. En de test suite van het OpenID Certification programma helpt daarbij. De uitgebreide test suite en het certificatieprogramma kan gebruikers het zelfvertrouwen geven dat hun software doet wat het geacht wordt te doen en geen onverwacht gedrag zal vertonen.

Als er geen certificatie was geweest, zou Frankrijk niet voor een Vrije Software oplossing hebben gekozen. Stéphane Herman, CTO van FranceConnect, zegt: "We hebben in 2018 gekozen voor node-oidc-provider omdat de bibliotheek op de lijst stond van gecertificeerde OpenID Connect aanbieders."

Opmerking van Filip:

In het verleden heb ik geschreven dat "Software laten voldoen aan de standaarden en de certificering daarvan is niet het hoogste doel dat je kan bereiken. Het is de laagste lat die je minimaal moet halen." Certificatie is over het algemeen niet gratis en het is op zijn minst erg tijdsintensief. Ik ben daarom blij dat vanaf vandaag, na te hebben gelobbied bij het management van de OpenID stichting, de OpenID Certificatie gratis is voor open source projecten die hiervoor in aanmerking komen. Als je een OpenID Connect open source project beheert, zorg dan dat het gecertificeerd wordt.

BlueHats prijzen voor beheerders van cruciale software

De BlueHats prijs heeft als doel beheerders van cruciale open source software in de schijnwerpers te zetten. Het is een bekend probleem in de Vrije en Open Source wereld: het voordeel van Vrije en Open Source software is gigantisch maar er zijn te weinig aandacht en middelen voor beheer en beheerders.

node-oidc-provider is een typisch voorbeeld van deze stand van zaken. Hoewel het ontelbare eindgebruikers raakt doordat het gebruikt wordt door identiteitsaanbieders als FranceConnect, is het niet immuun voor dit bekende probleem. De BlueHats prijzen willen gebruikers van Vrije en Open Source software aanmoedigen om te investeren in beheer. Het is belangrijk om het probleem van te weinig middelen gedurende deze belangrijke fase in de levenscyclus van de software te adresseren.

Je kunt nog projecten nomineren

In de aankomende maanden zullen nog twee BlueHats prijzen worden uitgereikt. Je kunt nog steeds je favoriete project nomineren voor één van de prijzen van € 10.000,-. De BlueHats prijzen zijn een initiatief van de Franse overheid. De Franse Vrije Software Afdeling (een OSPO) werkt samen met NLnet om vier vooraanstaande projecten in de schijnwerpers te zetten en hen te belonen met de BlueHats 2024 prijzen.