TL;DR: TOPdesk kan ook gebruikersnaam/wachtwoord-combinaties in de eigen database opslaan, waarmee gebruikers kunnen inloggen. Dit systeem kan potentieel compliancy-issues opleveren op het gebied van informatiebeveiliging.

Dit is het tweede deel over een drieluik over TOPdesk-authenticatie. Klik hier voor het eerste deel.

In de vorige post heb ik de zin en de onzin van TOPdesk-authenticatie uitgelegd. De kern van die post was: superveilig is het niet, maar in veel gevallen is het wel de logische keuze. In deze post laat ik zien hoe je in de praktijk met TOPdesk-authenticatie werkt.

 

Inschakelen en uitschakelen

Het scenario dat ik schets in deze post is een TOPdesk-omgeving waarbij gebruikers kunnen inloggen via zowel LDAP als SAML. In de praktijk zal LDAP en SAML niet vaak tegelijkertijd voorkomen, maar zal eerder 1 van die 2 methodes in gebruik zijn.

TOPdesk-authenticatie kan zowel voor behandelaars als personen worden gebruikt. In de Inloginstellingen kun je dit globaal aanvinken of uitvinken (zie de eerste screenshot van het vorige artikel). De volgende stap is om voor losse behandelaars of personen TOPdesk-authenticatie in te schakelen. Dit doe je simpelweg door in de Inloginstellingen van de gebruiker een wachtwoord in te vullen (zie screenshot). Een behandelaar kan vervolgens met de ingevoerde gegevens inloggen op https://[URL-van-TOPdesk]/tas/secure/login/form ; een persoon op https://[URL-van-TOPdesk]/tas/public/login/form. Dit werkt ook precies zo op SAAS. Voilà, je hebt een TOPdesk-accountje gemaakt. Je kunt nu buiten Active Directory en buiten je Identity Provider om inloggen! Via de achterdeur dus.

Wil je de achterdeur weer goed afsluiten? Ga dan weer naar de Inloggegevens van de gebruiker en laat het wachtwoordveld nu helemaal leeg. Klik Toepassen en Opslaan, en het wachtwoord is uit de database verwijderd. Voor deze gebruiker is de achterdeur nu weer gesloten.

 

Dat klinkt simpel

Het is inderdaad erg simpel om TOPdesk-authenticatie voor losse gebruikers in te stellen. MDe manier waarop dit in TOPdesk is ingeregeld is echter opvallend. Je kunt namelijk aan een behandelaarskaart of persoonskaart nergens zien dat iemand ooit handmatig een wachtwoordje in de database heeft gefietst. Je ziet dus in principe ook niet wie kan inloggen buiten Active Directory en buiten de Identity Provider om. Wil je dit toch weten? Dan moet je gaan workarounden (zie verder hieronder).

Iets raars gebeurt ook als je TOPdesk-authenticatie instelt binnen een omgeving waar LDAP-authenticatie de norm is. Via de LDAP-koppeling log je in TOPdesk in met je AD-wachtwoord. Stel je vervolgens in TOPdesk een handmatig wachtwoord in, dan kun je daarna met twee verschillende wachtwoorden in TOPdesk inloggen, op 1 en hetzelfde account. Werkt je eerste wachtwoord dan bijvoorbeeld niet? Dan kun je je tweede wachtwoordje proberen!

Met twee verschillende wachtwoorden inloggen is al enigszins contra-intuïtief. Maar stel dat het betreffende AD-account is geblokkeerd of is uitgeschakeld? Dan kan die persoon niet meer inloggen in TOPdesk via LDAP. Maar de achterdeur, TOPdesk-authenticatie, kan even goed open blijven staan. In dat geval is informatie toegankelijk voor personen die daarvoor wellicht niet geautoriseerd (meer) zijn: een potentieel datalek. Het risico hierop wordt groter naarmate indienst- en uitdienstprocedures niet goed zijn ingericht of niet nauwgezet worden gevolgd.

 

Maar hoe kan ik zien wie zo inlogt?

Het voornaamste issue is dat TOPdesk-authenticatie niet transparant is. Deze techniek staat ook daardoor op gespannen voet met Identity & Access Management en informatiebeveiliging. Het is dus niet zo raar als je het gebruik van TOPdesk-authenticatie wil beperken. TOPdesk onderschrijft dit zelf ook. In het artikeltje Beveilig uw TOPdesk-omgeving (linkje hier) uit 2014 staat het actiepunt Beperk het gebruik van TOPdesk-authenticatie. Er staat echter niet in hoe je dat dan precies kunt klaarspelen; dat is ook niet zo eenvoudig. Het begint met het vinden van accounts waarop handmatig een wachtwoord is ingesteld. Hieronder staan twee manieren.

Methode 1: via de GUI. Met een truc kun je achterhalen of er een wachtwoord is ingesteld op een kaart. Open de inloginstellingen van de gebruiker, en laat het veld wachtwoord leeg. Klik Toepassen. Licht nu het knopje Opslaan op, en verschijnt het pennetje in het tabblad (zie screenshot)? Dan heb je daarmee de bevestiging dat er een wachtwoord is ingesteld. Druk je vervolgens daadwerkelijk Opslaan, dan wis je dat wachtwoord. Druk je op Annuleren, dan blijft het wachtwoord staan en kan de gebruiker ermee blijven inloggen. Dit werkt zo voor zowel personen als behandelaars.

Wil je meer dan een handjevol accounts controleren? Dan heb je methode 2: direct in de database kijken. Een handmatig wachtwoord voor behandelaars staat versleuteld opgeslagen in veld passhash in de tabel gebruiker. Voor personen staat het wachtwoord in het veld taspasshash in de tabel persoon. Zijn die velden gevuld? Dan is TOPdesk-authenticatie ingesteld. Zijn de velden leeg, dan niet. Met de TOPdesk-addon CSV Export wizard (zie het kennisitem op Extranet voor meer info over deze tool) kun je deze informatie direct uitlezen. De CSV Export wizard is ook beschikbaar op SAAS.

Heb je eenmaal helder welke gebruikers een handmatig wachtwoord hebben? Dan is de laatste stap om te controleren of ze er ook daadwerkelijk mee inloggen. Deze informatie staat in de logfiles, en die zijn in principe alleen toegankelijk wanneer je TOPdesk on premise draait. Is dat het geval? Open dan de folder met de logfiles, en raadpleeg de access_log-files. Hierin vind je alle logins en de gebruikte login-methode. De volgende entry verraadt bijvoorbeeld dat gebruiker rogier op het behandelaarsgedeelte (/tas/secure realm) heeft ingelogd via TOPdesk-authenticatie:
[AUTH] User: rogier verified by TopdeskAuthenticationProvider in the /tas/secure realm
Op SAAS heb je geen toegang tot de access_logs. Wil je ze toch? Neem dan contact op met TOPdesk support.

 

Ik snap er niets van maar ik wil wel veilige systemen

Neem contact op voor een security scan van uw TOPdesk-omgeving, of voor het verder beveiligen ervan.

* De laatste, derde, post over TOPdesk-authenticatie volgt op gepaste afstand, op een nader te bepalen moment.


Rogier Visser

Rogier is zelfstandig TOPdesk-consultant en oprichter van Laansloot IT