Zarządzanie dostępem i tożsamością (Id&AM)



Podobne dokumenty
technologie Microsoft a sprawa Oracle

Serwery LDAP w środowisku produktów w Oracle

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Wyjaśnienia treści Specyfikacji Istotnych Warunków Zamówienia

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:

Wykład I. Wprowadzenie do baz danych

Wstęp... ix. 1 Omówienie systemu Microsoft Windows Small Business Server

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Migracja XL Business Intelligence do wersji

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

REFERAT O PRACY DYPLOMOWEJ

Serock warsztaty epuap 28 październik 2009 r. Sławomir Chyliński Andrzej Nowicki WOI-TBD Szczecin

Praca w sieci z serwerem

11. Autoryzacja użytkowników

1 Wprowadzenie do J2EE

Migracja Business Intelligence do wersji

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Identity Management w Red Hat Enterprise Portal Platform. Bolesław Dawidowicz

Migracja Business Intelligence do wersji

Jednolite zarządzanie użytkownikami systemów Windows i Linux

Zmiana treści Specyfikacji Istotnych Warunków Zamówienia.

Oracle Application Express -

W załączniku nr 9 do SIWZ Zamawiający wprowadza następujące zmiany:

Tomasz Grześ. Systemy zarządzania treścią

Migracja Business Intelligence do wersji

Plan. Raport. Tworzenie raportu z kreatora (1/3)

Platforma e-learningowa

Referat pracy dyplomowej

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera :

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Leonard G. Lobel Eric D. Boyd. Azure SQL Database Krok po kroku. Microsoft. Przekład: Marek Włodarz. APN Promise, Warszawa 2014

ZAPOZNANIE SIĘ ZE SPOSOBEM PRZECHOWYWANIA

Wprowadzenie do sieciowych systemów operacyjnych. Moduł 1

Release Notes Process Data Flow ("PDF" )

SiR_13 Systemy SCADA: sterowanie nadrzędne; wizualizacja procesów. MES - Manufacturing Execution System System Realizacji Produkcji

Uwierzytelnianie użytkowników sieci bezprzewodowej z wykorzystaniem serwera Radius (Windows 2008)

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Moduł mapowania danych

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Praktyczne wykorzystanie mechanizmów zabezpieczeń w aplikacjach chmurowych na przykładzie MS Azure

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

OFFICE ADFS - POŁĄCZENIE KORZYŚCI ROZWIĄZAŃ CHMUROWYCH I CENTRALNEGO ZARZĄDZANIA

INTERNET - Wrocław Usługi bezpieczeństwa w rozproszonych strukturach obliczeniowych typu grid

PROFESJONALNE USŁUGI BEZPIECZEŃSTWA

DOKUMENTACJA BI SOW PFRON. Powykonawcza. dla BI INSIGHT S.A. UL. WŁADYSŁAWA JAGIEŁŁY 4 / U3, WARSZAWA. Strona 1 z 23

Szczegółowa specyfikacja funkcjonalności zamawianego oprogramowania.

Systemy obiegu informacji i Protokół SWAP "CC"

Migracja Business Intelligence do wersji 11.0

Wyspecjalizowani w ochronie urządzeń mobilnych

Zmiany funkcjonalne i lista obsłużonych zgłoszeń Comarch DMS

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

System Obsługi Wniosków

ActiveXperts SMS Messaging Server

Instalacja SQL Server Konfiguracja SQL Server Logowanie - opcje SQL Server Management Studio. Microsoft Access Oracle Sybase DB2 MySQL

Procedury techniczne modułu Forte Kontroling. Środowisko pracy programu i elementy konfiguracji

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

ZAŁĄCZNIK NR 3 OPIS PRZEDMIOTU ZAMÓWIENIA DOTYCZĄCY WDROŻENIA PLATFORMY ZAKUPOWEJ

Szczegółowy opis przedmiotu zamówienia

Zmieniona Tabela nr 1a - Oprogramowanie antywirusowe. Parametry wymagane przez Zamawiającego

Wyspecjalizowani w ochronie urządzeń mobilnych

Komunikacja i wymiana danych

AE/ZP-27-16/14. Oprogramowanie do wykonywania kopii zapasowych oraz zarządzania maszynami wirtualnymi

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy

Projekt architektury systemów informatycznych Uniwersytetu Warszawskiego w oparciu o metodykę TOGAF. Tomasz Turski

EXSO-CORE - specyfikacja

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

OfficeObjects e-forms

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

Bazy danych 2. Wykład 1

Zarządzaj projektami efektywnie i na wysokim poziomie. Enovatio Projects SYSTEM ZARZĄDZANIA PROJEKTAMI

DOKUMENTACJA ADMINISTRATORA SYSTEMU INFORMATYCZNEGO POLSKI FADN

SHOPER INTEGRATOR XL BY CTI INSTRUKCJA

Microsoft Exchange Server 2013

Szczegółowy opis przedmiotu zamówienia

SHOPER INTEGRATOR BY CTI INSTRUKCJA

e-audytor v.3.x INSTRUKCJA INSTALACJI I URUCHOMIENIA SYSTEMU

1. Podręcznik instalacji aplikacji EXR Creator Wstęp Instalacja Instalacja aplikacji EXR Creator z płyty CD

Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows

Instalator umożliwia zainstalowanie aplikacji klienckiej na komputerze użytkownika końcowego. Na instalator składają się następujące funkcje:

Projektowanie baz danych za pomocą narzędzi CASE

Tomasz Greszata - Koszalin

Instrukcja konfigurowania poczty Exchange dla klienta pocztowego użytkowanego poza siecią uczelnianą SGH.

Projektowanie i implementacja infrastruktury serwerów

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

pasja-informatyki.pl

Architektury i protokoły dla budowania systemów wiedzy - zadania PCSS w projekcie SYNAT

Pojęcie systemu baz danych

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Cel szkolenia. Konspekt

Pracownia internetowa w szkole ZASTOSOWANIA

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Przypisywanie bibliotek w architekturze SAS

DOTYCZY KLIENTA PKO BIURO OBSŁUGI LEASING ZAPYTANIE O INFORMACJĘ OTYCZY: DOSTAWY PLATFORMY ELEKTRONICZNE DLA PKO

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Z pojedynczym obiekcie zasady grupy znajdziemy dwa główne typy ustawień:

Transkrypt:

Zarządzanie dostępem i tożsamością (Id&AM) Technologia Microsoft. Przypadki użycia. Przygotowane dla Stowarzyszenie Polskiej Grupy Użytkowników Systemów Oracle (PLOUG) Przygotowane przez Tomasz Onyszko Consultant II tomaszon@microsoft.com Page 1

Page 2

1 ZARZĄDZANIE DOSTĘPEM I TOŻSAMOŚCIĄ W TECHNOLOGIACH MICROSOFT Zarządzanie tożsamością w rzeczywistości wykreowanej przez rozproszone heterogeniczne systemy informatyczne jest zadaniem skomplikowanym i angażującym wiele zasobów. W proces ten wpisują się wszelkie działania związane z rozpoczęciem życia tożsamości w ramach organizacji (utworzenie kont, wprowadzenie danych itp.), zarządzaniem zmianami w tożsamości (zmiany danych, zmiany uprawnień, usuwanie \ zakładanie kont) oraz zakończeniem życia tożsamości w organizacji (zablokowanie \ usunięcie kont, odebranie dostępu, ujednolicenie informacji o zakończeniu życia tożsamości we wszystkich systemach). W większości przypadków, na techniczny aspekt tego zagadnienia nakładają się dodatkowo uwarunkowania prawne (chociażby ustawa o ochronie danych osobowych w Polsce), organizacyjne itp. Złożoność zagadnienia powoduje, że w ramach większości organizacji na pewnym etapie ich życia pojawia się potrzeba wdrożenia procesów związanych z całościowym zarządzaniem cyklem życia tożsamości elektronicznej, w większości przypadków podąża też za tym potrzeba zastosowania odpowiednich środków technicznych wspomagających ten proces. Microsoft w ramach swoich rozwiązań w chwili obecnej oferuje trzy podstawowe technologie wspierające zarządzanie tożsamością i integracje systemów: system operacyjny Windows 2003 Server (w chwili obecnej wersja R2), platformę serwer Microsoft Identity Information Server 2003 (MIIS 2003), technologię federacji tożsamości Active Directory Federation Services (ADFS). Windows 2003 Server stanowi w chwili obecnej podstawową platformę systemu operacyjnego Microsoft. Jest też podstawą do budowy rozwiązań Id&AM w oparciu o technologie Microsoft. Windows 2003 Server, oprócz platformy do budowy rozwiązań, sam w sobie zawiera technologie pozwalające na integrację różnych systemów w ramach rozwiązań Id&AM. Istniejąca w Windows 2003 Server usługa katalogowa Active Directory opiera się o dobrze znane standardy i protokoły, jakimi są: protokół LDAP i Kerberos. Dzięki temu usługa Active Directory może w prosty sposób zostać użyta jako centralny katalog danych o użytkownikach oraz katalog umożliwiający uwierzytelnienie i autoryzacje użytkowników w różnych systemach. Możliwość uwierzytelnienia użytkowników bezpośrednio w usłudze Active Directory istnieje obecnie w większości oprogramowania stosowanego w przedsiębiorstwach. Uwierzytelnienie to realizowane jest poprzez protokół LDAP (LDAP bind) lub Kerberos (zalecana metoda). Możliwość taką udostępnia również oprogramowanie firmy Oracle. System Windows 2003 Server od wersji R2 (uaktualnienie do systemu, zawierające nowe funkcje, wydane w grudniu 2005) zawiera wbudowaną funkcjonalność pozwalającą na użycie Windows 2003 Server jako platformy zapewniającej uwierzytelnienie i autoryzację użytkowników systemów Linux \ Unix. Funkcjonalność ta jest odpowiednikiem dostępnych wcześniej usług Services for UNIX, które od wersji R2 stanowią część systemu operacyjnego (jako opcjonalnie instalowany dodatek). Microsoft Identity Integration Server 2003 stanowi podstawową platformę budowy rozwiązań zarządzania tożsamością w organizacji, dostępną w chwili obecnej w ramach rozwiązań Microsoft. Serwer ten dostarcza usługi metakatalogu pozwalającego agregować dane z wielu systemów oraz mechanizmów synchronizacji danych pomiędzy różnymi ich źródłami. Pozwala to na implementacje Page 3

różnego rodzaju scenariuszy związanych z rozpoczęciem, utrzymaniem i zakończeniem cyklu życia tożsamości w ramach organizacji. Active Directory Federation Services (ADFS) jest to nowa usługa wprowadzona w Windows 2003 Server R2 realizująca idee federacji tożsamości pomiędzy różnymi organizacjami lub w ramach różnych aplikacji tej samej organizacji. Usługa ta opiera się na standardzie zdefiniowanym w ramach specyfikacji WS-Federation. Pozwala na zbudowanie relacji zaufania pomiędzy organizacjami, opartych na mechanizmach PKI, bez konieczności budowania relacji pomiędzy katalogami zapewniającymi uwierzytelnienie użytkowników w tych organizacjach. Relacje te pozwalają na zapewnienie usługi pojedynczego logowania (Single Sign-on) oraz autoryzacji pomiędzy organizacjami i pomiędzy aplikacjami działającymi na różnych platformach (Windows, UNIX, ASP.NET, Java itp.) W chwili obecnej rozwiązania oparte na ADFS pozwalają na integrację aplikacji działających w oparciu o przeglądarki internetowe na różnych platformach. W przypadku aplikacji działających na platformach innych niż Windows 2003 \ ASP.NET potrzebne jest dodatkowo oprogramowanie firm trzecich. Rozwiązania zarządzania tożsamością firmy Microsoft budowane są w oparciu o te trzy podstawowe elementy, wspierane w różnych zastosowaniach dodatkowym oprogramowaniem (MS SQL Server, ADAM, Visual Studio.NET,.NET Framework). Fakt, że rozwiązania zarządzania tożsamością proponowane przez Microsoft budowane są w oparciu o oprogramowanie i technologie Microsoft nie oznacza, że są one zamknięte na współpracę z rozwiązaniami innych firm. Specyfika tego rodzaju projektów wymusza w pewien sposób interakcję z danymi \ katalogami \ źródłami informacji utrzymywanymi na różnych platformach systemów operacyjnych, w różnych standardach baz danych i katalogów. Page 4

2 MIIS 2003 PLATFORMA ZARZĄDZANIA TOŻSAMOŚCIĄ Podstawowym elementem składowym rozwiązań Identity Management w ramach oprogramowania Microsoft w chwili obecnej jest Microsoft Identity Management Server 2003. Oprogramowanie to dostarcza usług metakatalogu oraz usługi synchronizacji danych pomiędzy różnymi katalogami. MIIS 2003 pozwala pobrać z połączonych katalogów informacje o istniejących w nich obiektach, skorelować je ze sobą według określonych kryteriów a następnie zsynchronizować dane w tych katalogach w oparciu o założoną logikę przepływu danych. MIIS 2003 utrzymuje w wewnętrznej bazie danych powiązanie pomiędzy poszczególnymi obiektami w różnych katalogach, tworząc w ramach własnej przestrzeni danych metakatalogu pełną informację o tożsamości elektronicznej w ramach organizacji. W oparciu o te mechanizmy możliwa jest realizacja przy pomocy tego narzędzia zautomatyzowanych procesów tworzenia \ utrzymania\ zakończenia cyklu życia tożsamości elektronicznej. 2.1 Podstawowe informacje o MIIS 2003 MIIS 2003 jest to oprogramowanie instalowane na platformie Windows 2003 Server. Jako źródło bazy danych na własne potrzeby MIIS 2003 używa serwera Microsoft SQL Server 2000. MIIS 2003 nie wymaga istnienia domeny Active Directory, może działać w środowisku wolnostojącego serwera Windows Server 2003. W przypadku braku domeny Active Directory ograniczona jest funkcja synchronizacji haseł pomiędzy systemami połączonymi z MIIS 2003 (szczegóły w rozdziale 2.5). MIIS 2003 zbudowany został w oparciu o technologię dostępną w ramach.net Framework 1.1. Komponent ten jest niezbędny do prawidłowego działania oprogramowania. Rozszerzenia MIIS 2003 o dodatkową funkcjonalność mogą być tworzone w oparciu o języki i kompilatory CRL dla.net Framework w wersji 1.1 o raz 2.0. W chwili obecnej dostępne są dwie wersje tego oprogramowania: Identity Integration Feature Pack (IIFP) Microsoft Identity Integration Server 2003 IIFP jest to dostępna bezpłatnie na stronach Microsoft wersja MIIS ograniczona do zastosowania tylko do synchronizacji danych pomiędzy kilkoma katalogami, to jest: Active Directory Active Directory (Exchange) w scenariuszu synchronizacji list adresowych Active Directory Aplication Mode (ADAM). Rozwiązanie to jest pomyślane jako rozszerzenie możliwości Windows 2003 Server w zakresie zarządzania danymi zgromadzonymi w katalogach korporacyjnych. MIIS 2003 jest w pełni funkcjonalną wersją oprogramowania, w której możliwości połączenia dodatkowych systemów ograniczone są jedynie przez dostępność odpowiedniego agenta zarządzającego lub możliwości stworzenia takiego agenta. W chwili obecnej, po zainstalowaniu MIIS 2003 pozwala na integrację z następującymi źródłami danych: Page 5

AD/Exchange 2000/2003 ADAM SUN ONE Directory Server (iplanet) DB2 IBM Directory NT4 Exchange 5.5 Lotus Notes Novell edirectory RACF (OS/390) SAP R/3 (Beta) SQL Server 2000/2005 Oracle 8/9 DSML 2.0 (XML) LDAP Directory Interchange Format (LDIF) Delimited Text Fixed-Width Text Attribute-Value Pair Text Specjalnym, dostępnym w ramach MIIS 2003 rodzajem agenta jest Extensible Management Agent (ExMA). Jest to technologia pozwalająca na zbudowanie we własnym zakresie agenta zarządzającego do dowolnego systemu \ źródła danych, z którym MIIS 2003 musi się skomunikować. Dzięki tej technologii w ramach Microsoft Consulting Services w Polsce zostały zaimplementowane połączenia do: RSA ACE/Server Cisco Secure Access Control Server 3.1-3.3 RSA KEON Oracle Internet Directory SAP R/3 (*) Rozmaitych systemów kadrowych, systemów zarządzania uprawnieniami. W technologii dostępnej dzięki ExMA zaimplementowany został również agent zarządzający do usługi katalogowej OpenLDAP dostępny jako Open Source w ramach witryny SourceForge (http://sourceforge.net/projects/openldap-ma/). Page 6

2.2 Podstawowe pojęcia związane z MIIS 2003 Metaverse - wirtualna przestrzeń zawierająca skonsolidowaną reprezentację tożsamości użytkowników opisaną atrybutami odpowiedniej klasy. Klasy obiektów i atrybuty definiowane są poprzez schemat metaverse. Agent zarządzający jest to obiekt po stronie MIIS 2003 realizujący fizyczne połączenie z zarządzanym systemem. Agent zarządzający realizuje połączenie z systemem i zapewnia przepływ danych pomiędzy metaverse a źródłem danych, pozwala również na implementację dodatkowej logiki przepływu danych. Konektor jest to reprezentacja obiektu tożsamości użytkownika lub innych powiązanych z tą tożsamością obiektów w ramach jednego z agentów zarządzających. Konektor reprezentuje obiekt zawarty w zarządzanym systemie, tak jak jest on widziany przez, MIIS który posiada powiązanie z obiektem w metaverse. Obiekt w zarządzanym systemie, który został odczytany i rozpoznany przez MIIS oraz zaimportowany do przestrzeni konektorów, dla którego takie połączenie nie występuje nazywamy obiektem niepołączonym lub dyskonektorem (disconnector). Przestrzeń konektorów jest to wirtualna przestrzeń powiązana z agentem zarządzającym, w której przechowywane są obiekty konektorów (jak i również obiekty niepołączone). Projekcja obiektów jest to proces tworzenia reprezentacji obiektu w metaverse na podstawie danych i reguł związanych z jednym z agentów realizujących połączenie z zarządzanym systemem. Provisioning jest to proces tworzenia obiektów w integrowanych systemach na podstawie informacji pochodzących z autorytatywnych źródeł. Proces ten przebiega według zdefiniowanych reguł definiujących, w których zarządzanych systemach obiekt powinien być utworzony. W ramach reguł provisioning definiowane są również konwencje nazewnictwa obiektów. Deprovisioning jest to proces usuwania obiektów w integrowanych systemach w wypadku zajścia warunków (zmiana atrybutów lub usunięcie obiektu w źródle autorytatywnym) wymuszających konieczność usunięcia obiektu. IAF, Import Attrbiute Flow przepływ danych z połączonych systemów do wnętrza systemu MIIS 2003. Przepływ wchodzący. EAF, Export Attrbiute Flow przepływ danych z wnętrza systemu MIIS 2003 do połączonych systemów. Przepływ wychodzący. Page 7

2.3 Architektura Architektura MIIS 2003 opiera się o trzy podstawowe elementy: Usługę działającą w systemie operacyjnym, zarządzającą synchronizacją danych Źródło danych stanowiące repozytorium informacji o tożsamości Mechanizmy przepływu danych i ich rozszerzeń pozwalające na zarządzanie logiką synchronizacji danych. 2.3.1 Usługa MIIS 2003 Usługa MIIS działająca w systemie operacyjnym jest głównym elementem architektury. Dostarcza ona mechanizmów pozwalających na tworzenie połączeń z zewnętrznymi źródłami danych, zarządza i utrzymuje w bazie danych relacje pomiędzy poszczególnymi obiektami oraz dostarcza interfejsów pozwalających na zarządzanie procesami i definiowanie ich w ramach mechanizmów synchronizacji. Zarządzanie usługą odbywa się poprzez konsolę administracyjną pozwalającą na definiowanie połączeń z systemami i budowanie logiki przepływu atrybutów pomiędzy poszczególnymi źródłami danych. Większością aspektów działania usługi MIIS można również zarządzać poprzez przestrzeń Windows Management Instrumentation (WMI), dzięki czemu możliwe jest tworzenie skryptów administracyjnych dla tej usługi. Page 8

2.3.2 Skład danych Jako składnicy danych o tożsamości MIIS 2003 używa bazy danych MS SQL 2000. MS SQL 2000 dostarcza standardowych usług bazodanowych, pozwalające na zapewnienie wysokiej wydajności i dostępności źródła danych na potrzeby MIIS 2003. 2.3.3 Mechanizmy przepływu danych Integralną częścią architektury MIIS 2003 są mechanizmy pozwalające na zajście synchronizacji danych, a więc: Agenci zarządzający Rozszerzenia przepływu danych. Agent zarządzający stanowi interfejs pomiędzy MIIS 200 a połączonym źródłem danych. Umożliwia nawiązanie fizycznego połączenia do źródła danych i odczyt obiektów w nim przechowywanych. Agent zarządzający realizuje funkcję przepływu danych do lub ze źródła danych, z ograniczeniem do przepływu danych tylko w jednym kierunku równocześnie. Dane pomiędzy połączonymi źródłami danych a metaverse mogą przepływać w sposób prosty, możliwe jest jednak też definiowanie rozszerzeń tych przepływów czyli bibliotek pozwalających na modyfikacje i przetwarzanie danych w ramach przepływu. Przykładem takiego rozszerzenia może być reguła przeliczająca stan obiektu (aktywny \ nieaktywny) z systemu kadrowego, na wartość odpowiedniego atrybutu w katalogu Active Directory lub stan użytkownika (LOCKED\OPEN) w bazie danych Oracle. Rozszerzenia te mogą być stosowane na trzech etapach przepływu danych: Przepływ wejściowy (Import Attribute Flow, IAF) zachodzi, gdy dane z przestrzeni konektorów, czyli z przestrzeni zawierającej informacje o obiektach w źródle danych, przepływają do metaverse MIIS 2003. Rozszerzenia metaverse (Metaverse Extension) wywoływane po zakończeniu wejściowego przepływu danych, pozwalają na zaimplementowanie logiki decyzyjnej w procesie zakładania \ zarządzania \ usuwania obiektów w połączonych źródłach danych. Przepływ wyjściowy (Export Attribute Flow, EAF) zachodzi, gdy wartości atrybutów z metaverse przepływają do przestrzeni konektorów połączonego źródła danych. Dodatkowo, w przypadku agentów, dla których nie ma zdefiniowanych standardowych mechanizmów synchronizacji haseł, możliwe jest zdefiniowanie takiego mechanizmu poprzez rozszerzenie haseł (password extension). Schemat przepływu danych pomiedzy przestrzenią agentów a metaverse przedstawia poniższy rysunek: Page 9

Rozszerzenia te implementowane są w językach kompilujących się do CRL (przeważnie C#, VB.NET) i wywoływane są z poziomu usługi MIIS 2003. Mogą być wywołane w ramach procesu tej usługi lub w osobnym procesie. 2.4 Mechanizmy działania synchronizacji Synchronizacja danych w ramach mechanizmów MIIS składa się z następujących procesów: Odczyt danych (Staging) pozwala na uaktualnienie stanu przestrzeni konektorów agenta zarządzającego danymi ze źródła danych. Synchronizacji wchodzącej, w której zawartość danych w metaverse jest uaktualniana na podstawie danych znajdujących się w przestrzeni agenta zarządzającego Synchronizacji wychodzącej, w której zawartość obiektów w przestrzeni konektorów uaktualniana jest na podstawie zawartości metaverse. 2.4.1 Odczyt danych W ramach fazy odczytu danych (staging) konektory w przestrzeni agenta zarządzającego uaktualniane są danymi ze źródła danych. Pozwala to na utworzenie w ramach przestrzeni konektorów agenta zarządzającego jednolitego ze źródłem danych obrazu wszystkich konektorów. W ramach operacji odczytu danych mogą zostać wygenerowane następujące zdarzenia: Dodanie (Add) czyli utworzenie nowego konektora na podstawie źródła danych Uaktualnienie (Update) danych istniejącego konektora Usunięcie (Delete) konektora z przestrzeni agenta zarządzającego na skutek usunięcia go ze źródła danych. Operacja odczytu danych wykonywana jest przed operacją synchronizacji danych w celu odświeżenia stanu konektorów w przestrzeni agenta zarządzającego. 2.4.2 Synchronizacja wchodząca Celem synchronizacji wchodzącej jest utworzenie w ramach metaverse MIIS 2003 jednolitego obrazu tożsamości na podstawie danych zgromadzonych w ramach przestrzeni konektorów połączonych źródeł danych. Na podstawie tych informacji MIIS określa wartość atrybutów w poszczególnych połączonych źródłach danych oraz podejmuje decyzję o ewentualnych zmianach w obiektach. W ramach synchronizacji wchodzącej zachodzą następujące procesy: Połączenie (join): w przypadku gdy obiekt w przestrzeni konektorów nie ma swojej reprezentacji w metaverse, MIIS na podstawie atrybutów obiektu próbuje skorelować go i połączyć z istniejącym obiektem metaverse. Jeżeli obiekt uda się połączyć z istniejącym obiektem metaverse, staje się on konektorem. Page 10

Projekcja (projection): w przypadku, gdy obiekt w przestrzeni konektorów nie ma swojej reprezentacji w metaverse i nie udało się dla niego przeprowadzić operacji połączenia, tworzony jest nowy obiekt w metaverse. Jest to jedyny proces, który może utworzyć nowy obiekt w ramach metaverse. Wchodzący przepływ atrybutów (IAF): po zakończeniu operacji połączenia lub projekcji wykonywany jest przepływ danych do metaverse. W ramach przepływu danych mogą zostać uruchomione dodatkowe rozszerzenie pozwalające na modyfikację \ przetworzenie danych na podstawie określonych reguł. Przedstawione powyżej procesy zachodzą osobno dla każdego z obiektów w każdej z przestrzeni agentów zarządzających zdefiniowanych w ramach MIIS 2003. 2.4.3 Synchronizacja wychodząca Celem synchronizacji wychodzącej jest określenie stanu obiektów w poszczególnych przestrzeniach agentów zarządzających na podstawie danych pochodzących z przepływu wejściowego. W ramach tego procesu wykonywane są trzy operacje: Tworzenie obiektów (provisioning) \ zakończenie życia obiektów (deprovisioning) - jest to proces, w trakcie którego podejmowana jest decyzja o rozpoczęciu lub zakończeniu cyklu życia obiektu w ramach przestrzeni konektorów agenta zarządzającego. Decyzja ta podejmowana jest przez logikę rozszerzenia metaverse, na podstawie danych zgromadzonych w metaverse i przestrzeni agentów zarządzających. Operacje te wymienione zostały łącznie, ponieważ operacja zakończenia życia obiektu może zostać zainicjowana tylko z poziomu logiki sterującej operacjami tworzenia obiektów. Obiekt, którego cykl życia zostaje zakończony, nie jest automatycznie usuwany, a oznaczony jako przeznaczony do usunięcia. To, w jakiej formie zostanie on usunięty (fizycznie lub logicznie ze źródła danych), podlega również możliwości modyfikacji poprzez odpowiednie metody rozszerzeń. Wychodzący przepływ atrybutów (EAF) - na podstawie danych zgromadzonych w przestrzeni metaverse i odpowiednich rozszerzeń przepływu wyliczane są wartości atrybutów dla poszczególnych obiektów w ramach przestrzeni konektorów. Wyliczone wartości zapisywane są w obiektach konektorów w przestrzeni agenta zarządzającego, gdzie oczekują na wyeksportowanie do źródła danych. W ten sposób możliwe jest zweryfikowanie zmian, jakie mają nastąpić w źródle danych przed ich zapisaniem. Zapis danych odbywa się w ramach operacji eksportu danych. Przebieg operacji tworzenia i zakończenia życia obiektów w fazach provisioning \ deprovisioning kontrolowany jest przez logikę opisaną w rozszerzeniach metaverse, tworzonych w trakcie implementacji rozwiązania. Operacje te są zawsze wywoływane w przypadku wykrycia zmiany w połączonym obiekcie w przestrzeni agenta zarządzającego. Operacje provisioning \ deprovisioning wykonywane są osobno dla każdego z obiektów, w którym nastąpiły zmiany w wyniku przepływu atrybutów. 2.4.4 Proces synchronizacji Ogólny schemat przepływu danych w ramach synchronizacji MIIS. Page 11

2.5 Synchronizacja haseł MIIS 2003 posiada mechanizmy pozwalające na zarządzanie i synchronizację haseł w połączonych źródłach danych. Możliwe jest obsłużenie odrębnych operacji ustawienia i zmiany hasła dla każdego z obiektów w połączonym źródle danych. Operacja ustawienia hasła może zostać wykonana dla nowo tworzonego obiektu w ramach fizycznego źródła danych, zaraz po zapisaniu tego obiektu w tym źródle. Jest ona wykonywana wtedy niezależnie od mechanizmów synchronizacji haseł. Operacja zmiany hasła może zostać wyzwolona z poziomu reguł przepływu poprzez zapisanie hasła do odpowiedniego atrybutu w obiekcie konektora lub jako element procesu synchronizacji haseł. Synchronizacja haseł możliwa jest pomiędzy domeną Active Directory a innymi połączonymi źródłami danych. Innymi słowy, zmiana hasła w Active Directory wyzwala operację uaktualnienia hasła w połączonych źródła danych. Wymaga to, oczywiście, aby Active Directory było jednym z połączonych systemów oraz aby użytkownik posiadał konto w Active Directory. Proces ten jest wyzwalany przez operację zmiany hasła użytkownika z poziomu systemu operacyjnego w którym ten użytkownik pracuje. Hasło w formie czystej przechwytywane jest przez usługę działającą na kontrolerach domeny i przekazywana poprzez zabezpieczony kanał do serwera MIIS, gdzie zapisywane jest w bezpiecznej kolejce. Hasła znajdujące się w kolejce są przetwarzane (kolejka FIFO), następnie wyzwalana jest akcja zmiany haseł dla odpowiednich konektorów powiązanych z obiektem metaverse, z którym powiązane było konto Active Directory. Zmiana hasła w poszczególnych systemach odbywa się przy pomocy mechanizmów natywnych dla danego źródła danych. Agenci zarządzający dostarczani wraz z MIIS posiadają zaimplementowane mechanizmy zmiany haseł w przypadku gdy metoda zmiany hasła jest dobrze określona. W pozostałych przypadkach możliwe jest oprogramowanie takiego zdarzenia i dołączenia obsługi zmiany hasła poprzez odpowiednie rozszerzenie. W przypadku baz danych Oracle rozszerzenie takie może wywołać na przykład procedurę składowaną po stronie serwera Oracle zmieniającą hasło dla użytkownika. Schemat mechanizmu zmiany haseł. Page 12

LSASS MIIS Server Domain Controller PasswordFilter DLL PCNS Service Encrypted Password (Secure RPC) MIIS Kerberos Encrypted Password Encrypted Password Encrypted Password Encrypted Password Natve API Native API Secure Database Secure Database Użytkownk zmienia hasło System A System B Page 13

3 MIIS 2003 A SPRAWA PRODUKTÓW ORACLE Pośród systemów, z którymi możliwa jest integracja i synchronizacja danych z użyciem MIIS 2003, znajdują się też rozwiązania firmy Oracle. W chwili obecnej obsługiwane są następujące źródła danych: baza danych Oracle 8/9 - poprzez standardowo dostarczanego agenta zarządzającego lub agenta zbudowanego w oparciu o technologię Extensible MA i bibliotekę Oracle OleDB. Oracle Internet Directory - poprzez agenta zbudowanego w oparciu o technologię Extensible MA. Bazy danych Oracle oraz serwer LDAP Oracle Internet Directory są produktami, które najczęściej występują w rozmaitych scenariuszach projektów związanych z zarządzaniem tożsamością jako źródła danych. 3.1 Serwer baz danych Oracle jako źródło danych Najczęściej występującym scenariuszem występującym w projektach zarządzania tożsamością powiązanymi z produktami Oracle jest użycie bazy Oracle jako źródła danych o tożsamości użytkowników. W przypadku szerokiej gamy oprogramowania zarządzającego zasobami ludzkimi, finansowymi itp. baza danych Oracle jest podstawowym silnikiem bazodanowym. W rozwiązaniach tych często zabezpieczenia opierają się o definicję użytkowników w tabelach bazy danych, uprawnienia w tych aplikacjach również definiowane są poprzez wpisy w relacyjnej bazie danych. Przykładem tego typu systemu, który często występuje jako źródło danych o tożsamości, może być system kadrowy Teta, często spotykany w organizacjach na rynku polskim. Integracja z systemem zarządzania tożsamością w takim przypadku wymaga najczęściej przygotowania po stronie bazy danych Oracle struktury danych, która posłuży jako źródło informacji o obiektach. Struktura ta ma najczęściej postać widoku nałożonego na bazę danych, który pozwala na uniezależnienie źródła danych dla systemu zarządzania tożsamością od struktury tabel źródła danych. W zależności od wymagań systemu, w przypadku gdy system zarządzania tożsamością ma również aktualizować dane w bazie danych Oracle, widok \ tabela musi pozwalać na wprowadzenie tego typu aktualizacji do systemu. Standardowy agent zarządzający dla systemu Oracle operuje na trzech tabelach \ widokach po stronie źródła danych: Widoku podstawowym, który zawiera informacje o obiektach po stronie źródła danych. To podstawowe źródło informacji o obiektach, z którego dane odczytywane są w każdym pełnym cyklu importu danych do przestrzeni danych agenta zarządzającego. Widoku różnicowym, który zawiera strukturę identyczną jak widok podstawowy, rozszerzony jednak o definicje operacji, jaka została wykonana na obiekcie. W widoku tym powinny znajdować się tylko rekordy, które zostały zmodyfikowane od czasu ostatniego importu danych, opatrzone informacją, czy aktualizacja ta dotyczyła utworzenia, modyfikacji czy usunięcia obiektu. Widoku wielowartościowym, zawierającym strukturę danych, w której musi występować kolumna odpowiadająca identyfikatorowi obiektu z widoku podstawowego, połączona z odpowiednią strukturą danych pozwalającą na zbudowanie z niej wartości atrybutu wielowartościowego. Page 14

Głównym wyzwaniem przy tworzeniu rozwiązań opierających się na integracji z takimi źródłami danych staje się zazwyczaj zbudowanie odpowiedniej struktury danych podstawowych, zawierających odpowiedni zestaw informacji, a jednocześnie pozwalających te dane uaktualnić. Następnym wyzwaniem jest stworzenie mechanizmu generującego widok różnicowy danych, co nie zawsze udaje się wykonać. Ponieważ widok ten musi zawierać dane zmienione od ostatniej aktualizacji konieczne są mechanizmy zapewniające możliwość uzyskania tej informacji. Agenci zbudowani w oparciu o technologię Extensible MA, których też można użyć do połączenia z źródłami danych Oracle, pozwalają na pewną dowolność w tworzeniu struktury danych, ponieważ w trakcie implementacji tego typu agenta programista samodzielnie oprogramowuje metodę odczytu danych ze źródła, co pozwala na większą elastyczność. W przypadku standardowego agenta zarządzającego dla bazy danych Oracle, poprzez podłączenie odpowiedniego rozszerzenia, możliwe jest zarządzanie hasłami użytkowników w przyłączonej bazie danych. Implementacja tego mechanizmu zależy już od źródła danych, najczęściej jest to procedura składowana wywoływana po stronie serwera Oracle, uaktualniająca hasła dla wskazanego obiektu w bazie danych. W przypadku agentów tworzonych w oparciu o technologię Extensible MA ponownie istnieje dowolność implementacji metody zmiany hasła przez programistę. Komunikacja pomiędzy agentem zarządzającym a bazą danych realizowana jest poprzez bibliotekę Oracle OleDB. Przykład użycia W ramach systemu kadrowego Teta wystawiona zostaje struktura danych składająca się z: Widoku podstawowego zawierającego dane pracowników Tety Widoku wielowartościowego przeznaczonego na dane o adresach e-mail oraz telefonach użytkowników. Połączenie z bazą danych utworzone zostało w oparciu o standardowego agenta zarządzającego dla baz danych Oracle dostarczanego wraz z MIIS 2003. Użyta została biblioteka klienta Oracle Oracle OleDB w wersji 9.2.0.4. Widok podstawowy dostarcza informacji o pracownikach, ich dacie zatrudnienia, zwolnienia itp. Na podstawie tych danych tworzone są, a w trakcie cyklu życia również modyfikowane, konta użytkowników w Active Directory oraz skrzynki Exchange. Z Active Directory do metaverse przepływają następnie atrybuty takie jak e-mail i numer telefonu, które zapisywane są w cyklu synchronizacji w widoku wielowartościowym po stronie bazy danych Oracle. Przykład użycia W organizacji baza danych Oracle używana jest jako źródło danych dla aplikacji generującej raporty biznesowe. Uwierzytelnienie i autoryzacja oparta jest na użytkownikach bazy danych Oracle oraz przypisanych do użytkownika rolach serwera Oracle. W ramach rozwiązania należało stworzyć zautomatyzowany system tworzenia kont użytkowników i przypisania im odpowiednich ról na podstawie danych z systemu kadrowego. W ramach bazy danych Oracle utworzone zostały dwa widoki: Widok podstawowy dostarczający informacji o wszystkich kontach użytkowników zdefiniowanych w ramach bazy danych Page 15

Widok podstawowy dostarczający informacji o rolach przypisanych poszczególnym użytkownikom. Ponieważ w ramach standardowego agenta zarządzającego dostarczanego z MIIS 2003 nie ma możliwości wykonania operacji tworzenia użytkownika w bazie danych, zastosowany został (stworzony w ramach MCS) agent zarządzający, komunikujący się z bazą danych poprzez bibliotekę Oracle OleDB. W ramach MIIS 2003 utworzone zostały dwie osobne instancje agentów zarządzających: agent zarządzający kontami użytkowników agent zarządzający rolami przypisanymi użytkownikom. W ramach rozwiązania zastosowane zostały dwie dodatkowe instancje standardowych agentów zarządzających MS SQL w celach raportowania: do zewnętrznej bazy danych informacji o założonych kontach użytkowników oraz przypisanych im rolach. do zewnętrznej bazy danych informacji o błędach i konfliktach, które wystąpiły w trakcie zakładania kont użytkowników. W wyniku zastosowanego rozwiązania zautomatyzowany został proces tworzenia kont użytkowników w ramach bazy danych Oracle oraz proces przyznawania im odpowiednich ról. Odpowiedni zestaw ról przypisywany jest użytkownikowi na podstawie danych pochodzących z systemu kadrowego organizacji. Efektem dodatkowym zastosowanego mechanizmu jest wymuszenie odpowiedniego zestawu ról dla użytkowników. Zmodyfikowanie ról użytkownika po stronie serwera Oracle (na przykład ręczne dodanie roli użytkownikowi przez administratora) wywołuje w trakcie następnej synchronizacji danych akcje powodujące wymuszenie stanu ról przypisanych użytkownikowi w bazie źródłowej. Wprowadza to dodatkowy element zabezpieczeń przed nadaniem użytkownikowi nadmiarowych uprawnień przez administratorów systemu. Schemat logiczny procesu synchronizacji Page 16

Start Wyznacz stan administracyjny Czy użytkownik o takiej nazwie istnieje w bazie Oracle? Tak Utwórz nowy konektor z informacją o błędzie w przestrzeni agenta Event collector. Nie Utwórz nowy konektor w przestrzeni agenta zarządzającego użytkownikami Tak Czy istnieją wpisy o błędach powiązane z tym kontem? Nie Usuń powiązane konektory z przestrzeni agenta Event Collector. Utwórz nowy konektor w przestrzeni agenta danych wynikowych. Czy konto jest aktywne? Tak Nie Utwórz konektory dla ról przypisanych użytkownikowi w przestrzeni agenta zarządzającego rolami. Koniec Page 17

4 MATERIAŁY ŹRÓDŁOWE 1. Microsoft Identity Integration Server 2003 Technical Reference (http://www.microsoft.com/downloads/details.aspx?familyid=d7894cc9-eeeb-40d9-8f5f- 573050624f67&displaylang=en) 2. Microsoft Identity and Access Management Series (http://www.microsoft.com/technet/security/topics/identitymanagement/idmanage/default.mspx) 3. Architecture patterns for Enterprise Identity Management with MIIS (http://www.navit.co.za/idm.htm) 4. Microsoft Identity Information Server 2003 (http://www.microsoft.com/windowsserversystem/miis2003/default.mspx) 5. Overview of Active Directory Federation Services (ADFS) in Windows Server 2003 R2 (http://www.microsoft.com/windowsserver2003/r2/identity_management/adfswhitepaper.mspx) 6. TechNET: Active Directory Federation Services (http://technet2.microsoft.com/windowsserver/en/technologies/featured/adfs/default.mspx) 7. MSDN: Advanced Web Services (http://msdn.microsoft.com/webservices/webservices/understanding/advancedwebservices/default. aspx) 8. Vintela Single Sign-On for Java (http://www.vintela.com/products/vsj/) 9. Centrify directcontrol (http://www.centrify.com/directcontrol/) Page 18