SSO - Single Sign On

Single Sign-On (SSO)

Denna artikel syftar till att ge grundläggande förutsättningar för att sätta upp en SSO-lösning till Stratsys.

 

Använder ni inte SSO idag? Vänligen kontakta er konsult eller kundansvarig på Stratsys för vidare dialog då det är en tilläggstjänst.

Många Stratsyskunder vill idag ha en integrerad användarhantering på så sätt att användarna loggas in automatiskt i systemet utan att behöva använda ett separat användarnamn och lösenord.

Fördelarna med denna lösning är att användarna får en bättre upplevelse då de slipper memorera inloggningsinformation och dessutom suddas gränserna ut mot integrerade system (förutsatt att även dessa har implementerat en Single Sign-On-lösning). Användaruppgifter hanteras i kundens system och kunden har full kontroll över vem som kan logga in i Stratsys. Det finns även fördelar för hela organisationen i form av att:

  • Lösenord hanteras centralt (ej stratsys). Om användaren glömmer bort sitt lösenord behöver det endast ändras på ett ställe (i organisationens katalogtjänst, vanligtvis Active Directory). På så sätt minskar supporthanteringen.
  • Direktåtkomst från kundens Intranät. Om tex Årshjul är länkat till kundens Intranät, så kan användaren klicka på åtgärderna i Årshjulet och komma direkt in i Stratsys och göra uppföljning i systemet utan att behöva logga in varje gång.

Tekniska förutsättningar

För implementering av SSO använder Stratsys sig av metodik för federerad identitet mot kundens IdP (Identity Provider). För att kunna implementera denna funktionalitet måste kunden ha en IdP som stödjer federering via SAML 2.0. Användaren autentiseras mot Stratsys via sin egen IdP. Exakt hur användaren upplever inloggningsförfarandet beror på kundens infrastruktur.

Det kan vara ett projekt att sätta upp en IdP arkitekturmässigt, men när man har den på plats är det oftast enkelt med guidning av en teknisk projektledare från Stratsys att sätta upp själva federeringen.

  • Kunden har en Identity Provider (IdP) som har stöd för SAML 2.0-federering. Vi stödjer SAML 2.0 och endast HTTP POST Binding.
  • En Stratsys-databas kan bara hantera en IdP.
  • Alla användare i Stratsys behöver finnas i kundens katalogtjänst. Inga gruppkonton för användare kan användas. Om gruppkonton finns behöver det skapas personliga konton i Stratsys.
  • Alla användare måste finnas i kundens katalogtjänst. Om externa användare behöver komma åt Stratsys kan en separat URL användas och man kommer då runt IdP lösningen.
  • Mappning i federationen görs mellan användarnamn i Stratsys och användarnamn som skickas med från Kundens IdP. Om användarnamn i Stratsys är upplagda på annat sätt än användarnamn i AD så behöver dessa uppdateras i Stratsys.
  •  SAML-responsen tas användarnamnet först och främst från följande Assertion attribut:
    • urn:oid:1.3.6.1.4.1.5923.1.1.1.6 (eduPersonPrincipalName),
    • Om ovanstående inte existerar tas användarnamnet från Subject.NameId
  • Beroende på hur IdP:n är uppsatt kan man få olika beteende på en SSO-lösning. Vissa kunder vill i nuläget ha tvåstegsautentisering via sin IdP, det betyder att man kanske måste använda en PIN/smart card/lösenord i kombination med den automatiska inloggningen. Detta betyder dock ändå att man får ett gemensamt inloggningsförfarande med samma användarnamn och lösenord som man har i den centraliserade lösningen
  • Efter att SSO är aktiverat är detta det enda inloggningssättet. Det går att använda www.stratsys.se/login men detta rekommenderas inte.
  • För att SLO ska fungera krävs det att NameId skickas med som claim vid inloggningen.

Innan vi startar

 

Visar det sig att uppsättningen är mer komplex/speciell än det som framgår nedan, skicka gärna in din fråga till support@stratsys.se så hjälper vi givetvis till! 😊 

Ordlista 

SSO – Single Sign-on, Inloggning som upplevs automatisk för användaren. 

SLO - Single Log out, Utloggning som upplevs automatisk för användaren. 

SP – Service Provider (“tjänsteleverantör”), i detta fall är det Stratsys som agerar SP, det är tjänsten Stratsys som användaren vill komma åt. 

IdP – Identity Provider (“identitets-/federeringstjänst”), detta är den tjänst som auktoriserar användaren, som ger användaren åtkomst. Det finns ett flertal IdP:er som våra kunder använder och som de kan använda för att få åtkomst till Stratsys, den vanligaste är: 

  • ADFS– Active Directory Federation Services, Microsofts federeringstjänst för de som kör en lokal installation av Active Directory, 

AD – Active Directory, den vanligaste katalogtjänsten hos våra kunder. Det är den som håller koll på en organisations användare. 

Provisionering – Uppskapande av användare.  

Claim – Information om ett givet attribut för en användare 

Attribut – Informationsbärare vid SSO-inloggning. Har ett namn och ett värde, t.ex. OrganizationName => Stratsys 

Uppstart – allmän information och frågor vi behöver svar på 

Det finns några grundförutsättningar som gäller för samtliga SSO-lösningar och det är följande: 

  • Användaren behöver ha samma användarnamn i Stratsys som i deras katalogtjänst (vanligtvis AD).  
  • Stratsys stödjer endast 1 IdP där samtliga användare som ska använda SSO-inloggningen behöver finnas.  
  • Om det är en kund som haft Stratsys tidigare där nu SSO ska läggas upp så kan alla användarnamn behöva uppdateras. 
  • För kunder som sätter upp SSO mot Azure Active Directory kan vi med fördel använda deras e-postadress som användarnamn i Stratsys. 
  • Vi erbjuder tre typer av SSO-lösningar, välj vilken typ som ni önskar att konfigurera och följ instruktionerna nedan:
    • SSO SAML2 (SAML2) - Den absoluta majoriteten av våra uppsättningar är denna 
      • Office 365 (O365) - Absolut enklast att konfigurera, kan gärna rekommendera den om de har sina användare i Office 365 
        • OpenId Connect (OIDC) - Ovanligt att någon använder denna men möjligheten finns, om ni önskar att använda denna vänligen kontakta support@stratsys.se.

      Standardinloggning

      Om någon av SSO-lösningarna är satt som standardinloggning så kommer den att väljas då kunden navigerar till https://www.stratsys.se/[kundnamn]. Om inget av SSO-alternativen är satt som standard kommer inloggningssidan att visas.  

      Vi rekommenderar alltid att man så snart som möjligt efter verifiering att det fungerar sätter sitt SSO-alternativ som standardinloggning, då vi helst ser att kunden stänger av möjligheten till formulärinloggning om det är möjligt. 

      Standardinloggningen finner ni i plattformsadministrationen under Single Sign-on > för migrerade kunder. För icke-migrerade kunder finner ni Standardinloggningen i administrationen under Inloggningsalternativ >

      Plattformsadministrationen för migrerade kunder (Bild 1)
      Administrationen för icke-migrerade kunder (Bild 2)

        Konfigurera SSO 

        Vissa delar nedan är desamma oberoende av vald lösning, medan andra endast fungerar för någon eller några av lösningarna. 

        SSO SAML2 (SAML2)

        1. Klicka på Single sign-on i Plattformsadministrationen
        2. Klicka på pennan för Saml2 under Inloggningsmetoder.
        3. Aktivera inloggningsalternativet under Generella > Aktiverad
        4. Välj gärna SSO som standardinloggning, detta är ett valfritt alternativ, läs mer om det under Innan vi startar - Standardinloggning
        5. Ändra visningnamn om du vill (t.ex. SSO)
        6. Ändra Metadata version till den senaste namngivna versionen (v4 i skärmbilden nedan). 
        7. VIKTIGT: Klicka på Spara en gång nu.
        8. Single log-out, går bra att slå av om så önskas.
        9. Kopiera Stratsys SP-metadata och för konfigurering i er miljö. Vi behöver även ert IdP-metadata för att uppsättningen ska fungera.
        10. IdP-metadatat från er läggs in i fliken ”Extern IdP” under SAML-inställningar. Om Stratsys kan tolka deras metadata så visas en ”tumme-upp-symbol” ute till höger.1 
        11. Gå till fliken Mappning av attribut.
        12. Lägg in motsvarande claim som finns i ert AD för användarnamn. Använd gärna förslaget på attribut för användarnamn (urn:oid:1.3.6.1.4.1.5923.1.1.1.6).  
        13. Klicka på Spara. Nu är vi redo att testa! 

        Testa först själv att gå till https://www.stratsys.se/[kundnamn] eller https://[kundnamn].app.stratsys.com och klicka på Single Sign-on eller motsvarande namn som ni valt. Om ni redan valt SSO som standard så behövs inte detta klick, eftersom ni då kommer komma direkt till SSO-inloggningssidan.

        Nu borde ni komma er interna inloggningssida. Här kan ni testa att logga in med ert egna konto eller be en användare att testa inloggningen. Då användaren klickar på Single Sign-on (eller går direkt mot sidan) så borde användaren nu slussas in direkt till Stratsys. Grattis, nu är det klart! 😊 

        Får du eller någon användare något fel här, läs felmeddelande och se om det står något som du kan bistå med, ta annars skärmdumpar och ta kontakt med support@stratsys.se så hjälper vi er vidare. 

            Office 365 (genom Azure AD)

            1. Klicka på Single sign-on i Plattformsadministrationen
            2. Klicka på pennan för Azuread under Inloggningsmetoder.
            3. Aktivera inloggningsalternativet under Generella > Aktiverad
            4. Välj gärna SSO som standardinloggning, detta är ett valfritt alternativ, läs mer om det under Innan vi startar - Standardinloggning
            5. Ändra visningnamn om du vill (t.ex. O365)
            6. Kopiera er Tenant ID från o365. Er Tenant ID återfinns under Azure Active directory > Properties > Tenant ID
            7. Lägg in TenantId i fältet Azure AD Tenant Id i Stratsys Platform Center, aktivera inloggningsmetoden och Klicka på ”Spara”. 

              Testa därefter, eller be en användare att testa att logga in genom att gå till https://www.stratsys.se/[kundnamn] eller https://[kundnamn].app.stratsys.com och klicka på O365 (visningsnamnet för inloggningsalternativet) för att testa inloggningen.  

              Här behöver användarna godkänna Stratsys som tjänst första gången. Ibland kan det även krävas att en administratör för deras O365 godkänner Stratsys som tjänst. Se mer om detta i felsökningsavsnittet nedan. 

              Användarprovisionering (SAML2, O365, OIDC) 

              OBS! Användarprovisionering får aldrig användas i kombination med AD-synk, då dessa inställningar inte är kompatibla med varandra 

              Användarprovisionering innebär att användare som inte tidigare lagts till i Stratsys kommer att läggas till automatiskt om de går till https://www.stratsys.se/[kundnamn] eller https://[kundnamn].app.stratsys.com

              För att användarprovisioneringen ska fungera behöver attribut mappas.

              1. Gå till Plattformsadministrationen > Single sign-on
              2. Välj pennikonen för Användarprovisionering > Aktivera automatiskt skapande av användare vid inloggning med single sign-on
              3. Mappa därefter attributen enligt instruktionerna nedan
              4. För att användaren ska skapas i Stratsys behöver även inställningen Standardbehörighet för nya användare i Stratsys vara aktiverad, se nedan:
              5. Här behöver ni välja vilken behörighetsgrupps som användare som skapas upp ska få som huvudbehörighet vid inslussning. Vanligtvis brukar en ny grupp skapas upp för provisoneringens syfte och kallas något i still med Inslussningsbehörighet eller SSO-inslussning
              6. Ni behöver även välja en Huvudenhet som användarna hamnar på vid inslussning.
              7. Behörigheterna för användarna ändras därefter manuellt för vardera användare. Det går då att exempelvis sortera på den specifika behörigheten för att hitta användarna, se nedan bild:
              8. Det går inte att få någon påminnelse eller notis när en ny användare skapats upp.
              9. Om användarprovisionering är påslagen, men inställningen inte är aktiverad i Stratsys får man följande felmeddelande: 
              10. Användaren blir dock tillagd i Plattformsadministrationen, men den kommer inte att skickas till Stratsysdatabasen per automatik, utan får i så fall läggas till manuellt där. Notera att även om ovan steg löses i efterhand behöver användaren som testat provisioneringen och inte lyckats läggas till manuellt i databasen.

              Mappning av attribut i O365 och OIDC 

              För O365 och OIDC kommer användarnas namn, efternamn, epostadress och användarnamn konfigureras automatiskt. Detta behöver därför inte ställas in.

              Mappning av attribut i SAML2 

              För SAML2 behöver man själv ställa in vilka Claims i IdP:n som ska hamna på vilket fält i Stratsys. Det finns ett förslag under fliken Mappning av attribut i Stratsys Platform Center på vilka attribut ni kan använda. De motsvarande textsträngarna som lagts upp i ert AD behöver sedan läggas in i respektive textruta för att de ska mappas

              Attributen för icke-migrerade kunder sätts upp under Administrationen > Single Sign-On > Saml2. Notera de claims som visas på bilden nedan endast är exempel, ni kan givetvis skicka andra claims än dessa. Telefon är ovanligt att ta med och inte nödvändig, men möjligheten finns. 

              De motsvarande textsträngarna som lagts upp i ert AD behöver sedan läggas in i respektive textruta för att de ska mappas, se bilder nedan för exempel från AD FS (lokalt AD) och Azure AD.  

              Notera att de nedan endast är exempel, kunden kan skicka andra claims än dessa 

              För er som kör Azure AD med SAML2 så går det bra att ha samma användarnamn som e-postadress, exempel på mappning visas nedan

              Single Log-out (SAML2)

              Denna funktionalitet gäller endast för SAML2. Funktionaliteten innebär att en användare som loggar ut från Stratsys även kommer att loggas ut från kundens IdP och ombes logga in igen om denne vill komma åt resurser som ligger inuti kundens domän. För att SLO ska fungera krävs att ett claim för NameID skickas med till Stratsys vid inloggningsförfarandet.

              Single Log Out innebär att Stratsys skickar en utloggningssignal till kundens IdP om att försöka logga ut användaren från andra tjänster som användare samma IdP. De flesta kunder vill inte ha det såhär, så standardrekommendationen är att denna är avstängd som default. 

              Om ni vill ha inställningen aktiverad så återfinns den på följande ställe i SAML2-konfigurationen: 

              Felsökning

              Nedan följer lite vanliga fel som kan uppstå samt hur det kan åtgärdas. 

              SAML2 Azure AD 

              AADSTS50105 The signed in user xxx is not assigned to a role for the application… 

              Lösning: Användaren behöver ges rättighet till Stratsys. 

              AADSTS7000112 Application ’XXXXXXX’ is disabled 

              Lösning: Stratsys-applikationen i er Azure AD behöver aktiveras av en användare med administrationsbehörighet i ert Azure AD. Ni återfinner applikationen under Enterprise Applications i Azure AD. 

              O365 Azure AD

              Användare tillåts inte logga in. Felsida från Office365 visas med ett felmeddelande. Be användare ta skärmdump av felet och skicka till sin Azure-administratör med support@stratsys.se på CC. Troligtvis behöver konfigurationen ändras i er ände så att Stratsys tillåts i er Azure-uppsättning. Se tips här: http://blog.schertz.name/2020/04/enterprise-application-consent-requests-in-azure/ 

              Felsökning allmänt 

              Får ni något fel vid uppsättning som inte förklaras ovan, så ta gärna kontakt med oss på support@stratsys.se så bistår vi med felsökning så att uppsättningen kan tas i mål så snabbt och enkelt som möjligt. 😊