Veilige hub voor gebruikersgegevens onderweg
Contrasteert authenticatie- & gebruikersgegevens. Beschrijft de veilige opslag & beweging van Logto. Omschrijft best practices voor gegevensstromen (attribuuttoewijzingen, gegevenssynchronisatie, aangepaste JWTs).
Gebruikersmetadata is de levensader van Identity and Access Management (IAM) diensten. Het voedt productfuncties zoals data-analyse, gepersonaliseerde ervaringen, beveiligingsbewaking en toegangscontrole. Maar naarmate applicaties meer met elkaar verbonden raken over platforms, organisaties en applicaties heen, kan het beheren van gebruikersmetadata complex worden. Wees niet bang! Door de stroom van gebruikersgegevens te begrijpen, kun je een naadloze en veilige authenticatie-ervaring opbouwen.
Auth gegevens vs. gebruikersgegevens
Niet alle gebruikersgegevens zijn gelijk. Auth gegevens zijn een specifieke subset die wordt uitgewisseld tijdens tokenuitgifte. Stel je een JWT (JSON Web Token) voor die in je HTTP-verzoeken reist. Een groot JWT kan dingen vertragen. Om het snel en veilig te houden, nemen we alleen essentiële gebruikersinformatie op zoals identiteit, accountstatus, authenticatiedetails, permissies en een basis gebruikersprofiel.
Hier bij Logto richten we ons op het opslaan van de volgende authenticatiegegevens:
- Accountstatus: Houd aanmaaktijd, updates, schorsingsstatus en inloggeschiedenis bij. Inclusief
create_at
,updated_at
,account_suspended
,last_ip
. - Authenticatie-info: Dit omvat gebruikers-ID's, authenticatiefactoren en verificatiegerelateerde gegevens. Inclusief
user_id
,password_digest
,password_algorithm
,username
,email
,email_verified
,phone
,phone_verified
,social_identities
,sso_identities
,mfa_config
,mfa_verification_factors
. - Autorisatie-info: Beheer rollen, permissies, lidmaatschappen van organisaties en geautoriseerde applicaties en apparaten voor gedetailleerde toegangscontrole. Inclusief
role
,permission
,organization_id
,organization_role
,organization_permission
,grant_application
,grant_device
. - Standaard gebruikersprofiel: Dit is het meest voorkomende gebruikersprofiel dat door OIDC wordt geregistreerd. Logto stelt het ook in als de standaard gebruikersmetadata, opgeslagen onder de namespace 'profile.'. Inclusief
first_name
,last_name
,middle_name
,name
,nickname
,profile
,website
,avatar
,gender
,birthdate
,zoneinfo
,locale
,address
.
Verder dan de basis: Aangepaste gebruikersgegevens met Logto
- Logto gaat verder dan het standaardprofiel. Onze Management API laat je aangepaste gegevens definiëren die specifiek zijn voor jouw zakelijke behoeften. Deze gegevens worden veilig opgeslagen onder een toegewijde namespace 'custom.data'. Hier zijn enkele gevallen:
occupation
,company_name
,company_size
.
Buiten de kluis denken: externe API-gegevens met aangepaste JWT
- Bepaalde bedrijfsgegevens hoeven mogelijk niet permanent opgeslagen te worden in Logto. Het mooie van Custom JWT is dat je deze gegevens dynamisch kunt ophalen via API-oproepen tijdens tokenuitgifte, waardoor het bereik van je gebruikersgegevens wordt uitgebreid. Onthoud dat beveiliging van het grootste belang is, dus vermijd het opnemen van gevoelige informatie in JWTs, omdat ze gemakkelijk te ontcijferen zijn. Hier zijn enkele gevallen:
subscribed_status
,last_path_visited
,app_theme
.
De reis van de gebruikersgegevens: acquisitie & distributie
Gebruikersgegevens komen uit verschillende bronnen:
- Gebruikersinvoer: Tijdens aanmelding, onboarding of profielupdates binnen je applicatie.
- Identity providers (IdPs): Naadloos gesynchroniseerd tijdens Social logins of Enterprise SSO.
- Gegevensmigraties: Het verplaatsen van gegevens uit bestaande databases.
- Ingrijpen van beheerders: Beheerders bewerken handmatig via de console of database.
Zodra je deze waardevolle gegevens hebt, kun je ze veilig delen:
- Toestemmingen verlenen aan derde apps: Gecontroleerde toegang bieden tot gebruikersgegevens voor geautoriseerde applicaties.
- Gegevensexporten: Exporteer gebruikersgegevens van Logto voor verdere analyse.
- Levering via JWTs, Webhooks of APIs: Deel gebruikersgegevens met je interne diensten voor een uniforme gebruikerservaring.
Als identiteitscentrum blinkt Logto uit in het faciliteren van de stroom van gebruikersgegevens. We maken het gemakkelijk om gebruikersinformatie van verschillende providers te verwerven en veilig te leveren aan geautoriseerde partijen.
Belangrijke punten
Nu je de reis van gebruikersgegevens begrijpt, laten we enkele belangrijke ontwerpoverwegingen verkennen:
- Attribuuttoewijzing: Zorg voor een nauwkeurige toewijzing van gebruikersattributen uit verschillende bronnen om datasilo's te vermijden. Voor SAML-verbindingen is handmatige toewijzing vereist. Bij gebruik van OIDC, gebruik gestandaardiseerde claims of creëer unieke namespaces om conflicten te voorkomen.
- IdP en RP gegevenssynchronisatie Gegevenssynchronisatie tussen de IdPs (identity providers) en RPs (relying parties) omvat doorgaans autorisatie en specifieke scoperequests aan beide kanten. Let op de verificatiestatus. Een gesynchroniseerd "Email verified=false" van een IdP zoals GitHub of Azure AD is mogelijk geen geverifieerd e-mailadres in je systeem. Handel er dienovereenkomstig mee.
- Gegevensscheiding en overschrijven in een structuur met meerdere entiteiten
In complexe omgevingen met meerdere organisaties, applicaties en providers worden gegevensscheiding en overschrijfgedrag cruciaal.
- Multi-organisatie: Een gebruiker kan tot meerdere organisaties behoren. Onderscheid gebruikersgegevens opgeslagen onder het gebruikersaccount van organisatiespecifieke gegevens. Wijzigingen binnen één organisatie mogen anderen niet beïnvloeden.
- Multi-app: Voor applicaties die een gebruikersdatabase delen via Logto, implementeer een gecentraliseerd accountinstellingen- of profielinstellingenmodule in je dienst.
- Multi-provider: Applicaties met verschillende aanmeldmethoden ontvangen verschillende gebruikersinformatie van elke provider. In Logto, kies je om gegevens te synchroniseren tijdens sociale login-registratie of bij elke login voor Enterprise SSO. Sociale login is ideaal voor initiële gegevenssynchronisatie, terwijl Enterprise SSO lidinformatie kan synchroniseren bij elke login voor eenvoudigere beheer binnen de enterprise IdP.
- Aangepaste JWTs voor uitgebreide gegevens toegang De kracht van Custom JWTs ligt in hun vermogen om externe informatie dynamisch op te halen tijdens tokenuitgifte via API-oproepen. Dit stelt je in staat toegang te krijgen tot gegevenspunten die mogelijk niet essentieel zijn voor kernfunctionaliteit, maar de gebruikerservaring kunnen verrijken. Onthoud, met grote flexibiliteit komt grote verantwoordelijkheid. Aangezien JWTs gemakkelijk worden ontcijferd door iedereen die ze ontvangt, vermijd het opnemen van gevoelige gegevens.
- Progressieve registratie voor een soepelere onboardingstroom Overweldig gebruikers niet met een registratieformulier ter lengte van een roman. Implementeer progressieve registratie, een techniek waarbij je alleen de meest kritieke gebruikersinformatie aanvraagt in eerste instantie. Dit stroomlijnt het aanmeldproces en houdt gebruikers betrokken. Terwijl gebruikers interactie hebben met je applicatie, kun je geleidelijk aanvullende gegevenspunten verzamelen om een rijker gebruikersprofiel op te bouwen.
Door deze best practices te volgen, kun je zorgen voor een soepele en veilige stroom van gebruikersgegevens door de hele authenticatie reis.
Logto: Jouw veilige hub voor gebruikersgegevens onderweg
Effectief beheer van gebruikersmetadata stelt je in staat gebruikerservaringen te personaliseren, de beveiliging te verbeteren en waardevolle inzichten in gebruikersgedrag te verkrijgen. Door gebruik te maken van Logto's veilige en flexibele platform, kun je het volledige potentieel van gebruikersgegevens ontsluiten en een concurrentievoordeel behalen in het huidige data-gedreven landschap.