Sök…


Anmärkningar

SAML2.0 är en öppen standard som används för att överföra autentiserings- och godkännandedata mellan tjänsteleverantörer och identitetsleverantörer.

Den vanligaste användningen är webbaserad SSO, där SAML är det som gjorde det möjligt för en användare att logga in på en applikation med referenser från ett annat system, utan att behöva ha de två systemen direkt anslutna till varandra under autentisering.

SAML2.0-autentiseringsflödet

SAML anger tre nyckelroller:

  • Identity Provider (IdP)

    Den part som tillhandahåller och upprätthåller användarnas identitet. Detta kan vara en katalogtjänst som ADFS eller en anpassad databaslösning.

  • Tjänsteleverantören (SP)

    Tjänsteleverantören är den faktiska tjänsten som användaren försöker logga in på. Detta kan vara en webbplats, en applikation eller vilken tjänst som en användare borde behöva logga in på.

  • Huvudmannen / användaren

    Den faktiska användaren som initierar begäran eller försöker komma åt en resurs från tjänsteleverantören (SP).

Det huvudsakliga SAML-användningsfallet är webbaserad SSO , där SAML-processen genomförs av en uppsättning omdirigeringar i användarens webbläsare, där användaren fungerar som symbolbärare mellan IdP och SP.

Det finns två flöden för webbaserad SSO som använder SAML:

  • Identity Provider (IdP) initierad

    Användaren loggar in på IdP och vidarebefordras därefter till SP: s val. Exempelvis loggar en användare in på ett företags intranät och presenteras med alla tillgängliga applikationer.

  • Service Provider (SP) initierade

    Användaren försöker logga in på en applikation, men vidarebefordras till IdP för att utföra den faktiska autentiseringen. Exempelvis försöker en användare logga in på ett fjärr SaaS- program, men vidarebefordras till ett företags IdP så att användaren kan logga in med sina företagsuppgifter i fjärrapplikationen.

Det SP-initierade flödet visualiseras kraftigt av arbetsflödet nedan:

Det SAML-baserade autentiseringsflödet Källa: Wikipedia

  1. En användare försöker komma åt en resurs på en specifik applikation eller webbsida
  2. En användare specificerar (er) han försöker logga in med en extern IdP. SP kommer att generera en SAML-påstående och skickar detta (vanligtvis via POST- eller GET-variabler) medan du vidarebefordrar dig till IdP
  3. Användaren kommer att verifiera sig mot IdP
  4. Den signerade påståendet och token genereras av IdP
  5. Den signerade påståendet och token vidarebefordras (igen med POST- eller GET-variabler) till SP och om det lyckas inleds en session på SP
  6. och vidare kan användaren begära ytterligare resurser från SP medan den har en aktiv session med SP (dvs. via cookies) så att den inte behöver verifiera med IdP på varje begäran.

SAML-felsökningsverktyg

Med alla förfrågningar och påståenden som går fram och tillbaka kan det vara besvärligt att felsöka problem med dina SAML-påståenden och påståenden.

Som inom SAML en kärnprincip inte behöver en direkt anslutning mellan IdP och SP, fungerar användarens webbläsare som en meddelandebärare mellan de två. På grund av detta går all kommunikation - om än krypterad - via din egen webbläsare.

Med hjälp av olika felsökningsverktyg kan du se exakt kommunikation och förfrågningar som görs och vidarebefordras mellan IdP och SP.

För att komma igång, här är några verktyg för olika webbläsare som bör komma igång:

Krom

Firefox

SAML Tracer, för felsökning av SAML-förfrågningar Med till exempel SAML Tracer kan du se avkodade SAML-påståenden och förfrågningar i realtid när du testar och felsöker



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow