Het begint met een paar tickets. Inloggen lukt niet, een koppeling geeft een fout, een app laadt niet meer. Binnen een uur zijn het er tientallen. Iedereen kijkt naar de laatste release, naar de server, naar de database. Pas veel later komt iemand op het idee om te kijken of er iets verlopen is. En dat blijkt het te zijn: een client secret van twee jaar geleden, aangemaakt door iemand die er allang niet meer naar kijkt.
We maakten het zelf twee keer mee bij een productie-app. Het verlengen kostte daarna vijf minuten. Het zoeken kostte een ochtend.
Wat er in IT allemaal stilletjes verloopt
Bijna alles waarmee systemen elkaar vertrouwen, heeft een einddatum. En elk ding woont in een ander portaal, met een andere looptijd.
- Client secrets en certificaten van app-registraties in Microsoft Entra ID. In de portal kies je een looptijd van maximaal 24 maanden, en dan is de datum uit beeld.
- SSL-certificaten van websites en API's. Sinds 15 maart 2026 mag een publiek certificaat nog maximaal 200 dagen geldig zijn, vanaf 15 maart 2027 nog 100 dagen en vanaf 2029 nog 47 dagen. Er komen dus veel meer verloopmomenten bij.
- Domeinnamen. Verloopt een domein, dan stoppen website en mail tegelijk, en na de wachttijd kan iemand anders het registreren.
- API-keys en tokens van externe diensten, zoals een betaalprovider, een maildienst of een kaartdienst.
- Het Apple push-certificaat voor apparaatbeheer, dat elk jaar verlengd moet worden. Laat je het verlopen, dan moeten apparaten in het ergste geval opnieuw worden ingeschreven.
- Code signing-certificaten, licenties en supportcontracten.
Waarom het zo lang duurt om de oorzaak te vinden
Een verlopen secret ziet er niet uit als een verlopen secret. Gebruikers zien een vage foutmelding of een leeg scherm. Pas diep in de logs staat iets als AADSTS7000222, de melding van Entra ID dat de client secret is verlopen. Bij een API-key is het vaak een kale 401, bij een certificaat een verbinding die weigert.
Daarbij denkt bijna niemand bij een storing eerst aan een datum. De eerste verdachte is altijd de laatste wijziging. Maar bij een verloopdatum is er geen wijziging. Er is niets veranderd, behalve de kalender.
Wat het kost, een rekenvoorbeeld
Neem een interne app die een ochtend plat ligt, vier uur. Een rekenvoorbeeld met eigen aannames, vul je eigen getallen in.
- Diagnose: drie mensen zoeken vier uur naar de oorzaak. Dat is 12 uur.
- Support: 40 tickets van gemiddeld 10 minuten, inclusief terugkoppelen. Dat is bijna 7 uur.
- Gebruikers: 50 collega's die twee uur minder goed kunnen werken. Dat is 100 uur.
Samen ruim 115 uur. Tegen een interne kostprijs van 60 euro per uur is dat bijna 7.000 euro, nog zonder gemiste omzet, boze klanten of een avond overwerken. Het verlengen zelf kost vijf minuten. Het verschil zit volledig in het moment waarop je het ziet.
Zie het maanden vooraf aankomen
De oplossing is niet slimmer zoeken tijdens de storing, maar zorgen dat de storing er niet komt. Daarvoor heb je twee dingen nodig: alle verloopdata op een plek, en een waarschuwing die op tijd bij meer dan een persoon terechtkomt.
In OwndUp maak je daarvoor een lijst, bijvoorbeeld "Wat verloopt in onze IT", met je eigen kolommen: wat het is, soort, systeem, waar het gebruikt wordt, wie het verlengt, verloopdatum, en een link naar de stappen om te verlengen. Zet nooit het secret of de key zelf in de lijst. OwndUp is geen kluis, de lijst houdt alleen bij wanneer iets verloopt en wie erover gaat.
Op de verloopdatum hang je een herinnering, standaard drie maanden, een maand en een week van tevoren. Die gaat per mail en in de app naar iedereen met wie de lijst gedeeld is, dus niet alleen naar de collega die het secret ooit aanmaakte. Wie wil, krijgt ze ook in een Teams-kanaal. Blijft een herinnering liggen, dan kan OwndUp hem na een week doorzetten naar een backup, zodat hij niet stil verdampt.
Verleng je het secret, dan zet je de nieuwe datum in de lijst en worden de herinneringen opnieuw ingesteld voor de volgende keer. Over twee jaar hoeft niemand het meer te onthouden.
En als het toch een keer misgaat
Ook dan helpt de lijst. Op je dashboard staat bovenaan wat nu actie vraagt, over al je lijsten heen: eerst wat al verlopen is, daarna wat binnenkort afloopt. Bij een onverklaarbare storing is dat de eerste plek om te kijken: wat is er vandaag of gisteren verlopen? Dat antwoord heb je dan in tien seconden in plaats van na een ochtend zoeken.
