SSO představuje přístupovou kontrolu do několikanásobných, spojených, ale jinak zcela nezávislých softwarových systémů. Zjednodušuje nutnost znalosti/vlastnictví mnoha přihlašovacích hesel či atributů na jedno jediné, s jehož pomocí se dostaneme všude, kam můžeme. Tedy do každého nezávislého systému, který tvoří výše uvedený spojený celek.
Současné výzvy
Úkol to přitom vůbec není jednoduchý, protože různé systémy používají různé přihlašovací mechanismy – které je samozřejmě všechny nutné zahrnout pod křídla SSO, jinak tato technologie postrádá smysl. Právě vypořádání se s různými přihlašovacími atributy (ve srovnání s jednoduchou autentizací) představuje jednu z největších výzev SSO.
Druhou pak představuje nutnost kvalitní správy přihlašovacích atributů do všech podřízených systémů - musí v nich být pořádek a je nutné zabezpečit jednotnou správu. Třetí výzvou je zajištění dostatečné bezpečnosti systému, a to z několika hledisek. Jeden jediný použitý přihlašovací atribut musí být dostatečně bezpečný, nesmí hrozit nebezpečí zneužití systému apod.
Pokud se ale dokážeme vypořádat s těmito výzvami, pak přínosy nasazení SSO jsou značné. V prvé řadě se uživatel nemusí trápit s různými přihlašovacími jmény a hesly. Z praxe se obecně ví, že tlačení na větší množství kvalitních hesel je ve své podstatě kontraproduktivní: uživatelé mají tendenci používat stejná hesla, někam si je poznamenávat či jinak hledat cesty, jak zmíněná bezpečnostní pravidla obejít.
Dále nasazení SSO přináší zvýšení produktivity práce, neboť není nutné se zdržovat opakovaným vkládáním přihlašovacích atributů se stejnou identitou a uživatel může plynule přecházet z jednoho samostatného systému do druhého jako by tvořily jednolitý celek. Vyšší produktivita práce mj. znamená i méně zásahů technické podpory.
Předností SSO je také zvýšení bezpečnosti na všech úrovních vstupu, výstupu a přístupu, která tak odkázaná na uživatele a jeho (ne)disciplinovanost. SSO umožňuje nasadit centralizovanou správu a reportování, což přispívá k zajištění souladu s legislativou, bezpečnostní politikou, přináší podklady pro audit stejně jako data shromážděná na jednom místě zvyšují možnost kontroly.
Slabiny SSO
Z výše uvedeného by se mohlo zdát, že SSO je úžasnou technologií, bez nejmenší chybičky a bez které se nedá existovat. To samozřejmě není pravda, i ona má svá omezení nebo slabiny.
Kritikové často SSO vytýkají, že je nepoužitelná v reálném provozu: že některé přihlašovací způsoby není schopná obsáhnout, že její správa je příliš náročná, že vynaložené náklady a energie se nevracejí či že jde o technologii, která vyžaduje mnohé kompromisy, a to včetně oblasti bezpečnosti.
Ta sama o sobě je podle kritiků nasazením SSO dokonce výrazně dotčena, protože při jednom jediném přihlášení se získává přístup vždy a všude. Je tak eliminována výhoda několikastupňové ochrany a spoléhá se na jediný „zlatý klíč“, s nímž celá bezpečnost stojí a padá.
Samozřejmě, že se všemi těmito nevýhodami se dá polemizovat (stejně jako s výhodami) a spíše než paušalizovat je dobré nasazení SSO řešit případ od případu.
Principy činnosti
Od implementační stránky se pojďme ještě podívat na technologické otázky: jak vlastně systémy SSO fungují.
Jednak jsou to systémy založené na Kerberosu. Uživatel se přihlásí do aplikace, která mu následně vystaví virtuální „vstupenku“. Ta je pak používána kdykoliv přistupuje k dalším aplikacím vyžadujícím autentizaci (e-mail, informační systém apod.). Tento systém je používaný například v prostředí Windows u technologií aktivních adresářů.
Microsoft ve svých systémech používá ještě jednu technologii SSO, která ukazuje další možnost přístupu, a to Integrated Windows Authentication. Ta využívá autentizačních protokolů Spnego, Kerberos a NTLMSSP ve spojení s funkcionalitou SSPI, přičemž poprvé našla uplatnění ve Windows 2000 a později ve všech NT platformách.
Technologie je využívána pro propojení IIS a prohlížeče (v daném případě Internet Explorer). Dnes už ale není limitována jen na prostředí produktů Microsoftu, ale propojuje i platformy Unix, Linux a Mac.
Dále jsou to systémy SSO založené na hardwarových kartách. Jejich princip je takový, že úvodní přihlášení odemkne kartu, na které jsou uložené všechny další přihlašovací atributy (mohou to být nejen hesla a jména, ale třeba i certifikáty). Aplikace, k nimž je přistupováno, si pak z karty berou potřebné autentizační údaje.
Uživatel tak opět není obtěžován, systém je navíc poměrně bezpečný: je provázaný s autentizačním předmětem a je možné ho využívat při přihlašování z různých počítačů.
Potom jsou to systémy SSO založené na OTP (One-Time Password) tokenech, které jsou považované za velmi bezpečné a odolné proti neautorizovaným přístupům. Ale vyšší bezpečnost s sebou nese i náročnější implementaci.
V praxi se lze často setkat s kombinacemi výše uvedených technik SSO.
***tento článek vyšel v tištěném SecurityWorldu 2/2009