Millnet BI - en ledande Qlik Elite Partner sedan år 2010

Windows Authentication eller SAML i QlikSense-miljö?

I en standard QlikSense-installation använder man sig vanligtvis av Windows Authentication som autentiseringsmetod. Baserat på vilket Windows-konto du loggat in med kommer QlikSense Hub:en då automatiskt känna av vem du är och ge dig access till miljön. På detta sätt får man integration med sin befintliga Windows-miljö och behöver inte knöla med att hantera “ytterligare ett konto”.

QlikSense + Windows Authentication ≠ Sant

Det finns situationer när det inte är möjligt att använda sig av Windows Authentication. Jag går nedan igenom två scenarier.

Icke Windows-miljö

Det mest uppenbara är när du inte har en Windows-miljö utan istället använder dig av t.ex. Linux eller Mac OS. Då QlikSense endast kan installeras på en Windows Server kan man alltid lösa det med att sätta upp lokala konton på servern. Men, man missar då integrationen och måste hantera lokala användarkonton direkt på servern vilket aldrig är en bra lösning.

Windows-miljö med flera domäner som saknar trust

Nyligen gjorde jag en QlikSense-installation på ett större bolag där vi råkade ut för ett intressant problem som kan uppstå i lite mer komplicerade miljöer. Kunden ifråga har ett stort data-center utomlands där de har en produktions-domän medan man i Stockholm har en klient-domän där alla slutanvändare finns. Kunden ville kunna använda användarkontona som fanns i klient-domänen samtidigt som QlikSense servern skulle stå i produktions-domänen.

Som en komplicerande bakgrund har domänerna ingen trust och bolaget har dessutom strikta compliance-regler för vilken typ av trafik som får gå mellan de båda domänerna. Hur göra?

Det raka alternativet skulle vara att installera QlikSense i produktions-domänen för att få tillgång till all data. Men det skulle kräva att alla konton måste skapas upp även där vilket skulle skapa utmaningar kring kontohanteringen.

Lösningen visade sig finnas i att alla användarkonton var synkade till Office365. Något som gjorde det möjligt att använda SAML-autentisering mot Office365.

Vad är SAML?

SAML (Security Assertion Markup Language) är en standard som används för autentisering mellan olika system. Fördelen med SAML är att det är baserat på SOAP (som i sin tur är baserat på XML och HTTP) vilket gör det möjligt att använda en extern identitetshanterare för att autentisera användarna. Exempel på externa identitetshanterare (s.k. Identity Providers) är t.ex.:

  • Google Apps
  • Office365 (Azure AD)
  • SalesForce
  • OneLogin
  • Active Directory Federation Services (ADFS)

En stor fördel med att använda SAML är att det inte kräver någon kommunikation mellan servern och identitetshanteraren. All kommunikation går istället via klientens webbläsare och görs som vanliga HTTP-anrop. Översatt till en QlikSense-miljö går det alltså att använda en moln-baserad identitetshanterare för att autentisera användarna. Allt som krävs är att slutanvändaren kan komma åt både identitetshanteraren och QlikSense från sin webbläsare.

När vill man använda SAML istället för Windows Authentication?

Som standard använder QlikSense Windows Authentication under NTLM eller Kerberos. Det betyder att om du har ett giltigt Windows konto (lokalt eller via Active Directory) så kan du autentisera dig och komma in i QlikSense Hub. Men - det finns situationer där det kan vara svårt att använda AD-konton i den domän där QlikSense är installerat.

Ett exempel kan vara om servern är installerad i en annan domän än den där alla användare finns och det inte finns möjlighet att sätta upp trust mellan domänerna. Ett annat fall skulle kunna vara om man har användare utanför domänen och man vill inte sätta upp konton åt dessa av säkerhetsskäl. Det kan också vara så att man inte har någon Windows domän och man istället använder molnbaserade tjänster för att dela resurser med varandra. I dessa lägen kan SAML vara rätta vägen framåt.

qliksense saml Hur fungerar det rent praktiskt?
Hur skulle det då praktiskt fungera för en användare som arbetar i en QlikSense-miljö och där man använder sig av en extern identitetshanterare?

När användaren försöker öppna QlikSense Hubb:en skickas denne automatiskt vidare till identitetshanterarens login-sida. Efter inloggning skett skickas användaren automatiskt tillbaka till QlikSense och förblir inloggad där så länge denne är inloggad i identitetshanterarens miljö.

Vill du veta mer?

Vill du veta mer om SAML och användandet av externa identitetshanterare i QlikSense-miljö? Tveka inte att höra av dig till mig. Jag berättar gärna mer och kan även agera resurs för att hjälpa er konkret framåt med ett införande.

Gustav Gager
0736 330 398

Taggar: Qlik Sense

Kontakta oss

Millnet BI logotyp

Millnet BI AB
Surbrunnsgatan 44A, 3tr
113 48 Stockholm

08 - 651 18 00

Följ oss på LinkedIn