11/04/2026
Mobil SSO: Simplificeret Adgang til Dine Apps
I en verden hvor mobile applikationer er blevet en integreret del af vores dagligdag, er behovet for sikker og effektiv adgang afgørende. Single Sign-On (SSO) revolutionerer den måde, vi interagerer med digitale tjenester på, ved at tillade brugere at få adgang til flere applikationer med ét enkelt sæt loginoplysninger. Mendix' Mobile SSO-modul tager denne funktionalitet et skridt videre ved at tilbyde en strømlinet SSO-oplevelse specifikt til native mobilapps.

Dette modul, der bygger på OpenID Connect (OIDC) protokollen, giver slutbrugere mulighed for at logge ind på deres Mendix-baserede mobilapps via deres eksisterende identitetsudbyder (IdP). Dette eliminerer behovet for at huske flere adgangskoder og forbedrer både sikkerhed og brugervenlighed markant.
- Hvad er Mobile SSO?
- Typiske Anvendelsesscenarier
- Funktioner og Begrænsninger
- Overholdelse af OAuth/OpenID Connect Protokol Specifikationer
- Afhængigheder
- Installation og Konfiguration
- Single Log Out (SLO)
- Opbygning af Native Mobilapp
- Konfigurering af Specifikke IdP'er
- Test af IdP Integration
- Fejlfinding
- Hvad er Native Mobile Application Single Sign-On (SSO)?
Hvad er Mobile SSO?
Mobile SSO-modulet i Mendix er designet til at facilitere Single Sign-On for native mobilapplikationer. I modsætning til Progressive Web Applications (PWAs), som benytter OIDC SSO-modulet direkte, er Mobile SSO-modulet optimeret til de unikke krav og arkitektur for native apps. Kernen i funktionaliteten ligger i brugen af OpenID Connect (OIDC) protokollen, hvilket betyder, at din identitetsudbyder (IdP) skal understøtte denne standard for at integrationen kan fungere.
Arkitekturen bag Mobile SSO-modulet involverer en tæt integration med OIDC SSO-modulet. Dette sikrer en robust og sikker autentificeringsproces. Når en bruger forsøger at logge ind på en mobilapp, der bruger Mobile SSO, omdirigeres de til deres IdP for autentificering. Efter en succesfuld login hos IdP'en, returneres brugeren til mobilappen med de nødvendige tokens, der bekræfter deres identitet.
Typiske Anvendelsesscenarier
Mobile SSO-modulet er alsidigt og kan anvendes i en række forskellige scenarier:
- B2E (Business-to-Employee) Apps: Virksomheder kan benytte Mobile SSO til at give deres medarbejdere nem adgang til interne apps. Medarbejdere kan logge ind med deres firmagodkendte legitimationsoplysninger, som administreres af virksomhedens IdP. Dette kan enten være en dedikeret IdP eller en populær løsning som Microsoft Entra ID eller Okta. Appen kan derefter enten administrere brugerroller internt eller udnytte autorisationsinformation, der leveres via en access token fra IdP'en.
- B2C (Business-to-Consumer) Apps: Til apps rettet mod eksterne kunder, kan Mobile SSO integreres med sociale IdP'er, der understøtter OIDC, såsom Google eller Facebook. Dette giver kunderne en velkendt og bekvem loginoplevelse, da de kan bruge deres eksisterende sociale medie-konti.
Funktioner og Begrænsninger
Funktioner
- Understøttelse af Native Mobilapps: Modulet er specifikt designet til at fungere problemfrit med native mobilapps udviklet i Mendix.
- Brugerrollestyring fra IdP: Mulighed for at tildele brugerroller direkte baseret på information modtaget fra identitetsudbyderen, hvilket forenkler brugeradministrationen.
Begrænsninger
- Mendix Sessions Timeout: Mendix-sessioner i mobilappen har ingen indbygget timeout, hvilket kan være en overvejelse for sikkerhedsadministration.
- Kun OIDC Support: Modulet understøtter udelukkende OIDC-protokollen og ikke andre SSO-protokoller.
- Begrænsninger med visse IdP'er: IdP'er, der ikke understøtter brugerdefinerede callback URL'er (f.eks. visse konfigurationer af Facebook), er ikke kompatible.
- URI Schemes: Modulet anvender ikke private URI-skemaer i overensstemmelse med RFC8252, sektion 7.1.
Overholdelse af OAuth/OpenID Connect Protokol Specifikationer
Mendix Mobile SSO-modulet er udviklet med henblik på at overholde bedste praksis for mobil SSO, som specificeret i RFC 8252. En vigtig overholdelse er brugen af en ekstern browser til loginprocessen frem for en indlejret browser. Dette forbedrer sikkerheden og sikrer en mere ensartet brugeroplevelse.
Desuden agerer native Mendix-apps, der anvender Mobile SSO, som konfidentielle klienter. Dette skyldes, at de har en backend-komponent, der håndterer klientlegitimationsoplysninger, hvilket er i overensstemmelse med sikkerhedsstandarder for mobile applikationer.
Afhængigheder
For at anvende Mobile SSO-modulet korrekt, skal din Mendix-app opfylde følgende krav:
- Mendix Version: Kræver Mendix 9.24 eller nyere.
- Marketplace Moduler: Følgende moduler fra Mendix Marketplace skal være inkluderet i din app:
- OIDC SSO
- Native Mobile Resources
Installation og Konfiguration
Integrationen af Mobile SSO-modulet i din Mendix Studio Pro-app involverer flere trin:
Installation
- Tilføj Mobile SSO Modulet: Hent og tilføj Mobile SSO-modulet til din app via Mendix Marketplace.
- Installer Afhængigheder: Sørg for, at de nødvendige afhængigheder (OIDC SSO, Native Mobile Resources) også er installeret.
- Konfigurer OIDC SSO: Følg dokumentationen for OIDC SSO-modulet for at konfigurere appens sikkerhedsindstillinger. Husk, at Mendix mobilapps behandles som Single Page Web Apps (SPAs) fra et IdP-perspektiv.
- Tildel Brugerroller:
- Tildel Anonymous brugerrollen til MobileSSO.Anonymous modulet.
- Tildel User brugerrollen til MobileSSO.User modulet.
Sørg også for at tildele en Anonymous brugerrolle til OIDC SSO-modulet, som beskrevet i OIDC SSO-dokumentationen.
Konfiguration
Konfigurationen af Mobile SSO involverer flere nøgleområder:
Konfigurationsindstillinger
De grundlæggende konfigurationsindstillinger følger OIDC SSO-modulets opsætning. Sørg for, at OIDC_Client_Overview-siden er korrekt konfigureret, og at din IdP er sat op via denne side.
Konfigurering af Navigation
For native mobilapps (tablet & telefon), skal du konfigurere rollebaserede hjemmesider. Tilføj Anonymous rollen og sæt målet baseret på dine behov:
- MobileSSO.Login_Native: Bruges, hvis du ikke ønsker automatisk omdirigering til IdP'ens login-side, især når kun én IdP er konfigureret. Dette giver brugerne mulighed for at vælge at logge ind.
- MobileSSO.Login_Native_Automatic: Bruges, hvis du ønsker, at brugerne automatisk skal omdirigeres til IdP'ens login-side, når kun én IdP er konfigureret.
Konfigurering af Brugerdefineret Login-side
Hvis du ønsker en skræddersyet login-oplevelse, skal du tilføje App events-widgeten til din login-side og kalde nanoflowen MobileSSO.OL_RegisterDeeplink. Dette sikrer korrekt integration med Mobile SSO-modulet.
Konfigurering af Klientinformation
Følg sektionen 'General OIDC Providers' i OIDC SSO-dokumentationen for at konfigurere klientoplysninger. Dette er et kritisk skridt for succesfuld integration.
Konfigurering af IdP for Mobilapps
For mobilapps er det obligatorisk at tilføje en Custom callback URL hos både klienten og IdP'en. Formatet er typisk `APP_NAME://oauth/callback`, hvor `APP_NAME` er navnet på din applikation. Når du tester lokalt, skal du bruge `makeitnative://oauth/callback`.

Konfigurering af Enkelt IdP for Web og Mobil
Hvis du ønsker at bruge den samme IdP-konfiguration for både web- og mobilplatforme, skal du foretage følgende ændringer i OIDC SSO-modulet:
- Erstat `SUB_GetCallbackURL` microflowen med `MobileSSO.SUB_GetMobileCallbackURL` i både `handleAuthorizationCode` og `GetAuthorizationURL` microflows.
- Konfigurer argumenterne for `DeviceType` korrekt i disse microflows.
- Tilføj din `APP_NAME` til `MobileURLScheme` konstanten i Mobile SSO-modulet.
Single Log Out (SLO)
En standard log ud-handling i Mendix afslutter kun Mendix-sessionen, ikke selve SSO-sessionen hos IdP'en. For at opnå Single Log Out (SLO) og afslutte brugerens session hos IdP'en, skal du bruge nanoflowen ACT_NativeLogout. Denne nanoflow omdirigerer brugeren til IdP'ens 'end session'-endpoint, hvis det er konfigureret. Tilføj en menupost eller knap, der kalder denne nanoflow.
Opbygning af Native Mobilapp
Når du bygger din native mobilapp med Mendix' 'Build Native Mobile App'-funktion, skal du være opmærksom på følgende:
- Aktiver Deep Link: Sørg for, at Deep Link er aktiveret.
- Konfigurer App Scheme: Tilføj den samme `APP_NAME`, som du brugte i `APP_NAME://oauth/callback`, til App Scheme-indstillingen. Dette sikrer, at appen kan modtage callback fra IdP'en.
Konfigurering af Specifikke IdP'er
Microsoft Entra ID (tidligere Azure AD)
- App Registrering: Gå til 'App Registrations' i Microsoft Entra ID-portalen og opret en ny registrering.
- Manifest Konfiguration:
- Deaktiver 'Allow public client flows' i manifestet, da Mobile SSO kun understøtter konfidentielle klienter.
- Tilføj følgende JSON til 'web'-sektionen af manifestet (for apps bygget med Build Native Mobile App):
{ "web": { "homePageUrl": null, "logoutUrl": null, "redirectUris": ["APP_NAME://oauth/callback"] } } - For lokal test kan `redirectUris` inkludere `makeitnative://oauth/callback` og din lokale callback URL.
- Klient Hemmelighed: Opret en ny klienthemmelighed under 'Certificates & secrets' og kopier dens værdi til 'Client Secret'-feltet i OIDC_Client_Overview.
- Klient ID: Kopier 'Application (client) ID' fra appens oversigt og indsæt det i 'Client ID'-feltet.
- Scopes: Importer konfigurationen og tilføj de nødvendige scopes som `openid`, `profile` og `email`.
Okta
- Opret App Integration: Gå til Okta-portalen, klik 'Create a new app integration', vælg 'OIDC - OpenID Connect' og 'Native Application' som applikationstype.
- Sign-in Redirect URIs:
- For apps bygget med Build Native Mobile App: Tilføj `APP_NAME://oauth/callback`.
- For lokal test: Tilføj `http://
/oauth/v2/callback` og `makeitnative://oauth/callback`.
- Konfigurer Klientoplysninger: Brug den genererede Client ID, Client Secret og Automatic Configuration URL til at importere konfigurationen i OIDC_Client_Overview-siden.
- Scopes: Tilføj de krævede scopes som `openid`, `profile` og `email`.
Test af IdP Integration
Efter at have indtastet IdP-detaljerne i OIDC_Client_Overview-siden, vil IdP login-fanen være synlig på mobilskærmen. Klik på den for at blive omdirigeret til IdP'ens login-side. En vellykket autentificering vil føre dig tilbage til brugerlandingssiden, hvilket bekræfter, at Mobile SSO-modulet er korrekt integreret.
Fejlfinding
Login Fejl: Hvis du oplever login-fejl, skal du dobbelttjekke din netværksforbindelse og prøve igen. Sørg også for, at alle konfigurationsdetaljer, især callback URL'er og klientoplysninger, er korrekte i både din Mendix-app og din IdP.
401 Fejl: En 401-fejl indikerer typisk et problem med autorisation eller manglende tilladelser. Gennemgå konfigurationen af IdP'en, især scopes og roller, som beskrevet i sektionerne for Entra ID og Okta.
Ved at implementere Mendix Mobile SSO-modulet kan du tilbyde dine brugere en sikker, bekvem og moderne adgang til dine native mobilapplikationer, hvilket markant forbedrer den samlede brugeroplevelse.
Hvad er Native Mobile Application Single Sign-On (SSO)?
Native Mobile Application Single Sign-On (SSO) refererer til en teknologi, der giver brugere mulighed for at få adgang til virksomhedens cloud-tjenester fra mobile enheder uden at skulle indtaste adgangskoder gentagne gange. Dette er især relevant i administrerede miljøer, hvor sikkerhed og brugervenlighed er i højsædet.
I et system som MobileIron Access, kan SSO opnås for administrerede apps på administrerede enheder, ofte i kombination med sikkerhedsløsninger som MobileIron Tunnel. Processen er typisk certifikatbaseret:
- Identifikation via Certifikat: Når en bruger opretter forbindelse via en sikker tunnel (f.eks. MobileIron Tunnel), identificeres brugeren baseret på det certifikat, der bruges til at etablere tunnelen.
- Federation Uden Omdirigering: Access-systemet genererer et føderationssvar til Service Provider (SP) baseret på informationen i certifikatet. Dette sker uden at omdirigere brugeren til den oprindelige IdP, hvilket skaber en mere gnidningsfri oplevelse.
- Konfiguration af Brugeridentifikation: Indholdet af føderationssvaret bestemmes af Native Mobile Application SSO-konfigurationen i Access. Denne konfiguration specificerer, hvilke brugeridentificerende oplysninger SP'en forventer (f.eks. e-mailadresse, Immutable ID).
Disse brugeridentificerende oplysninger hentes typisk fra virksomhedens LDAP-katalog. UEM SCEP (Unified Endpoint Management Simple Certificate Enrollment Protocol), som Tunnel anvender, fanger brugeroplysninger fra LDAP og gør dem tilgængelige i Tunnel-certifikatet. SSO-konfigurationen bruger derefter denne information fra certifikatet i føderationssvaret.
Før Du Begynder
Det er vigtigt at sikre, at de brugeridentificerende oplysninger, som SP'en forventer, er tilgængelige i Tunnel-certifikatet. Dette kan involvere konfiguration af Subject Alternative Names (SAN) i SCEP-indstillingerne:
- Eksempel på SAN Konfiguration:
- For E-mailadresse: Type `RFC 822 Name`, Værdi `$EMAIL$`
- For Immutable ID (f.eks. for Office 365): Type `NT Principal Name`, Værdi `$USER_CUSTOM1$`
Desuden skal LDAP-indstillingerne i MobileIron UEM konfigureres korrekt for at hente de relevante attributter fra LDAP. Hvis du bruger e-mail og immutable ID, skal LDAP-indstillingerne afspejle dette (f.eks. `userPrincipalName` for e-mail og `ObjectGUID` for Custom 1).
Konfigurationsprocedure i MobileIron Access
- Gå til Profile > Federated Pairs.
- Klik +Add New Pair eller rediger et eksisterende par.
- På SP-konfigurationssiden, find sektionen Native Mobile Application Single Sign-On (SSO).
- Vælg Use Tunnel Certificates for SSO.
- Udvid Advanced Options.
- Fra dropdown-menuen Reference Client Certificate, vælg et prøve Tunnel-certifikat.
- I sektionen SAML Subject Configuration:
- For Type, vælg den type, som SP'en forventer (f.eks. `Unspecified` for SAML).
- For Get Value From, vælg det certifikatefelt, der indeholder den ønskede værdi (f.eks. de brugervenlige navne, du definerede tidligere).
- Yderligere Transformationer (Valgfrit): Angiv eventuelle nødvendige transformationer, hvis SP'en forventer afledte værdier.
- SAML Attribut Konfiguration (Valgfrit): Konfigurer denne sektion, hvis SP'en kræver specifikke SAML-attributter i føderationssvaret.
- Krypteringsalgoritmer (Valgfrit): Vælg krypterings- og nøgletransportalgoritmer, hvis SAML-assertioner skal krypteres.
- Verificer SAML Assertion: Brug linket 'View SAML Assertion Example' til at sikre, at assertionen indeholder de korrekte brugeroplysninger.
Ved at følge disse trin kan virksomheder effektivt implementere Native Mobile Application SSO, hvilket giver en mere sikker og brugervenlig adgang til mobile applikationer for deres medarbejdere.
Hvis du vil læse andre artikler, der ligner Mobil SSO: Simplificeret Adgang til Dine Apps, kan du besøge kategorien Mobil.
