Microsoft Identity Integration Server 2003 (MIIS) Robert Hernady Senior Systems Engineer Microsoft
Adresářová strategie Aplikacevyužívajícíadresář HR/ERP apl. Centralizovaná správa správaidentity Databáze MIIS 2003 Správa identity Apl. adr. ADAM UDDI Web služby Adresář infrastruktury ActiveDirectory Aplikacevyužívajícíadresář Apl. adr. ADAM Aplikacevyužívajícíadresář Další adr.služby přístup synchronizace Původníaplikace DB
Správa životního cyklu Automatizace s využitím Microsoft Identity Integration Serveru (MIIS) Propojení identit z různých zdrojů a vytvoření jednotného konzistentního pohledu Přidávání/mazání na základě pravidel Automatizace procesu „Nástupu/Odchodu“ Využití BizTalk serveru pro komplexní workflow scénáře Správa skupin Členství ve skupinách v různých adresářích založeno na definovaných pravidlech Využití distribučních seznamů a bezpečnostních skupin
Scénáře Scénář nástupu do zaměstnání Scénář odchodu ze zaměstnání Scénář propojení identity Agregace dat o identitě Konvergence dat o identitě Vynucená integrita dat o identitě
Scénář nástupu do zaměstnání HRSystem Metadirectory Notes ContractorSystem AD App Mode SQLServer iPlanetDirectory ActiveDirectory LotusNotes Soubor LDAP SQL LDAP
Scénář odchodu ze zaměstnání HRSystem Metadirectory Notes ContractorSystem AD App Mode SQLServer iPlanetDirectory ActiveDirectory LotusNotes Soubor LDAP SQL LDAP
Scénář propojení identity HRSystem Metadirectory iPlanetDirectory ActiveDirectory LotusNotes givenName sn title mail employeeID telefon Klarek Cenntt 008 givenName sn title mail employeeID telefon givenName sn title mail employeeID telefon Clark Kennttt 007 givenName sn title mail employeeID telefon Klarke Kent Reportér Clark Kent 007 Reportér Clark Kent Superman 007 Projekce do Metaverse givenName sn title mail employeeID telefon Clark Kent 007 Propojení podle employeeID Propojení 007 Propojení podle employeeID Propojení Propojení podle employeeID Propojení Ruční propojení
Scénář toku atributů HRSystem Metadirectory iPlanetDirectory ActiveDirectory LotusNotes Title telefon givenName sn title mail employeeID telefon Klarek Cenntt 008 givenName sn title mail employeeID telefon givenName sn title mail employeeID telefon Clark Kennttt 007 givenName sn title mail employeeID telefon Klarke Kent Reportér 007 givenName sn title mail employeeID telefon Clark Kent 007 Reportér Clark Kent Superman 007 Agregace dat o identitě givenName sn title mail employeeID telefon Clark Kent 007 Reportér Jméno Příjmení EmployeeID
Scénář toku atributů HRSystem Metadirectory iPlanetDirectory ActiveDirectory LotusNotes Jméno Příjmení EmployeeID Title telefon givenName sn title mail employeeID telefon Klarek Cenntt 007 givenName sn title mail employeeID telefon givenName sn title mail employeeID telefon Clark Kennttt 007 givenName sn title mail employeeID telefon Klarke Kent Reportér 007 givenName sn title mail employeeID telefon Clark Kent 007 Reportér Clark Kent Superman 007 Clark Kent Reportér Reportér Clark Kent Clark Reportér Konvergence dat o identitě
Scénář toku atributů HRSystem Metadirectory iPlanetDirectory ActiveDirectory LotusNotes Title telefon givenName sn title mail employeeID telefon 007 givenName sn title mail employeeID telefon givenName sn title mail employeeID telefon Clark 007 givenName sn title mail employeeID telefon Kent 007 givenName sn title mail employeeID telefon Clark Kent Clark Kent Superman 007 Kent Reportér Reportér Clark Kent Clark Reportér Vynucená integrita dat o identitě 007 Superman ReportérSuperman Jméno Příjmení EmployeeID
Koncept Metadirectory Připojené adresáře Zdroj a/nebo cíl pro synchronizované atributy Connector Space (CS) Prostor pro ukládání příchozích a odchozích atributů, které se synchronizují Metaverse (MV) Centrální (SQL) úložiště pro informace o digitální identitě Propojení CS entit do jednoho prvku v MV se nazývá „join“ iPlanetiPlanet OracleOracle SQLSQL Exchange5.5Exchange5.5 Připojenéadresáře Metaverse User ConnectorSpace
Systém řízený Stavem nebo Událostí Stavem řízené systémy jsou robustnější Ukládání informací o stavu znamená, že systém ví co lze očekávat od připojeného systému Systém může reagovat na situace jestliže je něco špatně Událostí řízené systémy mohou rychleji reagovat Události jsou spouštěny na základě změn v systémech, ale… …události se mohou ztratit MIIS poskytuje to nejlepší z obou Na stavech založený přístup umožňuje pesimistický pohled na připojené systémy (uptime/připojení) Architektura umožňuje vysokou flexibilitu Spouštění může být řízeno plánem, událostí přes WMI apod. Systém může provádět změny pouze v připojených systémech Microsoft OTG provádí spouštění za den
MIIS 2003
Taking apart the demo Metaverse Designer Modifying the Metaverse schema Controlling de-provisioning with Object Deletion Rules Creating Management Agents ConnectingFilters Join and Projection Attribute flow Extensions Project generation Management Agent extensions for attribute manipulation Metaverse extensions for provisioning Execution Run profiles Controlling execution with WMI
Konektory MIIS AD/Exchange 2000/Exchange 2003 ADAM SunOne Directory (iPlanet) SQLOracle DSML 2.0 LDAP Directory Interchange Format (LDIF) Delimited Text Fixed-Width Text Attribute-Value Pair Text NT4 Exchange 5.5 Lotus Notes 4.6 and 5.0 Novell eDirectory 8.62/8.7 Budou následovat další pro ostatní systémy LDAP a RDBMS
Správa hesel 1. Úvodní nastavení hesla Základní funkce Základní funkce 2. Centrální řízení hesel Založené na webové rozšiřitelné aplikaci pro tvorbu aplikací na změnu hesel Založené na webové rozšiřitelné aplikaci pro tvorbu aplikací na změnu hesel WebAppWebApp MIISMIIS iPlanetiPlanet ADAD WMI
Správa hesel
Provisioning/Workflow (Nástup/Odchod) Jednoduchý Provisioning/De-provisioning Jednoduchý Provisioning/De-provisioning Vytvoření účtů v případě, že se nový uživatel objeví v autoritativních systémech Vytvoření účtů v případě, že se nový uživatel objeví v autoritativních systémech Nastavení výchozích hodnot atributů (vč. hesla) Nastavení výchozích hodnot atributů (vč. hesla) Povolení, zakázání nebo smazání účtů na základě změn v autoritativních systémech Povolení, zakázání nebo smazání účtů na základě změn v autoritativních systémech Přesun účtů Přesun účtů Resetování hesel Resetování hesel Workflow na jeden krok Workflow na jeden krok Složitější workflow ve spojení s BizTalk serverem Složitější workflow ve spojení s BizTalk serverem
Provisioning/Workflow Správa distribučních listů (DL) Správa a vytváření Skupin/DL MIIS 2003 poskytuje plnou podporu pro vytváření skupin/DL Může automaticky generovat a spravovat skupiny založené na atributech uložených v Metadirectory (např. manažer, pracovní role, pracovní skupina atd.) Udržuje skupiny synchronizovány tak jak probíhají změny v různých připojených systémech Může distribuovat skupiny ovládané ostatními systémy
Model extenzí Extenze umožňují modifikovat chování MIIS MIIS volá metody rozhraní na základě změn v systému Model definuje spravovatelné rozhraní Konfigurační sady v UI určují, které metody se budou volat Vytváření uživatelských extenzí v libovolném programovacím jazyku pro CLR překladač Visual Studio projekty automaticky generují VB nebo C#
Model Extenzí MVEntry Access attributes mventry[“displayName”].Value Get an MAmventry.ConnectedMAs[“ADMA”] Add a connector mventry.ConnectedMAs[“ADMA”]. Connectors.StartNewConnector()CSEntry Access attributescsentry[“displayName”].Value See how connectedcsentry.ConnectionRule Metaverse ConnectorSpace MVEntryCSEntry
Vizualizace
Vizualizace
Vizualizace
MIIS 2003
Shrnutí Microsoft Identity Integration Server (MIIS) poskytuje… platformu pro správu digitální identity, včetně implementace obchodních pravidel, správa centrálních adresářových seznamů (GAL), distribučních seznamů (DL), hesel a poskytuje vizualizace spravovaných dat. flexibilní nástroj pro synchronizaci infrastrukturních data mezi různými heterogenními systémy
© 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Scenarios for MIIS “Classic” Metadirectory Synchronization of attributes from multiple systems Multiple LDAP directories: AD, ADAM, iPlanet Multiple systems: Exchange (5.5, 2000, Ti), Notes HR Systems: SAP, PeopleSoft, Oracle HR Legacy Systems (Mainframe, Unix, etc.): File Exchange, XML Customer benefits Lowered administrative cost Increased productivity (from greater data fidelity and leveraging investments in infrastructure) scenarios Building a Global Address List Span multiple Exchange forests, multiple systems Automatic Group Management Customer benefits Lowered administrative costs/Increased self-service Improved (more reliable) cross-company communication
Scenarios for MIIS Multi-forest Active Directory Site, Subnet, Printer, RTC Synchronization Customer benefits Improved cross-group/cross-divisional collaboration Automated Provisioning (Hire/Fire) Automatically create or disable/delete accounts/mailboxes Customer benefits Lowered administrative cost Higher productivity (quicker account creation) Increased security (automatic account deletion/disabling) Password Management Set initial passwords, find/change multiple passwords simultaneously Customer benefits Reduced help-desk expense, increased end-user self-service
Attribute Flow Management Agent Entry Points void MapAttributesForImport() void MapAttributesForExport () void MapAttributesForJoin () DeprovisionAction Deprovision () CSEntry csentry; // Passed to MapAttributesForImport() MVEntry mventry; // Passed to MapAttributesForImport() csentry["Full Name"].Value mventry["displayName"].Value
Provisioning Metaverse Entry Points void Provision () bool ShouldDeleteFromMV () MVEntry mventry // Passed in to Provision() string rdn = null; string container = null;// OU ReferenceValue dn = null; ConnectedMA adamMa = null; CSEntry adamCsEntry = null; adamMa = mventry.ConnectedMAs["ChuckC ADAM"]; adamCsEntry = adamMa.Connectors.StartNewConnector ("iNetOrgPerson"); rdn = "CN=" + mailNickname; dn = adamMa.EscapeDNComponent(rdn).Concat(container); adamCsEntry.DN = dn; adamCsEntry.CommitNewConnector();
WMI Run Control ManagementScope myScope = new ); SelectQuery myQuery = new SelectQuery( "MIIS_ManagementAgent", "GUID='{D6022FC8-E BDC3-71D84D2BED11}'" );// or SelectQuery myQuery = new SelectQuery( "MIIS_ManagementAgent", "Name='ChuckC HR'" ); ManagementObjectSearcher searcher = new ManagementObjectSearcher( myScope, myQuery ); foreach ( ManagementObject ma in searcher.Get() ) { Console.WriteLine( "ChuckC HR.Execute( \"Delta Import\" )..." ); ma.InvokeMethod( "Execute", new object[1] { "Delta Import" } ); }
WMI Results ManagementScope myScope = new SelectQuery myQuery = new SelectQuery("MIIS_RunHistory"); searcher = new ManagementObjectSearcher(myScope, myQuery); foreach ( ManagementObject ma in searcher.Get() ) { Console.WriteLine( ma[“MaName"] ); Console.WriteLine( ma["RunProfile"] ); Console.WriteLine( “Start “ + ma["RunStartTime"] ); Console.WriteLine( “End “ + ma["RunEndTime"] ); } MIIS Team Whitepages Export and Confirm Start :09: End :09:47.930