Cloud-native applicaties draaien steeds vaker op Kubernetes, maar het beheer van identiteiten is nog lang niet altijd geautomatiseerd. In deze opdracht ontwikkel je een Kubernetes operator die identiteiten zoals OIDC-clients, gebruikers en groepen beheert over meerdere identity providers. Je onderzoekt hoe je provisioning, credentialbeheer en multitenancy standaardiseert in één provider-onafhankelijke oplossing.
Binnen het LMS-platform maken verschillende diensten gebruik van externe identity providers (IdP’s) zoals Entra ID, Keycloak of Okta voor authenticatie en autorisatie. Hiervoor zijn identity resources nodig, zoals OIDC clients, gebruikers en groepen.
Het beheren van deze resources gebeurt vaak handmatig of via provider-specifieke oplossingen. Dit maakt het proces foutgevoelig, moeilijk schaalbaar en lastig herbruikbaar tussen verschillende diensten en omgevingen.
Er is behoefte aan een uniforme en geautomatiseerde aanpak waarbij identity provisioning gestandaardiseerd wordt en onderdeel wordt van het platform.
Deze afstudeeropdracht maakt deel uit van het project ‘Operation: Human Intelligence‘. In dit project bouw je samen met andere IT-studenten aan het leerplatform van de toekomst: open source, Europees en AI-assisted. Zo help je deelnemers écht verder met een platform dat zich aanpast aan verschillende manieren van leren.
De opdracht
Je onderzoekt hoe identity provisioning gestandaardiseerd en geautomatiseerd kan worden binnen het LMS-platform, en hoe dit vertaald kan worden naar een Kubernetes-native oplossing.
Je opdracht bestaat uit de volgende onderdelen:
-
Onderzoek de verschillende typen identiteiten (zoals OIDC clients, gebruikers en groepen) binnen identity providers zoals Entra ID, Keycloak en Okta. Bepaal welke configuraties en metadata essentieel zijn.
-
Analyseer de verschillen en overeenkomsten tussen deze providers en bepaal welke onderdelen generiek te modelleren zijn.
-
Ontwerp een provider-onafhankelijk schema waarin identity resources eenduidig beschreven kunnen worden. Dit schema moet geschikt zijn voor gebruik in een cloud-native omgeving en toepasbaar zijn voor verschillende diensten binnen het LMS.
-
Vertaal dit ontwerp naar Kubernetes door:
-
het definiëren van Custom Resource Definitions (CRD’s);
-
het uitwerken van hoe reconciliation en state management plaatsvindt.
-
-
Ontwikkel vervolgens een Kubernetes operator die:
-
de gedefinieerde resources interpreteert;
-
identity resources automatisch aanmaakt, bijwerkt en verwijdert in één of meerdere identity providers;
-
de gewenste en actuele situatie consistent houdt.
-
-
Besteed hierbij specifiek aandacht aan:
-
veilige opslag en rotatie van secrets en credentials;
-
ondersteuning van multi-tenancy;
-
robuust en idempotent gedrag van de operator;
-
foutafhandeling en observability.
-
-
Valideer de oplossing door middel van een Proof of Concept, waarbij je minimaal twee identity providers integreert binnen een (gesimuleerde) LMS-omgeving.
Over Info Support
Info Support is specialist in maatwerksoftware, data/AI solutions, beheer en trainingen en actief in de sectoren Finance, Industry, Agriculture, Food & Retail, Mobility & Public en Healthcare. Wij bieden solide en innovatieve oplossingen voor complexe en bedrijfkritische softwarevraagstukken. Onze hoofdkantoren zijn gevestigd in Veenendaal (NL) en Mechelen (BE). Op dit moment zijn er circa 500 medewerkers bij Info Support in dienst.
De werkwijze van Info Support kenmerkt zich door een aantal kernwaarden: soliditeit, integriteit, vakmanschap en passie. Deze kernwaarden zijn verweven in ons werk en de manier waarop we met elkaar omgaan.
Om te zorgen dat alle medewerkers altijd op de hoogte kunnen zijn van de nieuwste ontwikkelingen beschikt Info Support over een inhouse IT Academy waar graag wordt voldaan aan de honger naar meer of andere kennis en vaardigheden.
Om deze opdracht te kunnen doen is B2-taalvaardigheid in het Nederlands vereist.
























