Hloubkový pohled na autentizaci SAML
Porozumění SAML v jednotném přihlášení se Salesforce
V oblasti autentizace hraje SAML (Security Assertion Markup Language) klíčovou roli v zajištění plynulého přístupu napříč aplikacemi. Pojďme se do SAML ponořit, pochopit jeho význam pro jednotné přihlášení (SSO) a prozkoumat jeho implementaci se Salesforce.
Výchozí situace
Představte si scénář, kdy máte dva orgy Salesforce: poskytovatele identity (IDP) a poskytovatele služeb. Poskytovatel služeb má data, ke kterým chcete přistupovat, ale místo více sad přihlašovacích údajů toho chcete dosáhnout s jedinou sadou. Myšlenka zní jednoduše, ale mechanika v pozadí může být spletitá.

Klíčové pojmy ve světě SAML
Přístup uživatele: Když se uživatel před ověřením pokusí dostat k zabezpečenému prostředku u poskytovatele služeb.
Přesměrování: Pokud uživatel není ověřený, poskytovatel služeb ho pomocí požadavku SAML přesměruje k poskytovateli identity. V případě potřeby se spolu s ním může poslat i relay state (URL, kterou chtěl uživatel původně navštívit).
Autentizace u IDP: Poskytovatel identity ověří identitu uživatele, obvykle pomocí uživatelského jména, hesla nebo vícefaktorového ověřování.
Aserce SAML: Po autentizaci pošle IDP poskytovateli služeb aserci SAML.
Důvěra poskytovatele služeb: Poskytovatel služeb ověří aserci SAML, vyčte z ní informace o uživateli a udělí přístup. Pokud byl dříve zadán relay state, poskytovatel služeb přejde na tuto konkrétní URL.

Výhody jednotného přihlášení
Jednodušší přístup: Uživatelé potřebují k přístupu k více službám jen jednu sadu přihlašovacích údajů.
Bezpečnost: SAML používá digitální podpisy, které zajišťují integritu dat a brání jejich podvržení.
Interoperabilita: Jako standardní protokol se SAML dokáže propojit s různými IDP a poskytovateli služeb napříč různými technologiemi.
Hlouběji: zkoumání toků SAML
Požadavek SAML: Iniciuje ho poskytovatel služeb směrem k IDP a žádá ho o ověření uživatele.

Odpověď SAML: Zpráva od IDP po autentizaci, která obsahuje podrobnosti o uživateli.

Aserce: Jsou to tvrzení IDP o uživateli, která zahrnují atributy, jako je uživatelské jméno nebo e-mail.
Digitální podpisy: Slouží k ověření asercí, aby bylo jisté, že nebyly neoprávněně změněny.
Relay state: URL přímého odkazu (deep link), která zajistí, že uživatel bude po autentizaci přesměrován zpět na původně zamýšlený cíl.
Když uživatel zahájí přístup, pošle se požadavek SAML k IDP, který po ověření vrátí aserci SAML. Když ji poskytovatel služeb ověří, získá uživatel zamýšlený přístup.

Pomocí nástrojů, jako je SAML Tracer pro prohlížeče, si tento tok můžete zobrazit. Získáte tak průhledný pohled na proces autentizace, od úvodního požadavku až po závěrečné přesměrování po autentizaci.
Bezpečnostní opatření v asercích SAML
Proti možným bezpečnostním hrozbám:
Časová razítka brání útokům opakováním (replay), protože zajišťují, že aserce SAML platí jen krátkou dobu.
Digitální podpisy zaručují, že data nebyla během výměny podvržena.
Aserce navíc mohou obsahovat atributy uživatele, například e-mailové adresy nebo typy uživatelů, což umožňuje podrobnější řízení přístupu na straně poskytovatele služeb.
Závěr
SAML je v jádru protokol založený na XML, který obsahuje klíčové prvky pro autentizaci. I když se může zdát jako kouzlo, je výsledkem promyšlené technologie navržené tak, aby mařila útoky typu „man-in-the-middle“ nebo útoky opakováním.
Díky schopnosti propojit více poskytovatelů služeb s různými technologiemi IDP je základním kamenem ve světě digitální autentizace.
Zůstaňte naladěni
Vydejte se na cestu k Salesforce Identity s jistotou! Další poznatky a tipy najdete tady na www.SteveTechArc.com a na kanálu @SteveTechArc (opens in a new tab) na YouTube. Přihlaste se k odběru a prohlubte své porozumění Salesforce Identity.
Pomáháme měnit svět sdílením informací o integraci s kolegy architekty a se všemi, kdo jsou na cestě k architektovi!
STA 3.6