Benutzermanagement in heterogenen Umgebungen Jörg Schanko Technologieberater Forschung & Lehre Microsoft Deutschland GmbH
Agenda Ziele der Microsoft Metadirectory Services Die Architektur Beispielszenarien Weitere Entwicklung
Warum Metadirectory? Jedes Unternehmen pflegt in der Regel mehrere Verzeichnisse mit gleichen oder ähnlichen Informationen Personalverzeichnis Email-Verzeichnis Telefonverzeichnis Benutzerverzeichnisse für unterschiedliche Betriebssysteme …
Probleme Daten müssen mehrfach gepflegt werden Die Qualität der Daten ist nicht immer sichergestellt Doppelte Einträge Falsche oder unvollständige Informationen Keine einheitliche Sicht auf alle relevanten Informationen Hohe Administrationskosten
Ziele der Microsoft Metadirectory Services Erstellen und verwalten einer “Identität” für jeden Benutzer (Objekt) Wer ist wer in welchem Verzeichnis Daten zusammenführen Management von Veränderungen Management der Datenintegrität Abbildung automatisierter Prozesse Hire-Fire Szenarien Zentrales Passwort-Management
Ziele der Microsoft Metadirectory Services Verbessern der Datenqualität Vereinfachung des Zugriffs Senkung der Administrationskosten Kein Ziel der Metadirectory Services : Single-Sign-On
Metadirectory Konzepte iPlanet Oracle SQL Exchange 5.5 Connected Directories Metaverse User Connector Space Connected Directory Quelle und / oder Ziel der zu synchronisierenden Objekte und Attribute Connector Space (CS) “Staging area” für ein- und ausgehende Daten Metaverse (MV) Zentraler Speicher der Identitäts-informationen
Zusammenführen “Join” Sam Davis Synchronization Identity Management SD Sam sdavis Davis SD Sam sdavis Sam Davis Davis SD Sam sdavis
1. Herstellen der Identität Directory Service Sfine Logon name Phone # E-mail Suzanf E-mail alias Mailbox HR Database Suzan Fine Title Employee # Metadirectory MMS erstellt eine Identität durch: Kombination von Informationen aus verschiedenen Verzeichnissen Präsentation einer Ansicht auf alle relevanten Objektdaten Zentrale Informations- und Administrations- schnittstelle
2. Wahren der Identität MMS wahrt die Identität durch: E-mail Directory Susan Fine E-mail alias HR Database Suzan Fine Title Service Sue Fine Logon name Metadirectory MMS wahrt die Identität durch: Durchreichen von Identitätsinformationen zwischen Verzeichnissen Synchronisation dieser Daten zwischen Verzeichnissen Erstellen von Regeln und Authoritäten Suzan Fine Suzan Fine
3. Abbilden von Geschäftsregeln ‘Add User’ Add User Provision Create Mailbox Add User Grant Rights Add User Event SAP, Baan Applications HR App Database Active Directory / Application Mode (AD/AM) Database RAS QoS MMS E-Mail Windows 2000 Geschäftsregeln Transformation Daten Integrität Directory AD Zentrale Administration durch automatisierte Geschäftsregeln
Die Architektur (how it works)
Architektur MMS läuft als NT service Management Agents (MA) verbinden die Systeme Metadirectory Daten werden im SQL Server gehalten Admin-Client verbindet sich via DCOM MMS Admin Client MMS Store MA Controller iPlanet MA AD Oracle … MMS Service DCOM iPlanet AD/E2K Oracle
Die Rolle der Management Agents Bewegen der Daten von und nach MMS Verbínden der Verzeichnisse mit MMS Synchronisieren der Daten zwischen Verzeichnissen Synchronisation der Verzeichnis-Objekte Synchronisation der Objekt-Attribute Steuerung der MAs über Konfigurationsdaten und Erweiterung durch beliebige .NET Programmier-sprache MMS stellt vordefinierte MAs für gängige Verzeichnisse zur Verfügung
Geplante Management Agents (RTM) AD/Exchange 2000 ADAM iPlanet SQL Oracle DSML 2.0 LDAP Directory Interchange Format (LDIF) Delimited Text Fixed-Width Text Attribute-Value Pair Text NT4 Exchange 5.5 Lotus Notes Novell eDirectory
Geplante Management Agents Web-Release Simple XML Critical Path IBM DB/2 Windows PKI MMS 3.1 OpenLDAP DirX SecureWay Access Sybase Informix GAL Sync V2.0 Management Agent SDK
Vorgehensweise Verbinden der Objekte Festlegen des Attribut-Flusses Erweiterung der Regeln / Automatisierung
Verbinden der Objekte (Join)
Der MMS „Joiner“
“Joins” verbinden die Objekte im Connected Directory mit der Metaverse Attributfluß “Joins” verbinden die Objekte im Connected Directory mit der Metaverse Metaverse Namespace Connector Namespace Connector Namespace Join James Smith Title Employee # E-mail Address Join Jamessmith Title Employee # Jasmith Title E-mail Address Flußregeln legen fest, wie sich Attributwerte “bewegen” James Smith Title Employee # E-mail Address Jamessmith Jasmith
Attributfluß festlegen
Extension Model Erweiterungen (Extensions) ermöglichen es, die Arbeitsweise von MMS zu steuern MMS ruft die Erweiterungsfunktionen als Reaktion auf interne Ereignisse auf Das Modell definiert ein “Managed Interface” Konfigurationseinstellungen im UI legen fest, welche Funktionen aufgerufen werden Erweiterungen sind managed Code und können in einer beliebigen Programmier-sprache für die CLR erstellt werden MMS generiert automatisch Visual Studio Projekte in VB oder C#
Extension Model MVEntry CSEntry Connector Metaverse Space MVEntry Access attributes mventry[“displayName”].Value Get an MA mventry.ConnectedMAs[“ADMA”] Add a connector mventry.ConnectedMAs[“ADMA”]. Connectors.StartNewConnector() CSEntry Access attributes csentry[“displayName”].Value See how connected csentry.ConnectionRule
Extension Model For management agents void MapAttributesForImport() void MapAttributesForExport () void MapAttributesForJoin () DeprovisionAction Deprovision () void IMASynchronization.MapAttributesForImport( string FlowRuleName, CSEntry csentry, MVEntry mventry) { switch (FlowRuleName) { case "cd.person:GivenName,Surname->mv.person:displayName": mventry[“displayName”].Value = csentry[“GivenName”].Value + “ “ + csentry[“Surname”].Value; break; … }
Extension Model For provisioning void Provision () bool ShouldDeleteFromMV () void IMVSynchronization.Provision (MVEntry mventry) { ConnectedMA adamMa = mventry.ConnectedMAs[“ADAM”]; if (adamMa.Connectors.Count == 0) { string rdn = "CN=" + mventry["cn"].Value; try { ReferenceValue dn = adamMa.EscapeDNComponent(rdn).Concat("OU=users,O=mms"); CSEntry adamCsEntry = adamMa.Connectors.StartNewConnector("user"); adamCsEntry.DN = dn; adamCsEntry.CommitNewConnector(); } catch (ObjectAlreadyExistsException) { }
Beispielszenarien
AD Interforest Synchronisation
Klassisches Metadirectory AD/E2K Identity Management Verbindung zu mehreren Datenquellen Sichern der Datenintegrität Attribute-level control Kostenreduktion GAL Management VL/Gruppen Management Helpdesk Password reset User self-service iPlanet Exchange 5.5 MMS Notes SQL Oracle
Provisioning HR-Datenbank Active Directory Active Ereigniss Directory Resource Ereigniss Claims Flore Sales Trent MoneyDept HR-Datenbank Claims Flore Sales Trent MoneyDept Connector Namespace Marketing Flore Trent Recipients Used Cars Active Directory Account Profile neues Objekt Metaverse Namespace
Password Management Initiales setzen von Passworten Kernfunktionalität Natives MMS Password Management Web-basierende Beispielanwendungen für HelpDesk und Self-Service NT Helpdesk App AD WMI MMS iPlanet Self-serve App Notes
Provisioning/Workflow Einfaches Provisioning/Deprovisioning Erstellen von neuen Konten in angeschlossenen Verzeichnissen, ausgehend vom führenden Verzeichnis Setzen der initialen Werte aller Attribute (incl. Password) Löschen oder deaktivieren von Konten, ausgehend vom fühenden Verzeichnis Komplexer Workflow Anstossen externer Systeme (ex: BizTalk Orchestration) für asynchronen oder komplexen Workflow SPML Unterstützung geplant Integration mit Business Layers, WaveSet, Access360, etc.
Visualisierung Für unterschiedliche Anwendungsgebiete werden verschiedene Hierarchien benötigt Die Informationen über die Hierarchien sind in den Objektattributen enthalten Polyarchy eliminiert den Bedarf für eine fest vorgegebene Hierarchie Polyarchy stellt mehrfache hierarchische Ansichten zur Verfügung und bietet so beliebige Ansichten auf Infrastruktur-Informationen
Polyarchy
MA scalability testing ADMA 2 million objects (import/export). Tested 10K group members (import and export). iPlanet 2 iPlanet MAs X 4,250,000 objects/MA tests underway 2,000,000 objects project 250,000 object joins 2,000,000 objects provisioned out
MA scalability testing Exchange 5.5 1,500,000 objects imported 1,000,000 objects exported (provisioned out) ADAM (pre-release) 250,000 import (RTM goal: 1,000,000) 250,000 exports (RTM goal: 1,000,000)
MA scalability testing XML MA Imported 2,000,000 for FW Imported 1,000,000 for CSV (5,000,000 by RTM) Imported 1,000,000 for LDIF, AVP Exported 1,000,000 for FW, CSV, LDIF, AVP Will do 1,000,000 for DSML by RTM NT4 MA Import: 100,000 user, 60,000 groups (membership up to 1000) Export: 100,000 (by RTM)
MA scalability testing SQL MA 2,000,000 export/import for RTM Oracle MA
Rules testing – RTM goals Connector count for an MV object – 1000 Attribute precedence – 1000 Join candidates – 500 Join attribute mapping elements – 50 Projection, class mappings – 100 Provision from 1 MV object – 1000 Per object deltas during a run – 10000 (via flat files)
Other MAs count – 1000 GAL Sync MAs – 30 (dataset: 10,000 master objects/forest) Password Set/Change – 500,000 per MA type without restarting the server.
Zusammenfassung Microsoft Metadirectory Services (MMS) bietet… Eine Plattform für Identitäts-Management, incl. Implementation von Geschäftsregeln, Management von Globalen Adresslisten (GAL), Verteilerlisten (DL) und Kennworten, sowie Visualisierung von Infrastruktur-Informationen Eine flexible Synchronisations-Engine für Infrastrukturdaten zwischen mehreren, heterogenen Systemen
Zusammenfassung MMS 3.0 ist eine vollständige Lösung, die es Ihnen erlaubt: Einfach auf ein Verzeichnis zuzugreifen Eine Sicht auf mehrere Verzeichnisse zu haben Administrationskosten zu vermeiden, die durch doppelte, falsche oder unvollständige Verzeichnisdaten entstehen Die Qualität und Integrität von Verzeichnisdaten zu steigern, die Ihre Geschäftsprozesse definieren Geschäftsprozesse für die Benutzerverwaltung zu automatisieren
Zeitplan MMS 2003 (V 3.0) MMS 3.1 “Fairbanks” Polyarchy JDP Release 8 May JDP Refresh 28 June Beta Release 25 September Release Candidate 26 February Downloadable for MSDN Universal customers RTM .NET Server + 90 days MMS 3.1 “Fairbanks” RTM Q2/Q3 2004 Polyarchy Technology Preview in MMS 2003 Final Release in MMS “Fairbanks” We are here!
Pricing/Availability current plan - subject to change MMS “Standard” Kostenloser Download über Internet AD und AD/AM nur Management Agents, adressiert Multi-Forest Szenarien MMS “Enterprise” “Volume” channel: Open and Select Alle Management Agents + Polyarchy Listenpreis € 25K per CPU (Academia € 7k)
Resources With the product Outside the product Whitepaper walk-throughs für die Szenarien: “Classic” Metadirectory, Simple Provisioning, Multi-forest AD, Group/DL Management und Password Set/Reset CD-basierter MMS Planning and Deployment Workshop Outside the product http://www.microsoft.com/mms In 2003: Microsoft Official Curriculum (MOC) courseware Unterstützung bei Planung und Implementierung durch Microsoft Consulting Services (MCS) und 45 zertifizierte Partner Peer-to-peer User Group (MMSUG) http://groups.yahoo.com/group/MMSUG/ Regelmässige Meetings (nächster Termin 5./6. Juni in Reading/UK) Kick-Off Workshop (nur Academia) 1-3 tägiger kostenloser Workshop zur Implentierung von MMS2003 Bei Interesse mailto:joergsc@microsoft.com
© 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.