Bankovní institut vysoká škola Praha Katedra informačních technologií a elektronického obchodování
Systémy jednotného přihlášení – Single Sign On (SSO) Bakalářská práce
Autor:
Pavel Novotný Informační technologie
Vedoucí práce:
Praha
Ing. Jiří Rezler
duben, 2009
Prohlášení:
Prohlašuji, že jsem bakalářskou práci zpracoval samostatně a s použitím uvedené literatury.
V Praze dne: 10. 4. 2009
Pavel Novotný
Poděkování:
Děkuji vedoucímu práce panu inženýru Jiřímu Rezlerovi za jeho přístup a vedení
bakalářské
práce.
Dále
děkuji
mému
zaměstnavateli
Lloyds Holding s.r.o. za poskytnuté prostředky nutné ke zpracování práce. Děkuji mojí manželce Pavle Novotné za rady ke zpracování práce.
Anotace práce: Bakalářská práce na téma Systémy jednotného přihlášení (SSO) pojednává o problematice přístupu k informačním systémům a tím informacím, které systémy poskytují pomocí systému jednotného přihlášení. Bakalářská práce poskytuje přehled systémů jednotného přihlášení jako nástrojů vhodných k pohodlnějšímu a bezpečnějšímu přístupu k informacím. Práce nabízí komplexní pohled na systém jednotného přihlášení Enterprise Single Sign-On společnosti Microsoft. Klíčová slova: identita, autentizace, správa uživatelů, SSO, XML, Credential databáze, Master Secret, Master Secret server, spřátelená aplikace, SSO Tiket, mapování uživatelských účtů, jednotné přihlášení
Annotation: The bachelor work discusses about the access to information systems and to information which are saved on, via single sign on system. The bachelor work provides a summary of Single Sign On systems as systems which make getting data effectively. Complex view is focused on Microsoft Enterprise Single Sign On system. Key words: identity, authentication, user management, SSO, XML, Credetial database, Master Secret, Master Secret server, affiliate application, SSO Ticket, user accounts mapping, single sign on
Obsah: 1. ÚVOD ........................................................................................................................................................... 7 2. IDENTITA A AUTENTIZACE ................................................................................................................. 9 2.1. ZÁKLADNÍ VLASTNOSTI SPRÁVY IDENTITY ............................................................................................. 9 2.2. FUNKCE SPRÁVY IDENTITY ................................................................................................................... 12 2.3. STAVEBNÍ BLOKY SPRÁVY IDENTITY .................................................................................................... 13 MEZI ZÁKLADNÍ STAVEBNÍ BLOKY PATŘÍ: ................................................................................................... 13 2.4. ZAVEDENÍ PROSTŘEDÍ A PODPŮRNÉ INFRASTRUKTURY ......................................................................... 14 2.5. ZÁKLADNÍ TECHNOLOGIE A STANDARDY IMPLEMENTACE SPRÁV IDENTITY ......................................... 14 3. PRINCIP SYSTÉMU JEDNOTNÉHO PŘIHLÁŠENÍ .......................................................................... 17 3.1. PŘÍNOSY SYSTÉMU JEDNOTNÉHO PŘIHLÁŠENÍ SSO............................................................................... 17 3.2. PĚT HLAVNÍCH ZPŮSOBŮ APLIKACE SYSTÉMU JEDNOTNÉHO PŘIHLÁŠENÍ ............................................. 18 3.2.1 Enterprise Single Sign-On ............................................................................................................ 18 3.2.2 Webové Single Sign-On................................................................................................................. 18 3.2.3 Kerberos (nebo Tiket/Token Autentizace) ..................................................................................... 19 3.2.4 Federace Identity .......................................................................................................................... 19 3.2.5 OpenID.......................................................................................................................................... 19 4. MICROSOFT ENTERPRISE SINGLE SIGN-ON ................................................................................ 20 4.1. LICENCE PRODUKTU MICROSOFT ENTERPRISE SINGLE SIGN-ON .......................................................... 20 4.2. ÚLOHA SYSTÉMU JEDNOTNÉHO PŘIHLÁŠENÍ ......................................................................................... 21 4.3. SKUPINY UŽIVATELŮ SYSTÉMU JEDNOTNÉHO PŘIHLÁŠENÍ .................................................................... 22 4.4. KOMPONENTY SYSTÉMU JEDNOTNÉHO PŘIHLÁŠENÍ .............................................................................. 24 4.4.1 Credential databáze ...................................................................................................................... 25 4.4.2 SSO server..................................................................................................................................... 25 4.4.3 Master Secret SSO server ............................................................................................................. 25 4.4.4 SSO spřátelené aplikace................................................................................................................ 26 4.4.5 Mapování ...................................................................................................................................... 28 4.4.6 SSO Tikety ..................................................................................................................................... 30 4.5. KONFIGURACE MICROSOFT ENTERPRISE SINGLE SIGN-ON .................................................................. 31
5
4.6. INSTALACE SYSTÉMU MICROSOFT ENTERPRISE SINGLE SIGN-ON ........................................................ 32 4.6.1 Přechod z Microsoft Host Intragration Serveru 2000, nebo z SNA Serveru 4.0 ........................... 32 4.6.2 Přechod ze starší verze Microsoft Enterprise Single Sign-On ...................................................... 34 4.6.3 Standardní instalace ..................................................................................................................... 34 4.7. PRÁCE SE SYSTÉMEM MICROSOFT ENTERPRISE SINGLE SIGN-ON......................................................... 36 4.7.1 Konfigurace Enterprise SSO serveru za pomoci konfiguračního průvodce .................................. 37 4.7.2 Nastaveni Enterprise Single Sign-On Serveru .............................................................................. 37 4.7.3 Povolení Enterprise Single Sign-On ............................................................................................. 38 4.7.4 Zakázání Enterprise Single Sign-On ............................................................................................. 38 4.7.5 Jak změnit Master Secret Server ................................................................................................... 38 4.7.6 Zobrazení informací Credential databáze .................................................................................... 39 4.7.7 Aktualizace Credential databáze .................................................................................................. 39 4.7.8 Nastaveni Enterprise Single Sign-On Tiketů ................................................................................. 40 4.7.9 Audit systému Microsoft ENTSSO................................................................................................. 41 4.7.10 Povolení SSL ............................................................................................................................... 41 4.7.11 Správa Master Secret .................................................................................................................. 41 4.7.12 Specifikace SSO administrátorů a administrátorů spřátelených aplikací ................................... 42 4.7.13 Správa spřátelených aplikací ...................................................................................................... 43 4.7.14 Správa mapování uživatelů ......................................................................................................... 44 4.7.15 Inicializace systému Single Sign-On spřátelenou aplikací.......................................................... 45 4.7.16 Povolení a zakázání SSO inicializované spřátelenou aplikací .................................................... 46 4.7.17 Založení spřátelené aplikace SSO inicializované spřátelenou aplikací ...................................... 46 4.7.18 Ověření hesel pro SSO inicializované spřátelenou aplikací ....................................................... 48 4.7.19 Správa uživatelských mapování pro SSO inicializované spřátelenou aplikací ........................... 50 4.7.20 Synchronizace hesel .................................................................................................................... 50 4.8 BEZPEČNOSTNÍ DOPORUČENÍ PRO PROVOZOVÁNÍ MICROSOFT ENTSSO ............................................... 51 5. DALŠÍ ŘEŠENÍ SYSTÉMU JEDNOTNÉHO PŘIHLÁŠENÍ .............................................................. 54 6. ZÁVĚR ....................................................................................................................................................... 55 7. SEZNAM POUŽITÉ LITERATURY...................................................................................................... 58 8. SEZNAM POUŽITÝCH ZKRATEK ...................................................................................................... 60
6
1. Úvod Tématem práce jsou systémy jednotného přihlášení Single Sign-On (SSO). Abychom systémům jednotného přihlášení dobře porozuměli, vysvětlím nejdříve základní pojmy týkající se lidí jako uživatelů informačních systémů a aplikací poskytujících jim informace napříč informačními systémy. Informační systémy jsou častokrát založeny na odlišných technologiích, funkcích a výkonech. Sada dílčích systémů bývá nazývána distribuovaný systém. V první části se věnuji možnostem a pohledům, které mají rozpoznat uživatele a jeho elektronickou totožnost, kterou tyto nehomogenní, distribuované systémy musí jednoznačně identifikovat mezi množstvím jiných uživatelů a poskytnout mu informace, které náleží právě jemu a nikomu jinému. Aby mohly být informace z distribuovaného systému předávány tomu uživateli, který si je vyžádal bezpečně, a jednotně bylo nutné zavézt řadu standardů z celé oblasti problematiky informačních technologií. Krátkým shrnutím zavedených standardů a organizací, které se o zavedení zasloužily je první kapitola uzavřena. Následuje pohled na problematiku systému jednotného přihlášení. Jednotlivé technologie systémů jednotného přihlášení jsou popsány s ohledem na oblast informačních systémů, na které mají být služby jednotného přihlášení aplikovány. Cílem kapitoly „Princip systémů jednotného přihlášení“ je poskytnout ucelený přehled o možnostech použití SSO. Jednomu konkrétnímu řešení systému jednotného přihlášení aplikovaného v prostředí organizace je věnována zásadní část této práce. Systém Enterprise Single Sign-On, který jsem si vybral, je produktem společnosti Microsoft. Důvodem výběru systému právě od společnosti Microsoft je masové nasazení jejích produktů napříč informačními systémy. Mnoho organizací postavilo na produktech firmy Microsoft celý informační systém. Je tedy pravděpodobné, že bude systém jednotného přihlášení od společnosti Microsoft pochopen širokým spektrem čtenářů. Podklady, které jsou základem pro vypracování práce, lze
nalézt
volně
dostupné
na
internetových
stránkách
společnosti
Microsoft
http://msdn.microsoft.com. Analýzou materiálů poskytnutých firmou Microsoft by měl být systém popsán na úrovni součástí, ze kterých je systém složen. Funkce jednotlivých součástí systému jsou vysvětleny, tak aby bylo jasné, jak jednotné přihlášení uživatele k informačnímu systému funguje. Cílem není vysvětlit systém do detailních procesů odehrávajících se uvnitř samotného systému, ale podat ucelenou zprávu o zvoleném systému jednotného přihlášení. Měly by být vysvětleny procesy instalace a konfigurace a
7
možnosti ovládání systému jednotného přihlášení Enterprise Single Sign-On od společnosti Microsoft z pohledu uživatele i administrátora systému. Závěrečná kapitola je věnována přehledu vybraných systémů jednotného přihlášení, jež nejsou produkty společnosti Microsoft. Systémů, které řeší systém jednotného přihlášení na principu obdobném jak tomu je u Microsoftu, ale i systémů organizací, které pojaly problematiku řešení systému jednotného přihlášení jinak. Cílem poslední kapitoly je stručně upozornit na možnost výběru systému jednotného přihlášení, který co nejlépe vyhovuje požadavkům zákazníka.
8
2. Identita a autentizace Ve světě digitálních technologií jsou všichni uživatelé konkrétních aplikací, systémů, a služeb, pouze koncovými spotřebiteli případně poskytovateli služby a jejich jednoznačná identita je přisouzena jejich identifikátoru. Jednoznačnou identitou rozumíme totožnost entity (osoby, místa, věci, obecně konkrétního objektu), která je jednoznačně identifikována určením jména entity udaného v jistém kontextu a určením jaký má identifikovaná entita v tomto kontextu profil. Profil specifikuje informace o nástrojích, preferencích, omezeních, zdrojích a výsadách potřebných pro řádné plnění role entity v daném kontextu. V informačních systémech mluvíme o digitální identitě rovnající se elektronickému záznamu atributů určujících identitu (jméno, jednoznačný identifikátor, adresa, atp.). Entita může mít více digitálních identit, které mohou být charakterizovány například odlišnými profily. Správa takové jednoznačné identity pokrývá celý její životní cyklus od zavedení do systému přes modifikaci jejích výsad a práv, až po zánik identity. Správa identity je komplex služeb poskytujících na základě předem definovaných politik automatizované, bezpečné a efektivní řešení úkonů spojených se správou široké komunity uživatelů k omezeným a často také citlivým informačním zdrojům.
2.1. Základní vlastnosti správy identity Základní rysy správy identity zahrnují: •
centralizovanou administraci
•
možnost delegace administrativních úkonů na bázi předem definovaných rolí a pravidel
•
možnost manipulace s hesly uživateli samoobslužně (bez vnějšího zásahu centrální administrativou)
•
dostupnost inteligentního směrování schvalovacích postupů při vyřizování žádosti o přístup ke zdrojům
•
automatizované
aktivování
prostředí
jednotlivých
uživatelů
a
dostupnost
kontrolních mechanismů a mechanismů pro automatické generování přehledových zpráv, které podávají informace o uživatelích a jejich přístupech. Klíčovou roli hrají při správě identity funkce související s řízením přístupu uživatelů k informačním zdrojům. Aby mohla být tato klíčová role správy identity efektivně implementována, musí být zavedena odpovídající podpůrná infrastruktura. Takovou
9
infrastrukturou mohou být například adresářové služby, autentizační služby, workflow 1 procesů souvisejících se správou identity. Software podporující správu identity, vzhledem k nejvíce rozšířeným způsobům zajišťování služby autentizace uživatelů systému, podporuje především automatizaci správních procesů souvisejících s péčí o hesla. Důvěryhodnost hesla je možné zajistit omezením doby jeho platnosti. Po vypršení této doby musí uživatel heslo inovovat. Pokud uživatel získává data a přistupuje k distribuovanému systému, musí být zajištěna synchronizace inovace hesla do všech částí celého systému. Právě k tomuto účelu se jeví vhodné použít technologii SSO. Využitím služeb správy identity se často dosahuje navýšení úrovně bezpečnosti a zvyšuje se produktivita. Naopak vynaložené prostředky na tvorbu a zavedení aplikací do provozu se snižují. Správu identity v distribuovaných systémech podporují standardizační procesy vyvíjené industriálními zájmovými skupinami. Jednou z takových skupin je World Wide Web Consortium (W3C). Mimo jiné jsou vyvíjeny standardy zaměřené na globálně chápanou správu identity, kde je každý jednotlivec jednoznačně identifikovaný. Podle programového prohlášení W3C2 musí správa identity vyhovovat požadavkům na: •
Přenositelnost a součinnost Vlastníku průkazu identity musí být umožněno použít tento průkaz ve všech aplikacích, službách a doménách. Vhodným vyjádřením uživatelovy identity (ID) je např. textový zápis v jazyce XML 3 . Musí existovat služba, která zobrazí obecně používané identifikátory (jména, příjmení, rodná čísla, telefonní čísla, e-mailové adresy) jako všeobecně použitelné ID uživatelů. Pro předání informací o identitě a autentizaci musí být použito univerzálního protokolu4 podporujícího jak, hierarchické prověřování, tak také modelů p2p5 registrace.
•
Rozšiřitelnost Protokoly a služby by měly být založeny na jazyce XML a na konceptu formátu XML schémat., proto musí existovat slovníkové definice určené k popisu identitních atributů pro služby správy identity, řídících struktur protokolů správy identity včetně
1
Workflow je návod na provádění nějaké komplexní činnosti rozdělený na jednodušší činnosti a jejich vazby.
2
http://www.w3.org/
3
XML (eXtensible Markup Language) je obecný jazyk, jehož zdrojový text obsahuje vlastní text i instrukce
pro jeho zpracování, který byl vyvinut standardizován konsorciem W3C. 4
Protokol je soubor pravidel pro komunikaci.
5
P2P (Peer-to-peer) je pojem, který označuje vzájemnou komunikaci typu klient – klient.
10
autentizace, sdělení výsledku a slovníku dojednávání a musí být podporována distribuovatelnost lokálních slovníkových definic. •
Možnost dohody úrovně soukromí a bezpečnosti V každém případu musí být sjednatelná požadovaná úroveň soukromí a bezpečnosti. Vlastníkům identity musí služba umožnit pracovat s jejich informačními subjekty výhradně podle omezení daných jejich právním systémem. Služba musí používat sjednávací protokol, pomocí kterého může uživatelův agent ovlivňovat úroveň soukromí a bezpečnosti, ve které požaduje výměnu informací.
•
Zodpovědnost Pro dosažení potřebné úrovně důvěry a důvěryhodnosti musí být poskytnuta infrastruktura pro služby správy globální identity, která podpoří dosažení úrovně zodpovědnosti. Zároveň musí být dohodnuty formy, kterými budou agenti prokazovat zodpovědnost za zastupování, dojednávání a výkon své činnosti.
•
Distribuovanost registračních autorit Služby správy globální identity musí, pomocí odpovídajících protokolů a podpory kooperačních prostředí, umožnit působení nijak omezovaného počtu registračních autorit. Musí také zajistit, aby žádné z registračních autorit, nemohly být jakýmkoli způsobem omezovány nebo diskriminovány a aby registrace byly mezi registračními autoritami přenositelné.
•
Distribuovanost certifikačních autorit Služby správy globální identity musí umožnit použití rozšiřitelného protokolu a rozšiřitelného prostředí.
•
Nezávislost vládnoucí autority Musí existovat taková autorita, která reprezentuje rovnocenně všechny entity (lidi, obchod, nevládní organizace, státní správu apod.) Musí být definována jak technickými tak i provozními normami. Taková autorita musí zároveň spravovat vývoj globálního slovníku univerzálních identitních atributů a globálních řídících struktur, definovat formy a způsoby zajištění zodpovědnosti všech agentů včetně registračních a certifikačních autorit.
Jedním z cílů správy identity je vytvoření zřejmé a jednoznačné identity pro každého uživatele relevantní aplikace či systému. Správa identity plní úkoly symbolicky označované jako 4A. Mezi tyto úkoly patří dokazování kdo uživatel je (Authentication), určování jeho práva a výsad (Authorization), správa nástrojů pro řízení přístupu (Access
11
control) a zpravodajská a auditní činnost (Audit, Reporting). Tyto úkoly musí být splnitelné i bez sjednocování skladů ID uživatelů.
2.2. Funkce správy identity Správu identity lze z funkčního pohledu charakterizovat pomocí funkčních celků. Mezi tyto funkční celky patří: •
Správa životního cyklu uživatele V tomto celku je zahrnuta správa profilů jako vlastní správa identity a její distribuce mezi externí databáze, aplikace a adresáře podniku, organizace a jeho partnerů. Dále je zde zahrnuta podpora samoobslužnosti správy profilů a podpora automatických replikací informací z uživatelských profilů systémům. Další součástí je aktivace a deaktivace prostředí uživatele, nebo proces, kterým poskytujeme či zakazujeme přístup k informacím a službám. Aktivace a deaktivace prostředí uživatele zajišťuje změny identitních dat a případné zrušení identity a účtů. Snahou procesu aktivace a deaktivace prostředí uživatele je snížení ceny a doby zřízení, případně zrušení účtu uživatele a zvýšení zaručitelné bezpečnosti. Důležitou součástí celku správy životního cyklu uživatele je delegování administrace, která dává možnost definování, které účty mohou provádět manažerské akce s účty. Musí se zajistit bezpečné prostředí a forma pro řádné provedení manažerské akce. Všechny provedené akce musí být protokolované, zálohované a auditovatelné. V případech, které se týkají uživatelského profilu, je vhodné použití samoobslužnosti uživatelů, která uživateli umožní, pomocí vhodného protokolu, například obnovu zapomenutého hesla. Správa hesel a synchronizace hesel, jež je také součástí správy životního cyklu uživatele se vesměs řeší zavedením mechanismů systému jednotného přihlášení.
•
Řízení přístupu a autorizace Řízení přístupu a autorizace se v současné době, téměř vždy, řeší vhodným systémem jednotného přihlášení. Cílem je práce s mnoha, ve své podstatě nesourodými systémy, bez nutnosti opakované autentizace.
•
Zpravodajství a auditní činnost
Nadstavbovými funkčními celky správy identity jsou následně celky jako federování identity, integrace webových služeb, či prosazování politik a podpora managementu řízeného politikami.
12
2.3. Stavební bloky správy identity Mezi základní stavební bloky patří: •
Aktualizace hesel Zavedení funkčního modelu aktualizace hesel je založené na použití bezpečné autentizační politiky závislé především na důvěryhodnosti hesel. Hesla je nezbytné inovovat po určitých časových intervalech. Inovaci a případně také odblokování účtu poskytuje uživateli právě aktualizace hesel. Cílem je zmírnění potřeby kontaktovat v takových případech administrátora systému a nabídnout službu vhodnou k provedení změny nebo odblokování účtu bez kontaktu manažera systému či aplikace.
•
Synchronizace hesel Modul synchronizace hesel nabízí uživateli použít své jedinečné autentizační údaje ve všech, nebo alespoň všech důležitých, systémech a aplikacích. Software umožňující synchronizaci hesel běží na zvoleném serveru organizace a přes API 6 navazuje na podporované databáze a systémy, které zajišťují bezpečnost aplikací.
•
Jednotné přihlášení - Single Sign-On (SSO) Systémy Single Sign-On navazují a zdokonalují prostou synchronizaci hesel. Umožňují uživateli používat jedny autentizační údaje k přístupu ke všem zdrojům informačního systému, aniž by se museli opakovaně autentizovat. Blíže se s tímto tématem seznámíme v kapitole tři Princip systémů jednotného přihlášení.
•
Inteligentní koncové řízení přístupu Toto řešení je často zakomponováno do uceleného systému aplikací. Nabízí on-line řešení správy uživatelů a umožňuje použití široké palety autentizačních metod zároveň. Součástí inteligentních systémů pro řízení koncového přístupu bývá server, který prosazuje politiku přístupu na principu SSO. Systémy umožňují předávat správu přístupových práv uživatelů obchodním manažerům a také partnerům. Další funkcí bývá aktivace prostředí a podpůrné infrastruktury uživatele.
6
API (Aplication Progamming Interface) je standardizované programátorské aplikační prostředí.
13
2.4. Zavedení prostředí a podpůrné infrastruktury Zavedení prostředí a podpůrné infrastruktury pro uživatele slouží k definici všech procesů, které řídí životní cyklus uživatelů. V mnoha organizacích jsou procesy aktivace řešeny bez zavedeného všeobecně uznávaného standardu, což může vést k chybovosti. Standardem popisujícím aktivaci služeb je značkovací jazyk SPML7.
2.5. Základní technologie a standardy implementace správ identity Ve světě fungují organizace zabývající se vývojem standardů týkajících se obecně uznávaných a následně používaných informačních technologií implementace správ identity. Vzhledem k silné orientaci na formát XML hraje výraznou roli organizace OASIS 8 . Celosvětové neziskové konsorcium OASIS řídí, v oblasti internetového obchodu, konvergenci a přejímání standardů založených na XML. Dále se věnuje standardům autentizace, adresářových služeb, řízení přístupu a aktivačních služeb. Prosazováním součinnosti a webovým službám v různých platformách operačních systémů se zabývá další významná otevřená organizace WS-I 9 . Jedním ze standardů společnosti je platformově a jazykově nezávislý protokol sloužíc pro řízení komunikace mezi aplikacemi běžícími v síti Internet (SOAP). Mezinárodní konsorcium W3C je orientováno na vývoj standardů a směrnic pro užívání webových technologií. V oblasti správy identity se stará o standard WSDL 10 . Rozvoj adresářových služeb založených na adresářové technologii LDAP 11 podporuje organizace IETF 12 . Základy správy identity vycházejí z iniciativ organizace ITU-T13 z oblasti podpory doporučení standardu X.500. Celosvětově uznávané a používané jsou také standardy adresářových služeb. Adresářové služby umožňují uživatelům vyhledat objekty podle známých, specifikovaných podmínek. 7
SPML (Service Provisioning Markup Language) je standardizovaný značkovací jazyk.
8
OASIS (Organization for the Advancement of structured Standards) je neziskové konsorciu, které řídí
vývoj, konvergenci a přijímání otevřených standardů pro globální informační společnosti. 9
WS-I (Web Services Interoperability organization) je organizace zabývající se standardy webových služeb.
10
WSDL (Web Services Description Language) Jazyk WSDL slouží k formálnímu popisu webové službu.
11
LDAP (Lieghtweight Direktory Access Protocol) je síťový protokol na bázi protokolu TCP/IP určený pro
zpřístupňování serverů poskytujících adresářové služby. 12
IETF (Internet Engineering Task Force) je organizace, která podporuje rozvoj adresářových služeb
založených na adresářové technologii LDAP. 13
ITU-T (ITU Telecommunication Standartization Sector) je telekomunikační standardizační uspořádání
Mezinárodního telekomunikačního odboru (ITU).
14
Z pohledu historie je zásadním standardem standard X.500 jehož dílčí standard X.509 je v současné chvíli využíván k definici certifikátů. Nejrozšířenější technologií adresářových služeb je protokol LDAP. Jedná se o síťový protokol na bázi protokolu TCP/IP14 určený pro zpřístupňování serverů poskytujících adresářové služby. Adresářová služba LDAP je aplikace specializovaná pro ukládání dat, jejich organizaci a přístup k nim. V systémech SSO nachází LDAP uplatnění v roli centrální databáze uživatelů pro aplikace a systémy. V síťových adresářích nejsou data vždy jednotně formátována. DSML 15 je aplikace založená na standardu XML umožňující vyjádřit jedním společným formátem odlišné formáty mnoha různých síťových adresářů. Zároveň DSML definuje dokument, jež je možné použít k zobrazení obsahu každého z adresářů a pro výměnu adresářových dat pomocí transportních protokolů. Standardy z oblasti webových služeb vychází z myšlenky vyvolání služeb aplikace jinou aplikací přes datovou síť. Poskytovatelé webových služeb bývají často označování jako poskytovatelé služeb aplikačních. Mezi takovými službami jsou služby z oblasti získávání a ukládání dat, nebo zprávy zákaznického servisu tak také služby správy skladových zásob případně aukce. Škála webových služeb je široká a různorodá. A stále se rozšiřuje. Komunikace mezi webovými službami bývá podporována softwary, které jsou označovány jako „middleware”. Standardizace komunikace vychází z technologického základu formátu XML. Formát XML je základem jazyka WSDL. Výše zmíněný protokol SOAP byl navržen pro komunikaci pomocí protokolu HTTP
16
, který je podporován všemi
internetovými prohlížeči či servery. Webová služba je popsána, mimo jiné, určením zpráv pro komunikaci se službou, operacemi, které služba poskytuje, určením jakými protokoly lze službu vyvolat a jak musí být příslušná data formátována. Takový popis programového rozhraní ve formátu XML poskytuje soubor WSDL.
14
TCP/IP (Transmission Control Protocol / Internet Protocol) je je standardizovaný komunikační protokol.
15
DSML (Directory Services Markup Language) je aplikace založená na standardu XML umožňující vyjádřit
jedním společným formátem odlišné formáty mnoha různých síťových adresářů. 16
HTTP (Hypertext Transfer Protocol) Http je internetový protokol původně určený prováněnu
hypertextových dokumentů.
15
Jazyk WSDL formálně popisuje webovou službu. Ke každé webové službě by měl být takový popis k dispozici. Z takového popisu lze automaticky vygenerovat požadavek v SOAP. Standardním mechanismem umožňujícím registraci a vyhledávání popisů webových služeb je UDDI 17 . Standardem, který poskytuje formát XML prostředí pro tvorbu webových služeb, které umožňují partnerům výměnu autentizační a autorizační informace na aplikační úrovni je jazyk SAML 18 . Standardem řízení přístupu v oblasti webových služeb je jazyk XACML19.
17
UDDI (Universal Description, Discovery a Integration) je univerzální adresář obsahující seznam a popis
dostupných webových služeb, který umožňuje automatické nalezení požadované služby. 18
SAML (Security Assertions Markup Language) je značkovací jazyk pro prosazování zabezpečovacích
postupů. 19
XACML (eXtended Access Control Markup Language) je iniciativa vedená skupinou OASIS [8] určená k
vyjádření bezpečnostní politiky pro přístup k XML dokumentům a datovým zdrojům.
16
3. Princip systému jednotného přihlášení Systémy jednotného přihlášení SSO plní z pohledu správy identity služby řízení přístupu a autorizace. Z pohledu aplikačních architektur budovaných na bázi klient – server označuje pojem Single Sign-On autentizační proces umožňující uživateli, který chce přistupovat k více aplikacím a zdrojům v rámci jedné relace, možnost zadání jména a hesla, případně jiných identifikátorů pouze jednou. Proces SSO, vyžádaný při zahájení relace, autentizuje uživatele ke všem aplikacím, ke kterým má na serveru vydána přístupová práva a tím eliminuje veškeré následné výzvy k autentizaci. Výzvy k autentizaci by, bez zavedeného procesu SSO, byly aktivovány vždy, když by se uživatel v rámci relace přepojil mezi aplikacemi. Hlavní cíle zavedení SSO jsou obvykle spojeny s pohodlím, jež SSO přináší celé organizaci.
3.1. Přínosy systému jednotného přihlášení SSO Jednoduchá a pohodlná správa hesel pomocí SSO umožňuje předcházení ztráty času spojeného se správou hesel v celém jejich cyklu. Vytváření uživatelských přístupů do jednotlivých aplikací a obnovování celé sady zapomenutých hesel. SSO nabízí uživatelům omezit čas věnovaný řízení hesel. Efektivní systém SSO nabízí významné výhody a úspory napříč celou organizací. Chce-li být organizace co nejvíce efektivní, mělo by řešení systému single sign-on přinést výhody širokému spektru oblasti IT, a to jak z pohledu bezpečnosti, tak také z finančního pohledu. Single sign-on má jasné a zřejmé výhody pro celou organizaci. Jednoduchost a pohodlí, které poskytuje koncovým-uživatelům, umožňuje, aby se zabránilo promarněnému času spojeného s obnovou zapomenutých hesel a častou výzvou k zadání hesla. Nicméně, SSO není bez odpůrců. Hlavním argumentem proti systémům SSO je, že tím, že umožňuje uživatelům použít jedno heslo pro přístup do všech jimi používaných aplikací, ulehčuje prácí hackerům 20 , pro které je mnohem jednodušší získat volný přístup k informačním zdrojům uživatele prolomením jediné autentizační sady. Je zřejmé, že bezpečnostní rizika spojená s použitím jediného hesla pro přístup ke všem informačním zdrojům společnosti jsou vysoké. Nicméně jedno dostatečně
20
Hacker (počítačový podvodník) je člověk snažící se proniknout do kódu programu s cílem ovlivnit jeho
chod, nebo získat důvěrná data.
17
silné heslo21 je vyšší zárukou bezpečnosti než celá sada hesel slabých, častokrát snadno získatelných či odhadnutelných. Samozřejmě může být silné heslo použito na všech, nebo alespoň všech klíčových aplikacích i bez zavedení SSO. Ale to není příliš reálné, z důvodu odlišných bezpečnostních politik jednotlivých aplikací. Jednotlivé aplikace mohou být ohroženy i bez SSO. To znamená, že obavy, že všechny aplikace jsou při použití SSO ohroženy útoky hackerů jejichž útok je zdánlivě snadný, lze snadno napravit pravidelnou změnou hesla v centrálním adresáři. Zavedení takové politiky bez SSO není snadné, protože pokud je z důvodu nízké kvality hesla ohrožena jedna aplikace, nemusí být ihned patrné, kterou aplikaci slabé heslo zpřístupňuje. Pro administrátora je navíc složité resetovat hesla v jednotlivých aplikacích. Argument upozorňující na obětování individuálního zabezpečení jednotlivých aplikací separovanými hesly není natolik silný, pokud bereme v úvahu možnost použití silného hesla, snadnost jeho správy a možnost ověření procesu rozšíření hesla do všech aplikací, jež organizace používá. Pokusy hackerů o získání hesla uživatele jsou ztíženy z důvodu změny návyků správy hesla koncových uživatelů. Jedno heslo je uživatelsky snadno pamatovatelné a není nutné jakékoli jeho zaznamenávání.
3.2. Pět hlavních způsobů aplikace systému jednotného přihlášení V současné době existuje pět základních typů aplikace systému jednotného přihlášení. 3.2.1 Enterprise Single Sign-On Systémy jednotného přihlášení typu Enterprise Single Sign-On zabezpečují jednotné přihlášení systémem, jenž po prvotním přihlášení uživatele do primárního systému zachytává následné výzvy sekundárních aplikací k zadání ověřovacích informací a automaticky doplňuje požadované ID a případně heslo 3.2.2 Webové Single Sign-On Webové SSO je někdy nazýváno Web access management, Web-SSO, a umožňuje koncovým uživatelům přístup k aplikacím a zdrojům, které jsou přístupné pomocí internetového prohlížeče. Autentizace je dosaženo pomocí prezentování a archivace identifikačních údajů v cookies 22 na internetovém proxy serveru 23 případně na cílovém 21
Silné heslo obsahuje nejméně sedm znaků, neobsahuje uživatelské jméno ani skutečné jméno, či název
firmy. Neobsahuje slovo, které je možné nalézt ve slovníku a výrazně se liší od předchozích hesel. Hesla lišící se pouze v čísle, například Pavel1, Pavel2, Pavel3 atd., nejsou silná. 22
Coocies jsou malá množství dat v protokolu http která pošle webovému prohlížečí internetový server.
Prohlížeč může tato data uložit do počítače uživatele.
18
internetovém serveru. Informace uložená v cookie je zavolána a použita vždy, když si koncový uživatel vyžádá přístup k Webovému portálu nebo novému zdroji dosažitelného pomocí web prohlížeče. 3.2.3 Kerberos (nebo Tiket/Token Autentizace) Kerberos byl navržen jako model klient server podporující oboustrannou autentizaci. Oboustrannou autentizací je myšleno vzájemné ověření identity koncových uživatelů a služeb. Koncoví uživatelé se ke Kerberos serveru přihlašují pomocí jejich hesla. Výměnou za heslo získají uživatelé od serveru tiket, kterým klientský software prezentuje přístup. Při pokusu přihlášení k serveru, autentizuje uživatele k rozmanitým síťovým službám. Varianta Kerberos je používána jako výchozí autetizační metoda pro Windows 2000, Windows XP a Windows Server 2003. 3.2.4 Federace Identity Novým přístupem vhodným také pro Web aplikace je Federace identity. Federovaná Identita používá standardy protokolů (SAML a WEBSecurity) k oprávnění potvrzení identity uživatele mezi aplikacemi, čímž zabrání nadbytečné potřebě autentizaci. Federování identity umožňuje organizacím poskytovat SSO mezi různorodými sítěmi, slučování účtů, sítí a aplikací k prospěchu zaměstnanců, zákazníků a partnerů. 3.2.5 OpenID OpenID je distribuovaný a decentralizovaný proces. OpenID je základním mechanismem, který váže identitu uživatelů na snadno zpracovatelné URL 24 , které je možné ověřit libovolným serverem, na kterém je protokol spuštěn. V sítích, ve kterých je OpenID povoleno nepotřebují uživatelé, před získáním přístupu ke každé síti, vytvářet a spravovat nový účet. Pro autentizaci uživatele do důvěryhodné sítě podporující OpenID, je identita uživatele potvrzena a předána dalším sítím podporujícím OpenID. Jelikož je filozofie OpenID odlišná od SSO, kde hraje autentizace velkou roli, a protože se nelze spolehnout na důvěryhodnost mechanismu autentizaci, není OpenID použitelné v citlivých oblastech jakými jsou bankovnictví a on-line nákupy.
23
Proxy server je– softwarový nebo hardwarový prostředník mezi klientem a cílovým počítačem. Překládá
klientské požadavky a vůči cílovému počítači vystupuje sám jako klient. Přijatou odpověď následně odesílá zpět na klienta. 24
URL(Unique Resource Locator) se používá k jednoznačnému určení zdroje služby či informace. Je to
způsob, jak jednoznačně zapsat umístění souboru na Internetu nebo na intranetu.
19
4. Microsoft Enterprise Single Sign-On Systém Microsoft Enterprise Single Sign-On (ENTSSO) je autentizační proces firmy Microsoft budovaný na bázi klient-server. Poskytuje služby umožňující koncovému uživateli jednotné přihlášení do podnikových aplikací integrovaných řešením EAI 25 . Systém jednotného přihlášení Microsoft ENTSSO směruje uživatelské účty Microsoft Windows do prověření účtů koncových systémů. ENTSSO lze navíc použít pro obousměrnou synchronizaci hesel mezi Windows a nonWindows26 prostředím. Microsoft Enterprise Single Sign-On poskytuje zjednodušenou správu uživatelských účtů a hesel a to jak samotným uživatelům, tak i administrátorům. Microsoft ENTSSO umožňuje uživatelům přístup ke koncovým systémům a aplikacím pomocí jediného přihlášení do sítě Windows. Microsoft Enterprise Single Sign-On systém se skládá z databáze uživatelských oprávnění (Credential databáze), hlavního bezpečnostního Single Sign-On serveru (Master Secret Serveru), a případně dalších Enterprise Single Sign-On serverů. Systém Microsoft ENTSSO je součástí produktů společnosti Microsoft zaměřených na integraci služeb a zdrojů dostupných v distribuovaném informačním systému. Služby Microsoft ENTSSO podporují například systémy BizTalk Server 2006, Customer Care Framework 2009, Host Integration Server 2006, Microsoft Office Share Point Server 2007 a další.
4.1. Licence produktu Microsoft Enterprise Single Sign-On Při koupi Microsoft ENTSSO, respektive serverového produktu, který ENTSSO obsahuje, nejde o koupi softwarového vybavení, ale pouze o získání licence. Zakoupená licence opravňuje jejího majitele používat softwarový produkt. Právo na užívání softwaru nelze bez svolení autora produktu dále šířit, prodat ani pronajmout. Licence produktu Microsoft Enterprise Single Sign-On je vázána na serverové produkty společnosti, ve kterých je ENTSSO implementováno. Například pokud je zakoupena jedna licence produktu Host Integration Server 2006 získáme možnost použit systém Microsoft ENTSSO na jednom procesoru.
25
EAI (Enterprise Application Integration) Integrace podnikových aplikací, zahrnuje objektově orientované
programování, opětovné využití podnikových plánovacích systémů, distribuovanou programovou komunikaci mezi platformami pomocí zpráv, celopodnikovou distribuci dat a obsahu využitím společných databází a standardů na bázi XML a jiných standardů. 26
NonWindows systémy jsou všechny systémy založené na jiném principu než systémy Windows. (Unix,
Linux, Mac atd.)
20
4.2. Úloha systému jednotného přihlášení Jak bylo již dříve popsáno, systém jednotného přihlášení hraje v distribuovaném systému důležitou roli z pohledu autentizace a identifikace uživatele jako příjemce informací. Abychom porozuměli lépe tomu, jakMicrosoft Enterprise Single Sign-On funguje, je dobré si připomenout tři typy služeb jednotného přihlášení. •
Služby jednotného přihlášení integrované do systémů Windows Služby jednotného přihlášení integrované do systémů Windows umožňují přihlášení do rozmanitých aplikací a sítí za pomoci běžných autentizačních mechanismů. Služby jednotného přihlášení integrované do Windows systémů vyžadují a ověřují uživatelská práva ihned po přihlášení do sítě Windows a používají je k popisu akcí, které může uživatel vykonávat na základě takto zjištěných uživatelských práv. Pokud jsou aplikace integrovány pomocí Kerberos, tak po úspěšné autentizaci uživatelských oprávnění získá uživatel přístup ke všem zdrojům v síti, které jsou integrovány Kerberem.
•
Extranetové služby jednotného přihlášení (Web SSO) Služby Web SSO umožňují přístup ke zdrojům přes síť Internet za použití jedné sady uživatelských oprávnění. Tato sada oprávnění umožňuje uživateli přihlášení na jiné internetové stránky, což znamená do jiných společností. Takovým systémem jednotného přihlášení je Windows Live ID (dříve Microsoft Passport Network) zaměřený na zákaznické aplikace.
•
Služby jednotného přihlášení založené na interní serverové aplikaci Služby jednotného přihlášení založené na interní serverové aplikaci umožňují integraci rozmanitých, nehomogenních aplikací a systémů v prostředí podniku. Tyto aplikace nemusí používat běžný systém autentizace, přičemž mohou mít každá vlastní adresář uživatelů. Jako příklad poslouží organizace, jejíž uživatelé používají systémy Windows. K autentizaci uživatele do podnikové sítě je tedy využito služeb Active Directory. Servery jsou provozovány na systému IBM 27 . K autentizaci stejných uživatelů využívají služeb RACF28. Díky middleware systémů integrovaných do front-end29 a
27
IBM je obchodní společnost zabývající se vynalézáním, vývojem a výrobou informačních technologií,
včetně počítačových systémů, softwaru, systémů pro ukládání dat a mikroelektroniky. 28
RACF (Resource Access Control Facility) je standard– Standard zavedený společností IBM určený
k zabezpečení softwarových produktů. 29
Front-end – front-end je aplikace pomocí nichž získává uživatel informace ze systémů back-end.
FrontFont-end aplikace slouží jako uživatelsky přívětivý nástroj ke komunikaci s back-end systémy.
21
back-end
30
aplikac umožní Microsoft Enterpise Single Sign-On uživatelům
v organizaci připojení do obou front i back-end aplikací za použití jedné sady uživatelských práv. Služby jednotného přihlášení založené na interní serverové aplikaci umožní uživateli přístup ke zdrojům ve Windows doméně a požadavkům přicházejícím z Windows aplikací stejně jako všem ostatním aplikacím integrovaným pomocí Single Sign-On. Navíc, synchronizace hesel zjednodušuje administraci SSO databáze, a uchovává
hesla
synchronizovaně
napříč
všemi
adresáři
uživatelů.
Takové
synchronizace je možné dosáhnout za použití adaptérů synchronizace hesel, které je možné spravovat a upravovat pomocí nástroje Synchronizace hesel. •
Enterprise Single Sign-On Systém Enterprise Single Sign-On Systém poskytuje služby k ukládání a přenosu zašifrovaných informací o uživatelských oprávněních napříč lokálními a síťovými službami a zdroji obsaženými v doméně. K bezpečnému uložení informací o uživatelských oprávněních slouží v systému Microsoft ENTSSO Credential databáze. Middleware aplikace a uživatelské adaptéry mohou využít systém jednotného přihlášení k bezpečnějšímu ukládání a přenosu uživatelských práv napříč síťovým prostředím, díky využití generického řešení systému jednotného přihlášení.
4.3. Skupiny uživatelů systému jednotného přihlášení Aby bylo možné systém jednotného přihlášení Microsoft Enterprise Single Sign-On spravovat a konfigurovat, musí být pro každou z následujících uživatelských rolí vytvořeny skupiny a účty v doméně Windows. Při konfiguraci přístupových účtů můžeme v Microsoft ENTSSO ke každé roli specifikovat více uživatelských účtů. Tato kapitola jednotlivé role popisuje. •
Role SSO administrátora Nejvyšší úroveň uživatelských práv mají v Microsoft ENTSSO právě SSO administrátoři. Práva SSO administrátora opravňují k následujícímu. 1. Vytvářet a spravovat databázi oprávnění 2. Vytvářet a spravovat Master Secret 3. Povolovat a zakazovat SSO systém 4. Vytvářet hesla a synchronizační adaptéry
30
Back-end aplikace slouží ke zpracování dat a předávání informací do front-end systémů. Back-end
aplikace jsou zpravidla běžnému uživateli skryty.
22
5. Povolovat a zakazovat v SSO systému synchronizaci hesel 6. Povolovat a zakazovat inicializaci hostů SSO 7. Vykonávat všechny další administrační úlohy Účet administrátora SSO může být účet zařazený ve Windows skupině, nebo se může jednat o individuální účet. Stejně tak se může jednat o účet v doméně, lokální skupině nebo o lokální účet. Pokud je použit individuální účet, není možné změnit jej na jiný individuální účet. Proto není použití individuálního účtu vhodné. Individuální účet je možné převést na skupinu, pokud je původním daný účet členem nové skupiny. Je důležité, aby byl servisní účet, který spouští Enterprise Single Sign-On, členem této skupiny. Z pohledu bezpečnosti je dobré, nepoužívat účet SSO administrátora pro jiné služby. •
Role Administrátora spřátelených aplikací systému Microsoft ENTSSO Spřátelené aplikace, se kterými SSO systém pracuje, definují administrátoři spřátelených aplikací. Spřátelené aplikace jsou logické entity, které reprezentují backend systémy do kterých se je možné pomocí SSO přihlásit. Následuje výčet administrativních úloh, které jsou administrátorům spřátelených aplikací přístupné: 1. Vytváření a správa spřátelených aplikací 2. Vytváření, mazání a správa oprávnění mapování pro všechny uživatele specifikované spřátelené aplikace. 3. Všechny úlohy, které může vykonávat lokální administrátor a uživatel spřátelené aplikace Účet administrátora spřátelených aplikací SSO může být účet zařazený ve Windows skupině, nebo se může jednat o individuální účet. Stejně tak se může jednat o účet v doméně, lokální skupině nebo o lokální účet.
•
Role uživatele aplikace Pro každou spřátelenou aplikaci musí být založena nejméně jedna skupina uživatelů. Jedná se o seznam koncových uživatelů aplikací v prostředí Enterprise Single Sign-On. Členové skupiny uživatelů aplikací mají k dispozici: 1. Kontrolu a prohlížení jejich oprávnění ve spřátelených aplikacích 2. Správu jejich oprávnění mapování ve spřátelených aplikacích.
23
4.4. Komponenty systému jednotného přihlášení Systém jednotného přihlášení Microsoft Enterprise Single Sign-On se skládá z komponent, které slouží k bezpečnému uložení a předávání informací o přístupech a oprávněních v rámci celého systému bezpečně a spolehlivě. Veškeré informace o přidělených přístupech a oprávněních do všech aplikací systému jednotného přihlášení jsou uložena v databázi
Microsoft
pojmenována Credential
SQL
serveru.
databáze.
Data
V Microsoft uložená
ENTSSO
v Credential
je
databáze
databázi
jsou
z bezpečnostních důvodů zašifrována šifrovacím klíčem Master Secret. Šifrovací klíč generuje a obecně udržuje Master Secret server. Master Secret server může být v systému Microsoft ENTSSO jeden. Další SSO servery, které mohou sloužit k obsluze služeb systému a administraci SSO získávají Master Secret od Master Secret Serveru. Systém jednotného přihlášení dále obsahuje aplikace, k jejichž datům má uživatel přístup bez nutnosti opakované autentizace. Aplikacím sdruženým k systému Microsoft ENTSSO říkáme Affiliate, nebo také spřátelené aplikace. Příklad architektury systému Microsoft Enterprise Single Sign-On je znázorněn na obrázku číslo jedna Komponenty systému Microsoft Enterprise Single Sign-On. V následujících kapitolách jsou jednotlivé komponenty systému Microsoft Enterprise Single Sign-On blíže popsány. Obrázek 1 Komponenty systému Microsoft Enterprise Single Sign-On.
24
4.4.1 Credential databáze Credential databáze je databáze Microsoft SQL serveru31, ve které jsou uložena, pomocí Master Secret, zašifrovaná data popisující spřátelené aplikace stejně jako všechna zašifrovaná uživatelská oprávnění do všech spřátelených aplikací. 4.4.2 SSO server Enterprise SSO server může být nastaven jako Master Secret server. Pokud SSO server není využit ke službám Master Secret, slouží k administraci spřátelených aplikací, zakládání či rušení uživatelských práv a mapování uživatelů. Případně může vykonávat operace vyhledávání uživatelských oprávnění nutných pro přístup uživatele do Affiliate aplikací v Credential databázi, tzv. služby Lookup. Další SSO servery mohou sloužit k vydávání SSO tiketů, které mají možnost aplikace sdružené v systému Microsoft ENTSSO použít k získání uživatelských práv. Pomocí SSO serveru je navíc možné spravovat adaptéry synchronizace hesel. 4.4.3 Master Secret SSO server Master secret server je SSO server, který se stará o šifrovací klíč Master Secret. Když si SSO administrátor vyžádá Master Secret, generuje jej právě Master Secret server. V registru skladuje Master Secret server šifrovací klíč rozšifrovaný. K registru a tím i šifrovacímu klíči mají přístup pouze SSO administrátoři. Ostatní SSO servery v systému Microsoft Enterprise Single Sign-On kontrolují každých třicet vteřin, zda nebyl šifrovací klíč změněn. Pokud ke změně dojde, je nový klíč bezpečně přečten a akceptován. Pokud změna kódu nenastane, používají SSO servery nadále poslední známý šifrovací klíč, uložený v jejich vyrovnávací paměti. SSO služby používají Master Secret k šifrování a dešifrování uživatelských práv. SSO systém Microsoft ENTSSO nelze začít používat do doby, než SSO administrátor nakonfiguruje Master Secret server a vygeneruje Master Secret. Generování šifrovacího klíče je vyhrazeno pouze SSO administrátorům. Vygenerovaný klíč je třeba bezpečně zálohovat a uložit jej na bezpečné místo, z důvodu případného kolapsu Master Secret serveru. Affiliate aplikace systému ENTSOO mohou služby využívat až ve chvíli, kdy je Master Secret server zcela nakonfigurován včetně založení Credential databáze. Pokud chce SSO administrátor periodicky klíč měnit, nebo pokud je změna vyvolána z jiných důvodů, jakými mohou být bezpečnostní požadavky společnosti využívající služeb Microsoft Enterprise Single Sign-On, uchovává Master 31
SQL server - Microsoft SQL Server je software určený ke komplexní, integrované zprávě a řízení dat.
25
Secret server s novým šifrovacím klíčem i klíč starý. Při změně Master Secret jsou všechna uživatelská mapování dešifrována za pomoci starého šifrovacího klíče a znovu je zašifrována novým kryptovacím klíčem. Jestliže dojde k problémům a nedostupnosti Master Secret serveru pokračují všechny runtime32 operace dál, není však možné šifrovat nová oprávnění. V SSO systému je možné provozovat jediný Master Secret server. 4.4.4 SSO spřátelené aplikace Spřátelené SSO aplikace jsou logické entity, které představují systémy nebo podsystémy jako hosty, koncové systémy nebo řady obchodních aplikací, ke kterým se uživatel či služba pomocí Microsoft ENTSSO připojuje. Spřátelenou aplikaci mohou představovat koncové systémy typu mainframe nebo systémy Unix. Spřátelené aplikace mohou reprezentovat také aplikace, jako jsou SAP, nebo součásti systémů jakými jsou podsystémy odměn nebo například výplatních pásek. Když SSO administrátor případně administrátor SSO spřátelených aplikací definuje spřátelenou aplikaci, musí stanovit, kdo bude tuto spřátelenou aplikaci spravovat, kteří uživatelé budou spřátelenou aplikaci užívat a jaké uživatelské autentizační parametry (uživatelské ID, heslo, PINy, atd.) budou použity pro ověření oprávnění k dané spřátelené aplikaci. Různé spřátelené aplikace systému Microsoft ENTSSO podporují různé typy mapování Windows účtů a účtů obsažených v jiných systémech. Existuje několik aplikačních typů, které jsou v Enterprise SSO definovány: •
Individuální aplikace podporují mapování jednoho Windows účtu k jedinému jinému tak, jak je znázorněno na obrázku číslo dva Individuální mapování. Individuální mapování lze použít jak směrem z Windows do non-Windows tak i obráceně z nonWindows do Windows a stejně tak i obousměrně. Záleží pouze na nastavení příznaků pro konkrétní spřátelenou aplikaci. Z výše uvedeného je tedy možné použít individuální aplikace pro jednotné přihlášení vyvolané Windows i non-Windows systémem. Obrázek 2 Individuální mapování
32
Runtime služby jsou služby běžící v reálném čase.
26
•
Skupinové (Group) aplikace slouží k mapování jedné Windows skupiny k jednomu non-Windows účtu. Účet uživatelů aplikace je použit k definici skupiny Windows, jejíž uživatelé budou Group aplikaci používat. Group aplikaci lze definovat jedno mapování a to mezi Windows skupinou a jedním účtem non-Windows systému jak je patrné z obrázku 3 Skupinové mapování. Takto mapovaný účet bude užíván členy Windows skupiny k přístupu do non-Windows systému. Jednotné přihlášení je možné inicializovat pouze ze strany Windows. Obrázek 3 Skupinové mapování.
•
Hostitelské skupinové (Host Group) aplikace jsou konceptuálním opakem Group aplikací. Podporují mapování mezi definovanými non-Windows skupinami a samostatnými Windows účty. Obrázek číslo tři zobrazuje orientaci skupinového hostitelského mapování. Samostatný Windows účet používaný non-Windows účty je definován účtem aplikačních uživatelů konkrétní aplikace. Skupina non-Windows účtů, kterým je aplikace zpřístupněna, je definována při vytvoření a mapování každého z non-Windows účtů. Aplikace Host Group jsou použitelné pouze v případě inicializace systému jednotného přihlášení Microsoft Enterprise Single Sign-On ze strany spřátelené hostitelské aplikace. Obrázek 4 Skupinové mapování hostitelské
Před založením každé spřátelené aplikace musí buď SSO administrátor nebo administrátor spřátelených aplikací učinit rozhodnutí o tom, co a jak bude spřátelenou aplikaci 27
prezentovat, kdo bude zakládanou spřátelenou aplikaci systému Microsoft ENTSSO spravovat, kdo ji bude používat a jaké prověřovací mechanismy budou použity k ověření uživatelských práv ke spřátelené aplikaci a jaký typ mapování bude pro zakládanou spřátelenou aplikaci použit. Existuje poměrně široké spektrum vlastností včetně nutnosti přidání administrátorských práv v aplikaci skupině administrátorů spřátelené aplikace systému ENTSSO. Tento krok je možné učinit pouze při zakládání spřátelené aplikace. Následují nemožnost změny jména, přiřazení spřátelených systémů a určení typu spřátelené aplikace, jenž je také jejím základním faktorem. V tabulce číslo jedna Vlastnosti spřátelené aplikace systému Microsoft Enterprise Single Sign-On je zaznamenán kompletní soupis vlastností, které musí být každé spřátelené aplikaci zadány již při vytváření SSO spřátelené aplikace, případně lze tyto vlastnosti zadat později. Tabulka 1 Vlastnosti spřátelené aplikace systému Microsoft Enterprise Single Sign-On. Vlastnost
Popis
Jméno aplikace
Jméno spřátelené aplikace. Tuto vlastnost již po vytvoření spřátelené aplikace nelze změnit.
Popis
Stručný popis spřátelené aplikace.
Kontakt
Hlavní kontaktní osoba pro spřátelenou aplikaci. (např. e-mail adresa.)
Účet uživatelů aplikace
Skupina Windows, která obsahuje uživatelské účty koncových uživatelů, kteří budou aplikaci používat.
Účet administrátora aplikace
Skupina Windows, která obsahuje účet administrátora, který bude spřátelenou aplikaci spravovat.
Popis aplikace
Podrobný popis spřátelené aplikace
Aplikace Povolena/Zakázána
Stav konkrétní spřátelené aplikace v systému Microsoft Enterprise Single Sign-On.
Skupina aplikace
Popisuje používané mapování konkrétní spřátelené aplikace. Skupinové případně Individuální mapování. Tato vlastnost již po vytvoření spřátelené aplikace nelze změnit.
Konfigurace ukládání Aplikace
Popisuje typ ukládání konkrétní spřátelené aplikace. Tato vlastnost již po vytvoření spřátelené aplikace nelze změnit.
Inicializace SSO hostem Inicializace SSO windows Validace hesel
Určuje, zda budou požadavky na ověřování inicializovány z hostitelské strany. Určuje, zda budou požadavky na ověřování inicializovány ze strany Windows. Aplikovatelné pouze u hostitelsky-inicializovaných SSO aplikací. Pokud se aplikace snaží získat oprávnění, musí použít heslo do Credential databáze, které je službou SSO použito k validaci.
Zakázání ukládání oprávnění v cache paměti
Zapnutí či vypnutí ukládání oprávnění do cache paměti SSO serveru.
Povolení SSO Tiketů
Určuje, zda bude ENTSSO používat pro konkrétní spřátelenou aplikaci SSO tikety.
Validace SSO Tiketů
Určuje, jak bude ENTSSO systém vylisovat SSO tikety.
Časové omezení SSO Tiketu aplikace
Specifikuje časově omezenou platnost SSO tiketu pro konkrétní spřátelenou aplikaci systému ENTSSO. Tato vlastnost lze vytvořit pouze při obnově vlastní spřátelené aplikace. Ne při jejím vytváření.
Časové omezení SSO Tiketu
Určuje, zda budou mít SSO tikety omezenou platnost.
Povolení lokálních účtů
Určuje, zda bude v systému Microsoft ENTSSO možné používat lokální skupiny a účty.
Stejný účet administrátora
Určuje, zda bude k administraci spřátelené aplikace použita skupina SSO administrátora spřátelených aplikací.
Zdroj: http://msdn.microsoft.com/en-us/library/aa754070.aspx (12.12.2008)
4.4.5 Mapování Mapování v systému Microsoft Enterprise Single Sign-On umožní přiřadit oprávnění účtů ve Windows účtům jiným spřáteleným aplikacím. Když SSO administrátor, nebo administrátor spřátelených aplikací SSO definuje novou spřátelenou aplikaci, má na výběr ze dvou typů mapování - individuální a skupinové. SSO individuální mapování umožňuje administrátorům a uživatelům vytvářet osobní mapování Windows uživatelů a jejich odpovídajících oprávnění non-Windows. Pokud je u 28
spřátelené aplikace použito individuální mapování, mohou uživatelé Windows své mapování spravovat. Microsoft ENTSSO systém trvale udržuje vztah jednotlivých Windows uživatelských účtů a uživatelských účtů non-Windows. Windows uživatelé mohou vytvářet a spravovat své vlastní mapování pro jednotlivé typy aplikací. Z pohledu inicializace získání oprávnění může spřátelená aplikace fungovat jako aplikace inicializovaná Windows, nebo může žádosti inicializovat sama. Takovému případu, kdy o oprávnění žádá sama spřátelená aplikace systému Microsoft ENTSSO se říká žádost inicializovaná hostem. Mapování jde vytvořit pouze pro účty zařazené v doméně Windows. SSO skupinové mapování sestává z mapování skupiny Windows, obsahující libovolné uživatele Windows, jednomu účtu ve spřátelené aplikaci.. Pro každou uživatelskou roli spřátelené aplikace systému Microsoft ENTSSO je možné specifikovat více účtů. Každý specifikovaný účet může být spřátelený s účtem externím. Například je možné mapovat uživatele domény Windows (doména\uživatelC) jednomu externímu účtu. Stejný uživatel (doména\uživatelC) může být členem doménové skupiny (doména\skupina1) a tato skupina může být mapována jinému externímu účtu jak je zřejmé z obrázku číslo pět. Obrázek 5 Příklad mapování jednoho účtu Windows do několika účtů nonWindows systému.
V tomto případě je důležité, že administrátor specifikuje správný pořádek pro uživatelské účty aplikace. Mapování pro první účet, který je volán, je jedním členem, který bude použit. V tomto případě, pokud je mapování pro doména\uživatelC externímu účtu, Uživatelský účet A je nastaven na příkaz 0, SSO vrátí tuto sadu oprávnění pro doména\uživatelC. Skupinové mapování může vytvářet pouze administrátor konkrétní aplikace, SSO administrátor spřátelené aplikace, případně SSO administrátor. Group aplikace nemůže být specifikována jako inicializována Windows a zároveň inicializována hostem. Mapování
29
může být vytvořeno pouze účtům domény Windows. Pokud se rozhodneme použít skupinové mapování, musíme počítat s tím, že všichni členové skupiny získají informace o oprávnění pro skupinové mapování. 4.4.6 SSO Tikety V podnikovém prostředí, kde uživatel pracuje současně s rozmanitými spřátelenými systémy a aplikacemi, je velmi pravděpodobné, že toto prostředí nebude udržovat uživatele v kontextu prostřednictvím více procesů, produktů a počítačů. Tyto souvislosti mají ovšem zásadní význam pro zajištění single sign-on schopností, protože je nutné ověřit, kdo stál u zrodu původní žádosti. Řešením tohoto problému jsou v Micosoft Enterprise Single SignOn SSO tikety, které může aplikace využít k získání oprávnění, které odpovídá uživateli, který zaslal původní žádost. SSO systém vydá SSO tiket, pokud obdrží žádost od ověřeného uživatele Windows. SSO tiket je vydán pouze uživateli, který o něj žádá a není tedy možné požadovat SSO tiket pro jiného uživatele. SSO tiket obsahuje kódovanou informaci o doméně a uživatelském jméně aktuálního uživatele a také informaci o době platnosti tiketu. Poté, co aplikace ověří identitu původního žadatele o přístup, vydá SSO tiket s uživatelskými právy uživatele, který inicioval žádost na spřátelenou aplikaci. Aplikace může SSO tiket vydat jedním ze tří způsobů: •
Pouhé vydáni. Když spřátelená aplikace systému Microsoft ENTSSO požádá o vydání tiketu, musí žádost obsahovat jméno spřátelené aplikace, která má být kontaktována a samotný tiket. SSO tikety může vydávat pouze administrátor aplikace pro každou specifickou spřátelenou aplikaci, SSO administrátor spřátelených aplikací nebo SSO administrátor. Pouhé vydávání tiketů by mělo být použito pro důvěryhodné podsystémy mezi aplikací, která tiket vydává a aplikací, která tiket použije. Vydávání tiketů specifikované spřátelené aplikace může určovat pouze administrátor konkrétní aplikace.
•
Ověření a vydání. Tikety obsahují informace o uživateli, pro kterého SSO systém vykonává hledání oprávnění. V tomto případě, před tím než SSO systém vydá uživateli tiket, SSO služba prověřuje, že odesílatel původní zprávy a uživatel uvedený v tiketu jsou totožní.
Ve výchozím nastavení systému Microsoft Enterprise Single Sign-On není vydávání SSO tiketů povoleno. Výchozí nastavení platnosti tiketu od jeho vydání systémem ENTSSO jsou dvě minuty. Dobu platnosti tiketu může SSO administrátor měnit. SSO administrátor může omezení platnosti tiketu pro jednotlivé aplikace zakázat. Platnost tiketu pro takovou 30
aplikaci bude tedy neomezená. V případech, které vyžadují neomezenou platnost tiketu, se je třeba ujistit, že se jedná o důvěryhodný koncový podsystém. Administrátor spřátelených aplikací SSO může pro každou spřátelenou aplikaci povolit použití tiketů a požadovaná ověření tiketů. Pokud však SSO administrátor na úrovni systému ENTSSO zadá vyžadování ověření tiketů, nemůže administrátor spřátelených aplikací SSO na úrovni spřátelené aplikace tuto volbu vypnout. Při rozhodnutí pro použití SSO tiketů je důležité se ujistit, že je tiket vystavován na takovou dobu, aby mohl být vydaný tiket nahrazen novým.
4.5. Konfigurace Microsoft Enterprise Single Sign-On Konfigurace systému Microsoft Enterprise Single Sign-On je možná pomocí utility příkazový řádek, nástrojů UI
33
případně COM
34
či Microsoft .NET
35
Framework
systémovým rozhraním. •
Pomocí nástrojů příkazového řádku. K dispozici jsou tři rozdílné nástroje příkazového řádku, které lze použít k provádění úloh v systému Microsoft Enterprise Single SignOn. První z nich SSOConfig umožňuje SSO administrátorovi konfiguraci Credential databáze a správu Master Secret. Konfigurací Credential databáze a Master Secret provádí konfigurační průvodce. Pomocí SSOManage je možné updatovat Credential databázi, přidávat, odebírat a spravovat SSO spřátelené aplikace. Navíc lze pomocí SSOManage spravovat uživatelská mapování a oprávnění pro uživatele spřátelených aplikací. Některé funkce správy systému Microsoft ENTSSO jsou v prostředí SSOManage dostupné pouze SSO administrátorovi, nebo současně administrátorům SSO spřátelených aplikací. SSOclient slouží uživatelů systému Microsoft Enterprise Single Sign-On systému ke správě jejich vlastních uživatelských mapování a nastavení vlastních oprávnění.
•
Pomocí nástrojů s uživatelsky přívětivým rozhraním. Enterprise SSO MMC Snap-in poskytuje stejné služby jako řádkový SSOManage v prostředí uživatelsky přívětivém. Pro každodenní uživatele jakéhokoliv systému Microsoft Windows je grafické prostředí intuitivním. SSO klient utility je graficky znázorněnou utilitou SSOClient.
33
UI (User Interface) znamená uživatelské rozhraní pomocí něhož lze ovládat software.
34
COM je platformově-nezávislý, distribuovaný, objektově-orientovaný systém pro vytváření binárních
softwarových komponent, které mohou vzájemně spolupracovat. 35
. NET Framework je komplexní a konzistentní programovací model společnosti Microsoft určený pro
vytváření aplikací.
31
•
Pomocí COM a Microsoft .NET Framework systémových rozhraní. Microsoft Enterprise Single Sign-On poskytuje COM a Microsoft. NET Framework systémové programové rozhraní, které umožňuje vytváření vlastních součástí, a vytváření skriptů pro usnadnění správy v SSO systému.
4.6. Instalace systému Microsoft Enterprise Single Sign-On Instalace systému Microsoft Enterprise Single Sign-On je velice zodpovědná činnost. Microsoft Enterprise Single Sign-On je možné instalovat jako samostatnou součást informačního systému. Neexistuje však jako samostatná aplikace a proto je vždy nutné instalovat Microsoft ENTSSO z instalace některé serverové aplikace společnosti Microsoft, která systém jednotného přihlášení Enterprise Single Sign-On obsahuje. Bezpečnost při instalaci takového komplexu vlastností spolupracujících s jinými vlastnostmi a systémy je namístě. Před instalací je dobré prověřit příslušné softwarové požadavky pro instalaci. Instalace systému Microsoft Enterprise Single Sign-On je přechodem z jednoho stavu řešení podnikového systému do jiného. Zavedení systému Microsoft ENTSSO mohla již v minulosti předcházet instalace jiných produktů obsahujících systém ENTSSO, případně je možné instalovat a zavádět systém jako novou službu. Na několik možností instalace ENTSSO se zaměřím v následující části s tím, že budu přepokládat instalaci Enterprise Single Sign-On obsaženou v systému Microsoft Host Integration Server 2006. 4.6.1 Přechod z Microsoft Host Intragration Serveru 2000, nebo z SNA Serveru 4.0 Starší verze Microsoft Host Integration serveru stejně jako Microsoft Host Integration Server 2000 a SNA Server 4.0 poskytují bezpečnostní funkce systému Enterprise Single Sign-On i synchronizaci hesel pomocí integrovaných bezpečnostních funkcí. Tyto funkce jsou založeny na zabezpečení hostitelské domény, která jsou obsažena v uživatelském mapování v souhrnu oprávnění mezi Windows systémy. V Host Integration Serveru funkce bezpečnosti, SSO a synchronizace hesel zajišťuje Enterprise Single Sign-On. Ačkoli jsou některé koncepty sdíleny staršími prvky, existují zde významné rozdíly. Kromě zvýšené funkčnosti, existují v nové funkcionalitě dva základní konceptuální rozdíly. Prvním z nich je nahrazení Bezpečnostní Hostitelské domény spřátelenými aplikacemi a druhým změna umístění důvěryhodných bezpečnostních dat do databáze SQL Serveru. Přechod z existujícího zabezpečení uživatelských dat do prostředí ENTSSO obstará nástroj
32
Migration Utility 36 . Systém Single Sign-On je pak možné provozovat bez úpravy stávajících aplikací. Proces migrace obsahuje základní kroky, které musí být provedeny v tomto pořadí: 1. Nejprve je nutné provést zálohu stávajících důvěryhodný bezpečnostních dat. Stávající oprávnění je dobré zálohovat převážně z bezpečnostních důvodů dříve, než je migrace na Enterprise Single Sign-On započata. 2. Provést export šifrovacího klíče Master Sercret. Šifrovací klíč je nutné vyexportovat v případě přechodu z Microsoft Host Integration Serveru 2000. Šifrovací klíč je bezpečnostním prvek, který Microsoft Host Integration Server 2000 používá ke kódování uživatelských hesel. V případě použití nástroje Migration Utility si v průběhu procesu migrace vyexportovaný šifrovací klíč vyžádá nástroj sám. 3. Instalace Microsoft Enterprise Single Sign-On. Poté, co jsou bezpečnostní data zálohována a šifrovací klíč vyexportován, přichází čas na instalaci Microsoft Enterprise Single Sign-On. Instalaci produktu Microsoft Enterprise Single Sign-On je věnována samostatná podkapitola. 4. Následuje zkopírování nástroje Migration Utility do ENTSSO Master Secret Serveru. Poněvadž instalace nástroje Migration Utility není v systému Microsoft Host Integration Serveru 2006 obsažena, nezbývá než ji ručně do Mater Secret Serveru zkopírovat. 5. Spuštění nástroje Migration Utility, který byl v předchozím kroku importován do Master Secret serveru. Pro přesun stávajících zabezpečení do nové instalace ENTSSO SSO lze použít Migration Utility. V prvním kroku jsou za pomoci nástroje Migration Utility vyexportována data ze stávající domény do XML souboru obsahujícího ověřovací data pro migraci. Z důvodu vysoce důvěryhodného obsahu takto vygenerovaného souboru je dobré jej co nejdříve po jeho převodu odstranit. Pokud systém Microsoft ENTSSO rozpozná problémy, které by mohli převod negativně ovlivnit, může je administrátor před následujícím krokem opravit. Ve druhém kroku nástroj „importy“ zapíše data do nového ENTSSO systému, updatuje Microsoft Host Integration Serveru 2006 a upraví Credential databázi. Migraci může
36
Migration Utility je nástroj příkazového řádku (hissomig.exe), který převede všechna nezbytná data ze
starší verze systému Microsoft Enterprise Single Sign-On do novější.
33
uskutečnit výhradně SSO administrátor, který musí mít alespoň prává pro čtení do databáze SNAUDB37. Import i export musí proběhnout na Master Secret Serveru. 4.6.2 Přechod ze starší verze Microsoft Enterprise Single Sign-On Pokud je ve stávajícím podnikovém řešení instalace Enterprise Single Sign-on (SSO) starší verze, například z Host Integration Server 2004, nebo Microsoft BizTalk Server 2004, je třeba dodržet tyto kroky. 1. Provést zálohu SSO Credential databáze na bezpečné místo. 2. Provést zálohu Master Secret na Master Secret Serveru. 3. Instalovat update Master Secret Serveru pomocí instalace Host Integration Server 2006 výběrem volby běžná instalace systému Enterprise Single Sign-On. V průběhu instalace je nutné zvolit „Povolit Enterprise Single Sign-On na tomto počítači“ a v následující nabídce přidružit nově instalovanou verzi ENTSSO k již stávající aktivní službě pomocí volby „Připojit k existujícím SSO systému“. Ostatní servery Microsoft Enterprise Single Sign-On systému není třeba aktualizovat. Pokud však mají být aktualizované funkce dostupné i na jiných serverech než na Master Secret serveru, je nutné je aktualizovat výše uvedeným postupem. Aby mohli nonWindows uživatelé inicializovat ENTSSO, musí mít k dispozici služby Windows Serveru 2003. Po založení Master Secret Serveru a Credential databáze je možné nainstalovat Microsoft Enterprise Single Sign-On na další počítače v organizaci. Takovými dalšími počítači bývají zpravidla takové servery, na nichž je již Host Integration Server nainstalován. Proces instalace je stejný jako při instalaci prvního serveru. Konfigurace už samozřejmě probíhá odlišně, protože Master secret server a SSO databáze jsou již na svém místě. 4.6.3 Standardní instalace Standardní instalací systému Microsoft Enterprise Single Sign-On, je předpokládána instalace ENTSSO obsaženého v produktu Microsoft Host Integration Server 2006 do podnikového prostředí, které nepoužívá žádné verze systému jednotného přihlášení společnosti Microsoft. Jakkoli Host Integration Server 2006 využívá schopnosti Enterprise Single Sign-On pro bezpečné uložení kriticky důležitých informací není ve výchozím nastavení systému Host Integration Serveru 2006 SSO instalováno. Instalaci je nutné nastavit ručně. Po úspěšné instalaci následuje nutná konfigurace. Jako první je třeba 37
SNAUDB je název databáze použité při migraci Credential databáze
34
nastavit Master Secret server. Master Secret server by měl být nastaven na počítači vyhrazeném pouze pro tento účel. Aby byla zajištěna správná funkce SSO tiketů, je vhodné na všech počítačích s instalovaným Microsoft Enterprise Single Sign-On používat synchronizaci času. Instalace balíčku Microsoft Host Integration Server 2006 nabízí možnost instalace Enterprise Single Sign-On Master Secret server nebo Klient. Instalace Enterprise Single Sign-On server slouží jako Master Secret server systému ENTSSO. Jedná se o první server systému ENTSSO, který je třeba zprovoznit. Po instalaci tohoto serveru je možné založit Credential databázi. Instalační balíček ENTSSO server provede instalaci služeb administrace Enterprise Single Sign-On, což umožní na stroji, na kterém je instalováno mapování a připojování služeb Microsoft Enterprise Single Sign-On. V instalaci je obsažena instalace provozního serveru, který obsahuje jádro služeb systému ENTSSO. Tento umožňuje bezpečné uložení a přístup ke konfiguraci systému. Služby synchronizace hesel Enterprise Single Sign-On jsou také součástí balíčku typu Server. Služby synchronizace hesel umožní v prostředí ENTSSO udržovat hesla synchronizovaná napříč distribuovaným systémem. Služby Enterprise Single Sign-On, které obsluhují služby jádra ENTSSO, umožňují zapnutí ENTSSO a bezpečné ukládání a přístup ke konfiguračním datům. Mohou sloužit jako Master Secret server v systému Microsoft Enterprise Single Sign-On. Pomocí instalace balíčku Microsoft Host Integeration Server klient lze získat možnost instalace služeb Administrace systému Enterprise Single Sign-On, stejně jako při volbě instalace balíčku Server. Směrem k administračním možnostem mapování a správy uživatelským účtů nabízí instalace balíčku Klient nástroj Enterprise Single Sign-On Klient – nástroj určený koncovým uživatelům, který slouží ke zprávě jejich mapování. Administrační části systému Microsoft ENTSSO je vhodné instalovat samostatně, a to zejména v případě, že chceme ENTSSO systém ovládat vzdáleně. HW a SW požadavky jsou stejné, jaké platí pro instalaci ENTESSO. Po instalaci administračních komponent je nutné použít nástroj SSOManage, případně administrační nástroj s grafickým uživatelským rozhraním MMC Snap-In a určit SSO server, který bude sloužit ke zprávě systému. Popis obou procesů následuje níže. Instalace administrační utility systému Microsoft ENTSSO ssomanage.exe nevytvoří automaticky zástupce programu v nabídce Start. Je třeba na toto pamatovat a vědět, kde je nástroj nainstalován. Spuštění utility není problém za použití příkazového řádku příkazem ssomanage.exe. Instalace administračního nástroje systému ENTSSO obsahuje MMC Snap-in. MMC Snap-in je automaticky instalován na systémy Microsoft Windows Server 35
2003 a Microsoft Windows XP. MMC Snap-in není však podporován systémem Microsoft Windows 2000. K zajištění funkčnosti MMC Snap-in je ještě nutné instalovat MMC 3.038. Klientské součásti Microsoft Enterprise Single Sign-On jsou ovládány pomocí samostatného nástroje Single Sign-On Klient (ssoclient.exe), který slouží koncovým uživatelům ke konfiguraci jejich klientských mapování v databázi oprávnění. Instalace klientské součásti je možná pomocí souboru SSOClientInstall.exe, který je vytvořen současně s instalací administračních součástí. Pro koncové uživatele může administrátor vytvořit instalační balíček a ten poté uložit na, koncovým uživatelům dostupné, místo, například sdílený síťový disk. Klientskou část ENTSSO je možné instalovat na Microsoft Windows 2003 Server, Microsoft Windows 2000 Server se service packem 4 nebo na Microsoft Windows XP Professional se service packem 1. Pokud je požadována současně zpráva ENTSSO klientské části, musí být na počítači instalován Microsoft .NET Framework 2.039. Také instalace klientské součásti systému SSO nevytváří zástupce pro spuštění utility. Je nutné opět pamatovat na místo, kde je instalována.
4.7. Práce se systémem Microsoft Enterprise Single Sign-On Správa systému SSO zahrnuje činnosti, jako je aktualizace Credential databáze systému SSO, přidávání, mazání a správu spřátelených aplikací systému Microsoft ENTSSO a správu uživatelských mapování. Ke správě systému Microsoft Enterprise Single Sign-On se nabízí využití nástroje s grafickým uživatelským rozhraním Microsoft Management Console (MMC) Snap-in, případně řádkového nástroje ssomanage či ssoclient. Zpráva systému SSO je vyhrazena uživatelům s právy SSO administrátora. Veškeré následující příklady práce se systémem Microsoft Enterprise Single Sign-On vycházejí z použití řádkového nástroje ssomanage, a to jak z důvodu ilustrace problematiky, tak také z nedostupnosti instalovaného systému Microsoft ENTSSO v podnikovém řešení. Nástroj ssomanage je po standardní instalaci dostupný na příslušném pevném disku v adresáři \Program Files\Common Files\Enterprise Single Sign-On.
38
MMC (Microsoft Management Konsole) MMC 3.0 je softwarovou základnou pro nástroje, pomocí kterých
je možné síť, počítače, služby a další součásti operačních systémů Windows. 39
Microsoft .NET Framework 2.0 je prostředí sloužící k vývoji aplikací.
36
4.7.1 Konfigurace Enterprise SSO serveru za pomoci konfiguračního průvodce Ke konfiguraci vlastností SSO slouží v průvodci konfigurace stránka Enterprise Single Sign-On. Poté co je konfigurace SSO uložena, není ji již možné měnit. V tabulce číslo dva Konfigurace
Microsoft Enterprise Single Sign-On jsou uvedeny možné volby při
konfiguraci systému Microsoft ENTSSO a jejich vliv na systém jednotného přihlášení. Tabulka 2 Konfigurace Microsoft Enterprise Single Sign-On Výběr volby
Výsledek volby
Povolit Enterprise Single Sign-On na tomto počítači
Výsledkem povolení Enterprise Single Sign-On na tomto počítači j e možnost konfigurace nastavení SSO konkrétního serveru.
Vytvoření nového systému SSO
Výsledkem vytvoření nového systému SSO je možnost konfigurace Master Secret serveru, a Credential databáze. Volba vytvoření nového systému SSO má smysl pouze pokud ENTSSO zavádíme.
Připojit k existujícímu SSO systému
Výsledkem výběru volby připojit k existujícímu systému SSO je možnost výběru a připojení serveru k existujícímu systému SSO.
Databáze
Seznam databází poskytuje seznam datových skladů použitých pro SSO databáze.
Windows služby
Volba Windows služby poskytuje seznam účtů použitých ke spuštění Enterprise Single Sign-On služeb.
Windows účty
Volba Windows účty poskytuje seznam skupin Windows SSO Administrátorů a SSO Administrátorů spřátelených aplikací.
Zdroj: http://msdn.microsoft.com/en-us/library/aa745528.aspx (18.10.2008)
K nastavení zálohy kódovaného Master Secret slouží Stránka Enterprise Single Sign-On Secret Backup. Vytvoření zálohy Master Secret je jediné důvěryhodné opatření předcházející ztrátě dat při neočekávaných událostech. Při zálohování Master Secret je třeba zadat heslo, které bude následně použito k vyzvednutí zálohy Master Secret, toto heslo potvrdit a zadat typ připomenutí hesla. Posledním krokem je zadání místa, kam má být záloha Master Secret uložena. Když bude použit jako datový sklad lokální SQL server je nutné použít cestu bez čísla portu. Jako servisní účet systému Microsoft ENTSSO může být použit účet správce sítě. Nejprve je však nutné přidat účet správce sítě do skupiny SSO administrátorů a následně provést restart SSO serveru, tak aby změny nabyly platnosti. 4.7.2 Nastaveni Enterprise Single Sign-On Serveru Dříve, než může být použit nástroj SSOManage, musí být znám SSO server ke kterému má být uživatel připojen. SSO server lze vybrat příkazem ssomanage –server <Single Sign-On Server>, kde <Single Sign-On Server> je název SSO serveru, ke kterému má být uživatel připojen.
37
4.7.3 Povolení Enterprise Single Sign-On Volba povolení Enterprise Single Sign-On povolí celý systém Enterprise Single Sign-On. Poté co povolení SSO bude potvrzeno, následuje krátké zpoždění, než jsou všechny SSO servery povoleny. Toto zpoždění je způsobeno tím, že každý kontaktuje Credential databázi, aby získal veškeré poslední informace včetně aktuálního Master Secret. Povolení systému ENTSSO lze provézt příkazem ssomanage –enablesso. 4.7.4 Zakázání Enterprise Single Sign-On Volba „zakázání“ celý systém Enterprise Single Sign-On zakáže. Stejně jako při povolování SSO následuje také při zakázání krátké zpoždění. Toto zpoždění je způsobeno tím, že každý SSO server kontaktuje Credential databázi, aby získal veškeré poslední informace. Zakázání systému ENTSSO lze provézt příkazem ssomanage
–
disablesso. 4.7.5 Jak změnit Master Secret Server Pokud je z důvodu neřešitelného problému třeba změnit Master Secret, je nutné zvolený SSO server povýšit na SSO Master Secret server. Pomocí nástroje MMC Snap-in jde o pouhý klik na tlačítko „Změna“ a výběr zvoleného serveru. Pak je třeba vybraný server povýšit. Toho dosáhneme vytvořením souboru XML. Příklad konfiguračního souboru ve formátu XML, pomocí něhož lze Master Secret server nastavit zobrazuje příklad konfigurace číslo jedna Konfigurace Master Secret serveru. Příklad konfigurace 1 Konfigurace Master Secret serveru
<sso>
<secretServer>SSO Server name Zdroj: http://msdn.microsoft.com/en-us/library/aa771709.aspx (17.12.2008)
a následného spuštění příkazu SSOManage –updatedb
, kde
je jméno XML souboru s novým jménem Master Secret serveru. Následně je nutné Systém Microsoft Enteprise Single Sign-On restartovat. Posledním krokem lze dosáhnout obnovení Master Secret příkazem SSOConfig
–restoresecret
, kde je cesta a jméno k souboru, kde je uložena záloha Master Secret.
38
4.7.6 Zobrazení informací Credential databáze Veškeré informace uložené v Credential databázi je možné zobrazit pomocí příkazu ssomanage –displaydb, případně se proklikat nabídkami v MMC Snap-in. Vždy však získáme shodná data týkající se všeobecných vlastností Credential databáze. Výchozí vlastnosti Credential databáze jsou uvedeny v tabulce číslo tři „Výchozí vlastnosti Credential databáze systému Microsoft Enterprise Single Sign-On“. Tabulka 3 Výchozí vlastností Credential databáze systému Microsoft Enterprise Single Sign-On Vlastnosti
Hodnota
SQL Server
<Jméno SQL Serveru>
SQL Server databáze
<Jméno databáze SQL Serveru>
Single Sign-On Secret Server jméno
<Jméno Single Sign-On Serveru>
Single Sign-On Účet administrátora
Doména\účet
Single Sign-On Účet administrátora spřátelených aplikací
Doména\účet
Velikost auditní tabulky pro odstraněné aplikace (počet auditních záznamů)
1000 (výchozí)
Velikost auditní tabulky pro odstraněná uživatelská mapování (počet auditních záznamů)
1001 (výchozí)
Velikost auditní tabulky pro vyhledaná externí oprávnění (počet auditních záznamů)
1002 (výchozí)
Platnost tiketu (v minutách)
2 (výchozí) Tato hodnota může být celé číslo mezi 1 to 525600
Doba úchovy oprávnění v paměti Cache (v minutách)
60 (výchozí)
Stav Single Sing-On
Povoleno/zakázáno
SSO Tikety povoleny
ANO/ (výchozí)NE
Validace ticketů
ANO/ (výchozí)/NE
Zdroj: http://msdn.microsoft.com/en-us/library/aa705601.aspx (18.12.2008)
4.7.7 Aktualizace Credential databáze Aktualizace Credential databáze je nutná vždy, pokud je nutné změnit všeobecné informace v Credential databázi. Takovými všeobecnými informacemi je myšlena změna identifikace Master Secret serveru, jména účtů, auditní databáze, doba platnosti tiketů doba zachování oprávnění a další. Na systémové úrovni je možné měnit dvě různé doby platnosti SSO Tiketů v systému ENTSSO. Dobu platnosti Tiketu, což je vlastnost specifikovaná časem, po který je tiket platný. Výchozí doba platnosti tiketu je dvě minuty. Většinou je doba dvou minut vyhovující, pokud však nemůže SSO administrátor dobu platnosti upravit na základě požadavků aplikace. A dobu uchování oprávnění Tiketu SSO v cache paměti, jež je vlastností zadávanou všem SSO serverům. SSO servery udržují ve výchozím nastavení oprávnění uživatelů po jejich prvním vyhledání jednu hodinu. SSO administrátor může na základě bezpečnostních požadavků dobu uchování oprávnění upravovat.
39
Ke konfiguraci SSO Credential databáze lze použít strukturovaného souboru ve formátu XML, jak je patrné z následujícího příkladu konfigurace číslo dva Konfigurace Credential databáze systému Microsoft Enterprise Single Sign-On. Příklad konfigurace 2 Konfigurace Credential databáze systému Microsoft Enterprise Single Sign-On
<sso> <ssoAdminAccount>Domain\Accountname <ssoAffiliateAdminAccount>Domain\Accountname <secretServer>ComputerA 1000 1000 1000 2 60 Zdroj: http://msdn.microsoft.com/en-us/library/aa705742.aspx (17.12.2008)
4.7.8 Nastaveni Enterprise Single Sign-On Tiketů V závislosti na systémovém nastavení jazyka SSO Serveru se používání SSO tiketů ovládá použitím volby Yes, No případně On, Off. Pokud jsou služby administrace SSO nainstalovány na vzdáleném stroji, je možné vzdáleně ovládat také vydávání SSO Tiketů. Veškerá komunikace mezi administrací SSO a runtime modulem Lookup je šifrovaná pomocí Master Secret. Dobu platnosti Tiketů lze na úrovni spřátelené aplikace nastavit až při aktualizací aplikace. Při vytváření spřátelené aplikace dobu platnosti SSO Tiketů nastavit nejde. Na úrovní systému SSO a zároveň úrovni spřátelené aplikace může dobu platnosti Tiketů spravovat výhradně SSO administrátor. Pokud jsou Tikety zakázány na úrovni systému Microsoft Enterprise Single Sign-On, jsou zároveň zakázány také na úrovní všech ENTSSO spřátelených aplikací. Naproti tomu mohou být Tikety na systémové úrovni povoleny a následně na aplikační zakázány. Pokud je povoleno ověřování Tiketů na úrovni systému, je třeba ověřování Tiketů i na aplikační úrovni. Ověřování je možné zakázat na úrovni systému a umožnit jej na úrovni spřátelené aplikace. Pokud je čas platnosti zadán na systémové i aplikační úrovní, je čas uvedený na úrovni aplikační chápán jako čas zbývající do ukončení platnosti Tiketu.
40
4.7.9 Audit systému Microsoft ENTSSO Pomocí auditu mohou správci systému Microsoft ENTSSO nastavit hodnotu pozitivní i negativní úrovně auditu tak, aby vyhovovala jejich firemní, například bankovní bezpečnostní politice. Pozitivní audit znamená audit akcí, které skončili úspěchem. Audit negativní je analogicky auditem akcí, které skončily neúspěchem. Možné hodnoty auditu jsou: 0 = žádná úroveň auditu; 1 = nízká úroveň auditu; 2 = střední úroveň auditu; 3 = vysoká úroveň auditu; přičemž úroveň označená číslem tři generuje veškeré auditní zprávy dostupné v systému Microsoft ENTSSO. Výchozí hodnotou pozitivního auditu je nula a negativního jedna. Změna úrovně auditu je možná aktualizací Credential databáze za pomoci dat uložených ve formátu strukturovaného dokumentu XML. Příklad konfigurace auditu systému je znázorněn v příkladu číslo tři Konfigurace auditu systému Microsoft Enterprise Single Sign-On Příklad konfigurace 3 Konfigurace auditu systému Microsoft Enterprise Single Sign-On
<sso> 1001 1000 1010 Zdroj: http://msdn.microsoft.com/en-us/library/aa771234.aspx (18.12.2008)
4.7.10 Povolení SSL Pokud má systém Microsoft ENTSSO šifrovat komunikaci pomocí SSL lze použít aktivační příkaz ssomanage
–setssl
,
čímž dojde k povolení SSL
komunikace mezi všemi servery SSO systému a Credential databází. 4.7.11 Správa Master Secret Master Secret je šifrovací klíč sloužící k zabezpečení všech informacím v Credential databázi. Pokud Master Secret server zkolabuje a dojde ke ztrátě šifrovacího klíče, není možné informace v Credential databázi obnovit. Proto je důležité vytvořit bezpečnou zálohu šifrovacího klíče co nejdříve po jeho vygenerování. K vygenerování Master Secret
41
jsou nutná administrátorská práva k Master Secret serveru. Samotné vygenerování Master Secret je nutné obstarat příkazem ssoconfig –generatesecret , kde je jméno souboru, ve kterém bude Master Secret uložen. Jakmile je Master Secret vygenerován je zapotřebí provést jeho zálohu na jakékoli zálohovací medium pomocí příkazu ssoconfig
–backupsecret
file>, kde je název souboru a cesta k záloze Master Secret. Proces zálohování vyzývá SSO administrátora k zadání hesla, které bude nutné zadat pří následné obnově. Při případné nutnosti obnovení Master Secret ze zálohy je třeba spustit ssoconfig –restoresecret , kde je název souboru a cesta k záloze Master Secret a použít heslo zadané při zálohování Master Secret. Tímto jsou možnosti správy Master Secret vyčerpány. 4.7.12 Specifikace SSO administrátorů a administrátorů spřátelených aplikací Dříve než je možné začít s konfigurací SSO systému, je třeba nastavit uživatelská práva administrátorů SSO a administrátorů spřátelených aplikací. Práva mohou být přidělena buď skupinám, nebo samostatným účtům. Pokud mají být použity doménové účty, je nutné vytvořit na doménovém kontroleru účty SSO administrátorů a administrátorů spřátelených aplikací systému ENTSSO jako globální doménové bezpečnostní skupiny. Vytvoření takové skupiny vyžaduje práva administrátora domény Windows. Uživatelské účty administrátorů SSO a administrátorů spřátelených aplikací jsou obsaženy v Credential databázi, proto je pro zavedení či úpravu účtů nutná aktualizace databáze. Příklad XML souboru nastavení administrátorských účtů je zobrazen v příkladu konfigurace číslo čtyři Konfigurace účtů systému Microsoft Enterprise Single Sign-On. Příklad konfigurace 4 Konfigurace účtů systému Microsoft Enterprise Single Sign-On
<sso> <ssoAdminAccount>Domain\Accountname <ssoAffiliateAdminAccount>Domain\Accountname Zdroj: http://msdn.microsoft.com/en-us/library/aa771094.aspx (18.12.2008)
Aktualizaci Credential databáze se skupinou SSO administrátorů musí předcházet dočasné vypnutí SSO systému. Opět je možné použít nástroje s grafickým uživatelským rozhraním MMC Snap-in případně řádkový SSOManage.
42
4.7.13 Správa spřátelených aplikací K vytvoření spřátelené aplikace je možné použít MMC Snap-in nebo v řádkovém nástroji pomocí příkazu createapps v příkazovém řádku. Vytvářené aplikace musí být specifikovány v XML souboru, který může vypadat podobně jako v příkladu číslo pět Vytvoření spřátelené aplikace systému Microsoft Enterprise Single Sign-On. Pomocí takového konfiguračního souboru ve formátu XML dojde k vytvoření spřátelené aplikace se jménem SAP se zadanými parametry. Příklad konfigurace 5 Vytvoření spřátelené aplikace systému Microsoft Enterprise Single Sign-On
<sso> <description>The SAP application [email protected] domain\AppUserAccount domain\AppAdminAccount Zdroj: http://msdn.microsoft.com/en-us/library/aa744316.aspx (18.12.2008)
Spřátelenou aplikaci je po jejím vytvoření třeba povolit. Seznam všech spřátelených aplikací získáme pomocí příkazu listapps a to buď v administračním prostředí ssomanage–listapps [all], případně v aplikaci klientské pomocí ssoclient –listapps. K získání informací o vlastnostech spřátelené aplikace systému ENTSSO slouží příkaz displayapp použitelný opět z administračního prostředí i z prostředí klientského vždy s parametrem <jméno aplikace>. Správce má možnost odstranit veškerý obsah uložený v cache paměti Credential databáze týkající se konkrétní spřátelené aplikace ze všech SSO serverů. K odstranění informací slouží buď v MMC Snap-in volba CLEAR na vybrané spřátelené aplikaci případně v nástroji SSOManage příkaz ssomanage– purgecache
name>.
Správně
formulovaný
příkaz
setcredentials nastaví uživateli požadovaná oprávnění. Následně má uživatel k této spřátelené aplikaci přístupová práva. Pokud již existuje mapování uživatele, nastaví příkaz setcredentials oprávnění pro existující mapování. Pokud mapování není založeno, vyžádá si SSO systém identifikátor pro aplikaci pro kterou mají být oprávnění nastavena. 43
4.7.14 Správa mapování uživatelů Nastavení mapování uživatelů v systému Microsoft ENTSSO je pro SSO administrátory dostupné v nástroji SSOManage. Uživatelé aplikací mohou k nastavení svého osobního mapování použít nástroj SSOClient. Výpis uživatelských mapování nabízí příkaz listmapping, pomocí nějž lze vypsat veškerá mapování pro zvoleného uživatele. Jestliže je potřeba mapování zvolenému uživateli vytvořit, lze použít opět XML soubor, jehož obsah může být podobný následujícímu příkladu konfigurace číslo šest Mapování uživatelských účtů v systému Microsoft Enterprise Single Sign-On. Příklad konfigurace 6 Mapování uživatelských účtů v systému Microsoft Enterprise Single Sign-On
<sso> <mapping> <windowsDomain>domain <windowsUserId>WindowsUserName <externalApplication>Application name1 <externalUserId>App1UserName <mapping> <windowsDomain>doména <windowsUserId>WindowsUserName <externalApplication>Application name2 <externalUserId>App2UserName Zdroj: http://msdn.microsoft.com/en-us/library/aa770819.aspx (18.12.2008)
a následně spustíme příkaz ssomanage–createmappings <mappings file name>, kde <mappings file name> je jméno výše zmíněného XML souboru s požadovaným mapováním. Pokud je následně třeba mapování odstranit je nutné použít stejného
XML
souboru
společně
s příkazem
ssomanage–
deletemappings <mappings file name>. Pokud je potřeba odstranit veškerá mapování konkrétního uživatele je v ENTSSO k dispozici příkaz ssomanage– deletemapping
<doména\<jméno
uživatele>
<jméno
aplikace>,
pomocí nějž dojde k odstranění veškerých mapování zvolenému uživateli. V klientské aplikaci je možné použít příkaz, který odstraní mapování přihlášeného uživatele do zvolené aplikace ssoclient –deletemapping . Nastavením uživatelského oprávnění dojde v podstatě ke spárování Windows účtu s účtem
44
nonWindows. Mapování uživatele do zvolené aplikace poslouží příkaz ssomanage setcredentials <domain>\<username> . Dříve než může uživatel mapování v systému Microsoft Enterprise Single Sign-On začít používat,
je
nutné
jej
povolit
enablemapping <domain>\<username>
příkazem
ssomanage–
name>.
Analogicky je možné uživateli mapování zakázat pomocí příkazu ssomanage– disablemapping <domain>\<username>. 4.7.15 Inicializace systému Single Sign-On spřátelenou aplikací Do této doby byl pohled na konfiguraci systému Microsoft ENTSSO směřován ze strany Windows ke zdrojům spřátelených aplikací. Nyní se podívejme na pohled opačný. Tentokrát si uživatelská oprávnění vyžaduje spřátelená aplikace na zdrojích systémů Windows. Hostitelský systém pracuje na systému jiném než Windows a užívají jej nonWindows uživatelé. Credential databáze systému SSO mapuje účty spřátelených aplikací k účtům Windows a tím zpřístupňuje Windows zdroje uživatelům non-Windows. Přestože SSO služby inicializované ze strany Windows a SSO inicializované spřátelenou aplikací mají společné rysy, některé platformy a služby AD40 jsou pro SSO inicializované spřátelenou aplikací unikátní a je třeba zabezpečit správnou konfiguraci. •
SSO inicializované spřátelenou aplikací může být používáno pouze s prostředím domény systému Windows Server 2003 Server.
•
Servisní účty obsluhující SSO inicializované spřátelenou aplikací musí mít nastaveny práva Trusted Computing Base (TCB)41.
Navíc jsou nutné některé funkce, které jsou při použití Transakčního Integrátoru pro zpracování inicializace ze strany hostující aplikace. Transakční integrátor používá pro zpracování inicializace ze strany hostující aplikace SSO inicializované spřátelenou aplikací k možnosti použití systému ENTSSO pro non-Windows uživatele. Například servisní účet služby transakčního integrátoru pro zpracování inicializace ze strany hostující aplikace pracující pod službou doména\hipsvc. Tato služba spravuje aplikace, které vyžadují vzdálený nebo místní přístup ke službám Windows za pomoci Windows účtu odpovídajícímu účtu nonWindows. Doménový účet hipsvv, sloužící pro SSO, musí mít 40
AD (Active Directory) je adresářová služba společnosti Microsoft, která ukládá informace o objektech
v síti a poskytuje uživatelům a správcům sítě přístup k těmto informacím. 41
TCB (Trusted Computing Base) je část systému, která je zodpovědná za prosazování bezpečnostní politiky
v informačním systému.
45
práva administrátora aplikace ke spřátelené aplikaci systému SSO. Současně musí mít účet hipsvc omezující delegaci oprávnění k využití SSO inicializované spřátelenou aplikací. Toto omezení může nastavit doménový administrátor v adresářové službě AD. Takové omezení je možné přidělit účtům, které mají nastavenou slubu SPN42. Omezená delegace oprávnění následně umožní účtu přístup pouze ke komponentám, které určil administrátor. Nástroj MMC Snap-in nabízí kompletní pokrytí správy inicializace. 4.7.16 Povolení a zakázání SSO inicializované spřátelenou aplikací Ve výchozím nastavení systému Microsoft ENTSSO není SSO inicializované spřátelenou aplikací povoleno. Povolení lze v nástroji MMC Snap-In zajistit volbou Enable host initiated SSO. 4.7.17 Založení spřátelené aplikace SSO inicializované spřátelenou aplikací Před založením spřátelené aplikace systému Microsoft ENTSSO je třeba určit, zda bude spřátelená aplikace individuální, pak je jeden uživatelský účet Windows používán jedním účtem non-Windows, nebo zda bude aplikace hostitelská skupinová, ve které je skupina non-Windows účtů mapována jednomu Windows účtu. Založení spřátelené aplikace pomocí nástroje MMC Snap-in lze docílit výběrem volby Affiliate Applications. Po výběru založení nové databáze pomůže se založením Průvodce založením nové spřátelené aplikace systému Microsoft ENTSSO. Spřátelenou aplikaci systému SSO lze vytvořit také pomocí nástroje SSOManage. Pokud je k vytvoření spřátelené aplikace použit SSOManage je třeba připravit konfigurační soubory ve formátu XML. Soubory určené pro nastavení zakládané spřátelené aplikace jsou naznačeny v příkladech sedm osm a devět.
42
SPN (Service Principal Names) je hlavní název služby. Název, který jednoznačně identifikuje instanci
služby.
46
Příklad konfigurace 7 Vytvoření spřátelené individuální aplikace typu individua v systému Microsoft Enterprise Single Sign-On
ssomanage –createapps <SSO> <description>Spřátelená aplikace typu Individuální pro hostem inicializované SSO kontakt@názevbanky.cz Názevdomény\AppUserGroup_HISSO DomainName\AppAdminGroup_HISSO Zdroj: http://msdn.microsoft.com/en-us/library/aa705178.aspx (20.12.2008) Příklad konfigurace 8 Vytvoření spřátelené individuální aplikace typu individual v systému Microsoft Enterprise Single Sign-On
ssomanage –createapps <SSO> <description>A Group Type Affiliate Application for Host Initiated SSO associating multiple non-Windows user to a single Windows user account(DomainName\WindowsUserAccount1) [email protected] <windowsAccount>DomainName\WindowsUserAccount1 DomainName\AppAdminGroup_HISSO Zdroj: http://msdn.microsoft.com/en-us/library/aa705178.aspx (20.12.2008)
47
Příklad konfigurace 9 Vytvoření spřátelené aplikace podporující obousměrnou inicializaci v systému Microsoft Enterprise Single Sign-On
ssomanage –createapps <SSO> <description>An Individual Type Affiliate Application for both Host Initiated SSO and Windows Initiated SSO [email protected] DomainName\AppUserGroup DomainName\AppAdminGroup Zdroj: http://msdn.microsoft.com/en-us/library/aa705178.aspx (20.12.2008)
4.7.18 Ověření hesel pro SSO inicializované spřátelenou aplikací Ověřování hesel je ve výchozím nastavení, pro každou nově vytvořenou spřátelenou aplikací SSO inicializované spřátelenou aplikací zapnuté. To znamená, že když aplikace zavolá systém ENTSSO, obdrží Windows uživatel token s přístupy ke zdrojům, které musí ověřit účet non-Windows uživatele a jeho heslo. Pokud heslo neodpovídá heslu uloženému v Credential databázi pro zadaný non-Windows účet, je přístup zamítnut. Pokud je třeba, je možné pro spřátelenou aplikaci ověřování hesel vypnout. Validaci hesel lze aplikovat na spřátelené aplikace individuální i Host Group. Příklad konfigurace tiketů pro aplikaci SAP je přiblížen v příkladu konfigurace číslo deset.
48
Příklad konfigurace 10 Nastavení validace SSO tiketů v systému Microsoft Enterprise Single Sign-On
<sso> <description>Aplikace SAP [email protected] domain\AppUserGroupAccount domain\AppAdminGroupAccount Zdroj:http://msdn.microsoft.com/en-us/library/aa754097.aspx (20.12.2008)
V tomto případě aplikace SAP inicializuje SSO, kde appUserAccount je skupina účtů která obsahuje Windows doménové účty uživatele, který jsou mapovány odpovídajícím nonWindows účtům. Příklad konfigurace 91 Ověřování hesel v systému Microsoft Enterprise Single Sign-On
<sso> <description>The SAP application [email protected] domain\AppUserAccount domain\AppAdminGroupAccount Ve skupinových aplikacích určených pro hostitelskou inicializaci systému SSO musí být účet uživatele aplikace samostatným uživatelským účtem, protože právě na tento účet jsou mapovány všechny non-Windows účty.
49
4.7.19 Správa uživatelských mapování pro SSO inicializované spřátelenou aplikací K vytvoření mapování uživatelů, nastavení oprávnění, případně k povolení či zakázání uživatelských mapování, slouží v nástroji MMC Snap-in volby obsažené pod správou spřátelených aplikací. 4.7.20 Synchronizace hesel Účelem instalace služeb synchronizace hesel je zjednodušení administrace Credential databáze v systému Microsoft Enterprise Single Sign-On a synchronizace hesel mezi adresáři uživatelů. Oba požadavky je možné vyřešit použitím synchronizačních adaptérů. Následující řádky popisují program příkazového řádku, pomocí něhož budou synchronizační adaptéry vytvořeny a spravovány. K dispozici jsou tři typy synchronizace hesel: 1. Synchronizace hesel z Windows do externí aplikace například z AD do RACF. Pokud je zaznamenána změna hesla uživatele Windows dojde k odeslání změny do Enterprise Single Sign-On serveru který je určený k příjmu změn hesel z doménového řadiče. Tento server následně předá změnu hesla externímu systému a zároveň je provedena změna mapování v Credential databázi. 2. Synchronizace hesel z externí aplikace do Windows bývá nazývána úplnou synchronizací. V tomto případě je službou synchronizace hesel sledována změna hesla v externí aplikaci, která je následně odeslána do Microsoft ENTSSO určeného k synchronizaci hesel. Ten následně změnu hesla zohlední v Credential databázi a zároveň obnoví heslo mapovaného Windows uživatele v AD. 3. Synchronizace hesel z externí aplikace do Windows bývá někdy označovaná jako částečná synchronizace. Částečná synchronizace pracuje na stejném principu jako úplná synchronizace hesel z externí aplikace do Windows s tím rozdílem, že změnu hesla uživatele v externí aplikace do Credential databáze Microsoft ENTSSO ovšem hesla Windows účtu v AD neaktualizuje. Služba synchronizace hesel není ve výchozím nastavení instalace systému Host Integration Server 2006 což znamená, že je třeba instalaci synchronizace nastavit ručně. Ke kompletní instalaci jsou nutné adaptéry synchronizace hesel, které odesílají a přijímají změny hesel z externích aplikací. Nakonec je nutná instalace komponent, které zajistí změny hesel v Active Directory. Windows Passwod Capture a Password Change Notification Service (PCNS) musí být instalovány na všechny doménové řadiče. Konfigurace synchronizace hesel lze spravovat pomocí nástroj SSOCONFIG. Tímto nástrojem můžeme specifikovat 50
adresáře pro předávání souborů a maximální dobu platnosti hesla v hodinách. ssoconfig -replayfiles | -default; ssoconfig -syncage <maximum password age in hours>. Ke správě synchronizace hesel můžeme použít nástroj SSOManage pomocí něhož je možné synchronizaci hesel povolit či zakázat, případně zobrazit platná nastavení.
4.8 Bezpečnostní doporučení pro provozování Microsoft ENTSSO Bezpečnostní doporučení pro provozování systému Microsoft Enterprise Sinle Sign-On představují základní tipy, které se týkají provozování systému jednotného přihlášení bezpečně. Provozování systému včetně předvídání možných krizových situací, které by mohly ohrozit chod společnosti. Bezporuchový přístup k informacím je dnes, v době využívání Internetu a on-line aplikací dostupných zaměstnancům i zákazníkům nezřídka dvacet čtyři hodin denně sedm dní v týdnu, velice důležité pro zachování dobrého jména a kreditu společnosti na trhu. Díky systému Microsoft Enterprise Single Sign-On mohou uživatelé přistupovat ke zdrojům různých systémů za pomoci jedné sady uživatelských oprávnění. Ačkoli je systém Microsoft ENTSSO možné instalovat společně s některou serverovou aplikací společnosti Microsoft je také možné instalovat ENTSSO jako samostatnou součást nezávislou na serverovém prostředí. V každém případě je vhodné dodržet základní opatření, jimž je věnována následující část. Obecně lze doporučit provozovat v informačním systému server sloužící k synchronizaci času, který zajistí používání jednotného času všemi SSO servery v systému. Pokud není čas na serverech synchronizován, může dojít k ohrožení bezpečnosti prostředí Microsoft ENTSSO, například v rámci možnosti omezování platnosti tiketů a podobně. Systém Microsoft ENTSSO musí obsahovat pouze jeden Master Secret server. Master Secret server slouží k operacím spojeným se správou šifrovacího klíče Master Secret, proto je dobré nepoužívat tento nástroj k dalším službám. Počítač, který je nakonfigurován jako Master Secret server nemusí být výhradně stroj typu server. Poněvadž je dobré Master Secret zálohovat měl by mít Master Secret server přístup ke vhodným zálohovacím mediím, případně k souborovému systému NTFS43. Pokud je záloha uložená na přenosná média, měla by být přijata vhodná opatření k jejich zabezpečení. Pokud je Master Secret zálohován do souborového systému NTFS, je třeba důkladně prověřit přístupová práva k cílovému adresáři. K souboru v němž je Master Secret zálohován by měl mít přístup pouze SSO
43
NTFS (New Technology File Systém) je souborový systém zavedený firmou IBM a Microsoft.
51
administrátor. Zálohovaní Master Secret by mělo být pravidelné. Je nutné zmínit, že bez platného Master Secret není možné získat žádné informace z SSO Credential databáze. Z pohledu bezpečnosti je kladen důraz na vhodná nastavení uživatelských účtů, které slouží ke správě systému. Hlavně pro SSO administrátora a Administrátora SSO spřátelených aplikací by měly být použity Windows skupiny, které obsahují alespoň dva členy. Účet služby systému Microsoft ENTSSO by neměl být zároveň účtem SSO administrátora, ačkoli jsou oba dva účty členy skupiny SSO administrátorů. Hlavním důvodem je, že uživatelé, kteří vykonávají administrační kroky, jako je generování a zálohování Master Secret, musí mít také práva administrátora Windows, zatímco účty spouštějící SSO služby práva Windows administrace nepotřebují. Nejvyšší oprávnění jsou v systému Microsoft ENTSSO přidělena účtu Administrátora SSO, tento účet je zároveň administrátorem SQL serveru, na němž je provozována SSO Credential databáze. Právě proto by měly být účty SSO administrátora vyhrazeny pouze ke zprávě Enterprise SSO a SSO Credential Databáze. Členy skupiny SSO Administrátorů by měly být pouze účty zodpovědné za provoz a údržbu systému ESSO. Nasazení systému Microsoft Enterprise Single Sign-On obsahuje nasazení mnoha vlastností, které mohou být pro stávající informační systém neznámé, případně nebyly, některé vlastnosti ze služeb podporující Microsoft ENTSSO aktivovány. Například pokud síť podporuje Kerberos autentizaci, měly by být Kerberem registrovány všechny SSO servery systému. Standardem provozování Microsoft Enterprise SSO by mělo být použití silných hesel pro všechny uživatele systému, zejména pak pro uživatele skupiny SSO administrátorů, protože tito uživatelé mají absolutní kontrolu nad celým systémem jednotného přihlášení. Velice důležité je pak vysoké zabezpečení Master Secret serveru. Tento server by neměl být používán pro obsluhu systému. Jedinou náplní práce Master Secret serveru by měla být starost o Master Secret. Zároveň by nemělo být podceněno fyzické zabezpečení Master Secret serveru. Mnoho akcí provedených v systému Microsoft ENTSSO je možné Auditovat. Audit je zásadním mechanismem zaznamenávajícím informace o prostředí SSO, Microsoft ENTSSO audituje všechny operace prováděné Credential databází. SSO používá vlastní databázi, ve které data o provedených akcích ukládá a následně pro každou úroveň auditu ukládá ENTSSO informace o provedených úkonech do tabulek databáze. Velikost těchto tabulek je nastavitelná na úrovni systému ENTSSO, s tím, že ve výchozím nastavení systému je velikost tabulky pro ukládání auditních dat omezena na jeden tisíc záznamů. SSO administrátor by měl tuto hodnotu upravit tak, aby odpovídala podnikovým bezpečnostním předpisům. Správa auditu systému by neměla smysl, pokud by uživatelské 52
účty systému Microsoft ENTSSO nebyly používány bezpečně. Všechny účty, které mají přístup do systému ENTSSO by měly být účty a skupiny domény Windows. Konkrétně, jako SSO administrátory není vhodné použití lokálního účtu a to hlavně proto, že nelze převézt práva SSO administrátora z lokálního účtu na jiný. Bezpečnostní opatření přijatá v souvislosti se zaváděním a provozem systému Microsoft Enterprise Single Sign-On musí být zavedena a aplikována v souladu s bezpečnostními opatřeními společnosti, ve které je systém zaváděn a provozován.
53
5. Další řešení systému jednotného přihlášení Systémy jednotného přihlášení jsou užitečným nástrojem určeným ke správě a ověření identity uživatelů. Veškeré systémy SSO jsou shodně zaměřeny na usnadnění přístupu uživatelů k informacím z celé sady informačních systémů, často nehomogenních, založených na jiných logikách a systémech. A dále systémy jednotného přihlášení slouží ke zjednodušení správy uživatelských účtů. Vývojem a nasazením systémů jednotného přihlášení se zabývají silné nadnárodní společnosti, ale i poměrně malé, široké veřejnosti neznáme, firmy. Do světa systémů jednotného přihlášení tak pronikly například společnosti IBM se systémem WebSphere Information Integrator Content Edition či Oracle se systémem Enterprise Single Sign-On Suite. Společnost Comes s.r.o. nabízí systém jednotného přihlášení Evidian Enterprise SSO. Vedle uvedených produktů pak existuje celá řada systémů jednotného přihlášení, které využívají technologie, které slouží k zabezpečenému uložení identifikačních údajů, například pomocí čipových karet tak, jak tomu je u systému Borderless Security SSO od společnosti T-SOFT.
54
6. Závěr Informace, bez kterých by svět, takový jaký jej známe, nemohl existovat, leží v informačních systémech. Informačních systémů poskytujících důležité a většinou důvěryhodné informace je mnoho. V době masového nasazování informačních systémů, kdy byla data přesunuta z archivů a šanonů na datová pole, nebyla sjednocenost technologie používané v informačním systému ke komunikaci s okolím a ukládání dat obsahujících uživatelská oprávnění jejich klíčovou vlastností. Neexistovaly standardy, které jsou představeny v úvodní části práce, aby mohly být návodem pro zvolení systému komunikace či ukládání informací o oprávněních uživatelů. Vývoj standardů v oblasti informačních technologií se ukázal jako výhodný, zejména pokud je třeba zajistit komunikaci mezi jednotlivými různorodými informačními systémy. S vývojem počítačů a informačních systémů, které lze s jejich pomocí provozovat a se zavedením standardů začaly být informační systémy integrovány do firemních, častokrát nadnárodních systémových celků tak, aby poskytovaly informace ze všech odvětví činnosti společnosti. Aby mohli všichni oprávnění příjemci, jim určené informace získat, musí informačnímu systému prokázat oprávněnost jejich požadavku. Musí znát svou digitální identitu. Správa digitální identity včetně úskalí, které ji provází, není jednoduchou záležitostí. Přesto se podařilo definovat možnosti, které jsou návodem na zlepšení řešení správy identity. Pokud je člověk uživatelem jednoho systému, musí si pamatovat jedno uživatelské jméno a k němu jedno heslo, případně jiné identifikační údaje, které ho opravňují k přístupu k informacím v informačním systému uložených. Zaměstnanec pracující s informačním systémem společnosti využívá, zadává, případně zpravidla spravuje několik různých informačních zdrojů. A vzhledem k tomu, že veřejných informací je v informačních systémech malé množství, jsou všechny ostatní informace chráněny omezením přístupu. Pokud chce zaměstnanec přístup k informacím získat, musí použít svou digitální identitu, která ho opravňuje k přístupu do informačního systému. Nejčastěji bývá digitální identitou uživatelské jméno a heslo. Digitální identitu si člověk, jež je uživatelem identity musí chránit. Musí volit taková hesla, která jsou pro ostatní i teoretické uživatele informačního systému neznámá a nedostupná. Pokud počet digitálních identit překročí limit, do kterého je uživatel schopen udržet identifikační údaje ve své mysli, tak aby nemusel použít jakéhokoli záznamu, je třeba použít nástroj, který umí pomoci. Dospěl jsem k názoru, že takovým nástrojem je právě některý ze systémů jednotného přihlášení. 55
Systémy jednotného přihlášení jsou v této práci popsány tak, aby si byl vlastník informačních systémů, byl schopen zvolit takový systém, který je vhodný pro konkrétní distribuovaný systém, který provozuje. Luxus v podobě možnosti použití jediné digitální identity ke všem informačním zdrojům celého systému je zásadním přínosem systémů jednotného přihlášení. Pozornost je věnována systému jednotného přihlášení Enterprise Single Sign-On od společnosti Microsoft. Po získání ucelených informací ohledně komponent, ze kterých se systém Microsoft Enterprise Single Sign-On skládá a postupech při instalaci a konfiguraci by se mohlo zdát, že zavedení systému do provozu distribuovaného systému nebude náročné. Je si však třeba uvědomit provoz aplikací a systémů, které zmíněné standardy nepoužívají. Systémy, které standardy nutné pro komunikaci se systémem Microsoft Enterprise Single Sign-On nepoužívají je nutné přizpůsobit, případně je třeba použít dalších systémů označovaných jako „middleware“, které nutnou komunikaci mezi systémy obslouží. Na vysvětlení middleware systémů nezbyl prostor. Je však třeba upozornit, že se velice často stávají důležitým prvkem v systému Microsoft Enterprise Single Sign-On. Může se tak stát, že takové systémy, které nedisponují standardizovanými funkcemi nebude možné do systému Microsoft Enetrprise Single Sign-On integrovat ani s pomocí middleware systémů. Pak nezbývá, než aplikaci nahradit takovou, která komunikaci se systémem Microsoft Enterprise Single Sign-On umožní. Ať už dojde v průběhu nasazení k nutnosti úpravy „neposlušné aplikace“, či k jejímu nahrazení, vždy dojde k časové prodlevě případně navýšení ceny nasazení systému Microsoft Enterprise Single Sign-On, se kterou je třeba při plánování nasazení systému počítat. Správa systému Microsoft Enterprise Single Sign-On by měla být pro uživatele případně správce systému, který používá některý z produktů firmy Microsoft poměrně snadná. Samozřejmě s přihlédnutím na specializovanou funkčnost systému jednotného přihlášení. Úspěšným zavedením systému Microsoft Enterprise Single Sign-On získá organizace provozující informační systémy spolehlivý nástroj pro správu identity, služby řízení přístupu a autorizace. Co organizace zavedením libovolného systému jednotného přihlášení nezíská? Ani systémy jednotného přihlášení nemohou zajistit seriózní přístup uživatelů k jim svěřeným digitálním identitám. Systémy jednotného přihlášení nevyřeší otázky typu: Kam má mít konkrétní uživatel přístup? Jaké oprávnění má být uživateli přiděleno? Kdo v systému zruší případně zablokuje veškeré oprávnění uživatele, když důvod přístupu k informací pominul? Představme si tedy systém, díky němuž získá uživatel vždy oprávnění pouze k těm informacím které mu oparvdu náleží a to vždy od počátku potřeby přístupu až 56
k jeho konci. Navíc můžeme v budoucnu očekávat odklon od užívání prokázání identity pomocí skupin znaků. Předpokládejme použití něčeho jedinečného v souladu s právním řádem, neodcizitelného a neokopirovatelného, něčeho jako je lidské oko či otisk prstu. Potom, pokud se podaří takový systém vyvinout a zavést taková opatření k nemožnosti zneužití digitální identity, teprve pak se bude důvěryhodnost správy uživatelských přístupů alespoň blížit hodnotě informací, které jsou v informačních systémech dostupné.
57
7. Seznam použité literatury 1. AuthenticationWorld.com The business of authentication: Single Sign On [online] [cit. 22. 11. 2008] Dostupný z WWW: 2. Brechlerová Dagmar: SAML a XACML jako nová cesta pro Identity management [online] INFORUM 2007:13. konference o profesionálních informačních zdrojích Praha, 22. - 24. 5.2007 [cit. 21. 11. 2008], Dostupný z WWW: 3. Dutta Rion: Planning for Single Sign On [online] [cit. 22. 11. 2008] Dostupný z WWW: < http://www.mielesecurity.com/Resources/Downloads/SSO%20WP.pdf> 4. Grolmus Petr: WebISO - Single Sign-On řešení pro WWW [online], 30. listopadu 2005, Technická zpráva CESNETu číslo 7/2005 [cit. 22. 11. 2008] Dostupný z WWW: 5. Hanáček Petr, Staudek Jan: Správa identity [online], Tomáš Hruška (ed.), DATAKON 2005, Brno, 22.-25. 10. 2005, pp. 1-23 [cit. 11. 8. 2008] Dostupný z WWW: 6. IBM: IBM WebSphere Information Integrator Content Edition - Single sign-on overview [online], November 30, 2005 12:01:00 AM PST [cit. 22. 11. 2008] Dostupný z WWW: 7. Interval.cz: RSA Security začlení standard SAML do produktových řad [online], press Interval.cz (16.7.2002) [cit. 20. 11. 2008] Dostupný z WWW: 8. Jeník Lukáš: Identity Management [online] [cit. 22. 11. 2008] Dostupný z WWW: 9. Kosek Jiří: XML pro každého [online], Grada Publishing 2000, 164 stran ISBN 807169-860-1[cit. 21.11.2008] Dostupný z WWW: 10. Krejčí Jan: Správa identity [online] IT Systems 1-2/2008 [cit. 21. 11. 2008] Dostupný z WWW: 11. Logica Czech Republic s.r.o.: Integrace podnikových aplikací (EAI) [online] [cit 23. 12. 2008] Dostupný z WWW: 12. Microsoft: MSDN Library [online] [cit. 22. 11. 2008] Dostupný z WWW: 13. Microsoft: What's new in .NET Framework 3.5 SP1? [online] [cit. 21. 11. 2008] Dostupný z WWW: 14. Mlíka Jiří: Seriál: Centrální správa účtů a Single Sign-On [online] AbcLinuxu:/ Seriály / Centrální správa účtů a Single Sign-On [cit. 22. 11. 2008] Dostupný z WWW: 58
15. Novakov Ivan: Web Single Sign On Systems [online], 8.1.2006, CESNET technical report number 21/2006 [cit. 22. 11. 2008] Dostupný z WWW: 16. Rekonix: SecureLogin® Single Sign-On [online] [cit. 22. 11. 2008] Dostupný z WWW: 17. Requirements for a Global Identity Management Service: A Position Paper from OneName Corporation for the W3C Workshop on Web Services [online], 11-12 April 2001, San Jose, CA USA [cit. 27.8. 2008]. Dostupný z WWW: 18. Robbins Colin & Hamilton Edward: Successfully deploying single sign-on (SSO) within an outsourced environment [online] [cit. 22. 11. 2008] Dostupný z WWW: 19. Shakir James: Web Single Sign-On Systems [online] December, 2007 [cit. 22. 11. 2008] Dostupný z WWW: 20. Systemonline: Oracle uvádí Enterprise Single Sign-On Suite [online], Aktuality -> Podnikové aplikace - 18. 12. 2006 15:00 [cit. 22. 11. 2008] Dostupný z WWW: 21. T-SOFT: Borderless Security SSO [online] [cit. 22. 11. 2008] Dostupný z WWW: 22. Tichý Jiří: Autentizace a správa uživatelů [online] [cit. 22. 11. 2008] Dostupný z WWW:
59
8. Seznam použitých zkratek AD API DSML EAI ENTSSO HTTP ID IETF IT ITU-T LDAP NTFS OASIS P2P PCNS PIN RACF SAML SOAP SPML SPN SQL SSO TCB TCP/IP UDDI UI URL W3C WEB-SSO WSDL WS-I XACML XML
Active Directory Aplication Progamming Interface Directory Services Markup Language Enterprise Application Integration Enteprise Single Sign On Hypertext Transfer Protocol Identity Internet Engineering Task Force Information Technology (ITU Telecommunication Standartization Sector Lieghtweight Direktory Access Protocol New Technology File System Organization for the Advancement of structured Standards Peer-2-Peer Password Change Notification Service Personal Identification Number Resource Access Control Facility Security Assertions Markup Language Simple Object Access Protokol Service Provisioning Markup Language Service Principal Names Structured Query Language Single Sign On Trusted Computing Base Transmission Control Protocol / Internet Protocol Universal Description, Discovery a Integration User Interface Unique Resource Locator World Wide Web Consortium Web Single Sign On Web Services Description Language Web Services Interoperability organization eXtended Access Control Markup Language eXtensible Markup Language
60