Single Sign On Basics
Voordat u SSO instelt in Quinyx, is het belangrijk om de basisprincipes door te nemen om de installatie te vereenvoudigen. SSO staat voor Single Sign-On en wordt in Quinyx gebruikt om authenticatie te verplaatsen van de ingebouwde manieren om gebruikers te authenticeren, bijvoorbeeld via een gebruikersnaam en wachtwoord, naar een door de klant gecontroleerde manier.
SSO biedt tal van verbeteringen, zoals beveiliging, naleving en eenvoud, boven gebruikersnaam en wachtwoord - maar het belangrijkste is dat het de klant controle geeft over het inloggen en de authenticatie bij Quinyx.
Technologieën en protocollen
Naarmate SSO zich in de loop der jaren heeft ontwikkeld, zijn er een aantal protocollen en standaarden vastgesteld om SSO tussen verschillende systemen te vereenvoudigen. Twee veelvoorkomende protocollen die worden ondersteund door Quinyx zijn SAML 2.0 voor web en OpenID Connect (OAuth2) voor mobiele apps.
De protocollen bestaan om de implementatie en compatibiliteit tussen verschillende systemen te vereenvoudigen, zodat elke leverancier, in dit geval Quinyx, geen specifieke ondersteuning hoeft te bieden voor elk type provider (Azure ADFS, Onelogin, Okta, Google, enz.) - we spreken allemaal dezelfde taal. Wat gemeenschappelijk is bij alle protocollen, is dat ze een lijst met instellingen hebben, zoals certificaten, URL's en mogelijke geheimen die moeten worden gedeeld om het vertrouwen tussen de twee te vestigen.
Terwijl de URL's er verschillend uit kunnen zien tussen verschillende leveranciers, bieden ze allemaal dezelfde functionaliteit omdat ze compatibel zijn met het gespecificeerde protocol.
Quinyx SSO basisstappen
Het configureren en gebruiken van SSO kan worden opgesplitst in verschillende stappen:
- Technisch vertrouwen tussen twee systemen
- Gegevensmapping
- Log in op Quinyx met SSO voor werknemers
Technisch vertrouwen tussen twee systemen
Een voorwaarde voor SSO om te werken tussen Quinyx en de IT-omgeving van de klant is het tot stand brengen van het technische vertrouwen tussen de twee partijen. Dit wordt eenmalig gedaan, vaak door de IT-afdeling die verantwoordelijk is voor het systeem bij de klant. Quinyx UI biedt een self-service manier om alle benodigde instellingen in te voeren om het vertrouwen tussen Quinyx en het door de klant gekozen systeem tot stand te brengen.
Hier worden alle URL's, geheimen en certificaten gebruikt om die vertrouwensrelatie te configureren en tot stand te brengen. Om dit proces te vereenvoudigen in SAML 2.0, worden alle benodigde informatie opgeslagen in een "metadata" bestand dat wordt gedeeld tussen de partijen. Dit bestand minimaliseert het risico op typfouten en verkeerde configuratie, omdat het alle informatie bevat die nodig is om het vertrouwen te configureren. OpenID Connect heeft vergelijkbare instructies genaamd "Well Known URIs", dit is een weblink die alle benodigde URIs bevat om OpenID in te stellen (eindigt vaak met /.well-known/openid-configuration).
Gegevensmapping
Wanneer het technische vertrouwen is vastgesteld, communiceren de twee systemen tijdens het inloggen. Er moet echter nog één ding geconfigureerd worden en dat is de gegevensmapping. Het klantsysteem, vanaf nu IDP (IDentiteitsprovider) genoemd, biedt een database van werknemers die moeten inloggen op Quinyx. De IDP kan bestaan uit verschillende interne systemen bij de klant met een hoge complexiteit. Of het kan een enkel systeem zijn in de meest eenvoudige vorm, zoals een spreadsheet met alle werknemersinformatie.
Wanneer een werknemer SSO gebruikt om in te loggen op Quinyx, worden verschillende gebruikerskenmerken uit de IDP-database naar Quinyx gestuurd als onderdeel van het gebruikte protocol.
Hoewel protocollen die worden gebruikt voor het vaststellen van vertrouwen bepaalde specifieke details en aanbevelingen hebben, bepalen ze niet precies wat alle velden moeten bevatten. Dit vereist configuratie in de gegevensmapping. Veel providers van OpenID Connect hebben enkele gemeenschappelijke claims die bijvoorbeeld een e-mailadres bevatten in een bepaalde claim (veld). Een specifieke claim past mogelijk niet bij elke Quinyx-klant, dus we laten de klant kiezen welke claim ze willen gebruiken.
Configuratie van de gegevenskoppeling
Het doel van de gegevenskoppeling is om de informatie over een werknemer in de klant-IDP-database te verbinden met de informatie over de werknemer in Quinyx, zodat Quinyx kan identificeren wie er inlogt.
Hiervoor moeten we een veld/eigenschap uit Quinyx kiezen en een veld/eigenschap in de klant-IDP-database om elkaar te matchen en de gebruiker uniek te identificeren. De gekozen velden worden ingevoerd op de configuratiepagina in Quinyx voor SSO.
Voorbeeldgegevens
Voorbeeldgegevens in Quinyx (links) en aan de klantzijde (rechts).
Configureren met behulp van e-mail en gebruikersnaam
Eerste poging om de gegevenskoppeling te doen; het veld e-mail wordt gekozen uit Quinyx en de gebruikersnaam wordt gekozen uit de klantgegevens.
De aanmelding mislukt omdat de informatie niet exact overeenkomt aan beide zijden.
Configureren met behulp van e-mail en UPN
Tweede poging om de gegevenskoppeling te doen; opnieuw configureren om e-mail van Quinyx en UPN van de klantgegevens te gebruiken. Dit geeft een ander resultaat.
De aanmelding is nu succesvol omdat Quinyx de gebruiker uniek identificeert als de juiste John Doe van de klant.
Hoe te beslissen welke gegevens te gebruiken
Aangezien het protocol niet precies aangeeft welke gegevens moeten worden gebruikt tijdens SSO, is de aanbeveling om gegevens te identificeren die beschikbaar zijn in beide systemen. Vervolgens moet er een geschikt veld worden gevonden om gebruikers te koppelen voordat SSO wordt ingesteld. Omdat klant-IDP's vaak sterk configureerbaar zijn, is het mogelijk om te wijzigen welke gegevens in welke velden naar Quinyx worden verzonden om te helpen bij het gegevenskoppelingsproces - het belangrijke is dat wordt besloten welk veld moet worden gebruikt en ervoor te zorgen dat de gegevens consistent zijn.
Als er geen gegevens worden gevonden om elke gebruiker te koppelen, moeten er nieuwe gegevens worden gemaakt in een van de systemen. Dit kan elk type uniek nummer of tekenreeks zijn, uniek voor elke werknemer. Het gebruik van integraties met Quinyx en het automatisch bijwerken van elke werknemer vereenvoudigt dit proces om handmatige configuratie van vereiste gegevens voor het inloggen te voorkomen.