identity management an der universität mainz carsten allendörfer zentrum für datenverarbeitung...
Post on 05-Apr-2015
119 Views
Preview:
TRANSCRIPT
Identity Management an der Universität Mainz
Carsten Allendörfer
Zentrum für Datenverarbeitung
Johannes Gutenberg-Universität Mainz
März 20042 C. Allendörfer, ZDV Uni-Mainz
Inhalt
• Rückblick– Alte Benutzerverwaltung von NT4/Unix/Oracle– Probleme, Wunschvorstellung
• Active Directory Benutzerverwaltung– Unixintegration
• Metadirectory• für was?
• Demos
März 20043 C. Allendörfer, ZDV Uni-Mainz
Alte Benutzerverwaltung
• Eingesetzt für NT4, Unix (yp)
– implementiert als WWW-Seite mit Daten in Oracle-DB
– alle Aktionen werden im Moment der Eingabe in die Datenbank sofort auf NT4 und im YP durchgeführt
– Passwortsynchronisierung über WWW-Seite
– Push-Verfahren
März 20044 C. Allendörfer, ZDV Uni-Mainz
Probleme der alten BV
• Push-Verfahren
• Rollback von Transaktionen
• Probleme bei Ausfall eines der Systeme
• keine Delegationsmöglichkeit !
• Passwortsynchronisierung unzuverlässig, umständlich für die Benutzer
März 20045 C. Allendörfer, ZDV Uni-Mainz
Wunschvorstellung
• Nur ein zentrales Verzeichnis
• Alle „Systeme“ gleichen regelmäßig den Ist-Zustand mit dem Soll-Zustand ab und passen sich entsprechend an.
• Nicht umsetzbar !
– NetApp Homedirs
– Abgleich teilweise nicht möglich (Rename)
März 20046 C. Allendörfer, ZDV Uni-Mainz
Active Directory BV
• Anforderungen:
– Alle Daten sollen nur an einer Stelle gespeichert und verwaltet werden.
– Passwort nur an einer Stelle gespeichert
– Delegation von einzelnen Aufgaben an FB oder Institute soll möglich sein.
• Folgerungen:
– Kerberos muss von allen Systemen genutzt werden.
– LDAP nutzen - falls möglich, sonst Export.
März 20047 C. Allendörfer, ZDV Uni-Mainz
Problem: Delegation
• Beispiel: FB-Admin hat folgende Rechte:– CCDC User (Create)– RPWP firstname, lastname, title (read/write
property)– Attribute sAMAccountName, uidnumber, mail
werden automatisch ausgefüllt
• FB-Admin legt Benutzeraccount an.• Einstellung erlaubt nur die Änderung der
delegierten Attribute• aber: Änderung der ACL ist möglich, damit auch
die Änderung von allen Attributen.
März 20048 C. Allendörfer, ZDV Uni-Mainz
Lösung: Delegation
• CreateObjectService, Aufgaben:– Umwandlung von Objekten vom Typ
RequestNewUser, RequestNewGroup, RequestNewOU in User, Group, bzw. OU
– RequestObjekte haben nur wenige Attribute wie Name, Vorname, Accountname.
– Syntaxprüfung vor Einrichtung des eigentlichen Objekts.
– Serialisierung– Delegierte Rechte an User, Group und OU
können nicht überschritten werden– Protokollierung
März 20049 C. Allendörfer, ZDV Uni-Mainz
Lösung: Delegation
• Nachteil:
– Quotas im AD (ab Windows 2003) können nicht genutzt werden, dadurch DoS-Angriff möglich.
– falls notwendig, dann eigene Verwaltung in CreateObjectService
März 200410 C. Allendörfer, ZDV Uni-Mainz
Komponenten der ADBV
• Request Objekte– bearbeitet von RequestNewObject
• Request(User/Group/OU)-* Attribute– werden vom Dispatcher in Startwerte für
Workflows umgewandelt– teils für OU Admins schreibbar
• ADBV-* Dienste, die Einzelschritte der Benutzerverwaltung implementieren, z.B.– User sperren– Mailaccount anlegen
März 200411 C. Allendörfer, ZDV Uni-Mainz
ADBV Workflow Beispiel 1
• UserMARequestFull
– ADBVUserSyntaxCheck
– ADBVUserDisable
– ADBVUserMailWinCreate
– ADBVUserUIDCreate
– ADBVUserPrintAccountCreate
– ADBVUserHomeDirCreate
– ADBVUserProfileCreate
– ADBVUserEnable
März 200412 C. Allendörfer, ZDV Uni-Mainz
ADBV Workflow Beispiel 2
• UserLDRequestFull
– ADBVUserSyntaxCheck
– ADBVUserDisable
– ADBVUserUIDCreate
– ADBVUserPrintAccountCreate
– ADBVUserEnable
März 200413 C. Allendörfer, ZDV Uni-Mainz
ADBV UseranlegenRequestRequestNewUserNewUser Active Directory
Uni-Mainz.DEanlegen
suchenRequest
Dis-Dis-patcherpatcher
CreateCreateObjectObjectServiceService
UserReq. del
Sucht User mitRequestFullUserSetzt Workflowauf 31000
UIDUIDCreateCreate
SyntaxSyntaxCheckCheck
EnableEnable
DisableDisable
PrintPrintAccountAccountCreateCreate
Sucht 11000, 21000, 31000Findet 31000
Setzt Workflowauf 31010
Sucht 11010, 21010, 31010Findet 31010
Setzt Workflowauf 31020
Sucht 11020, 31020
Findet 31020
Setzt Workflowauf 31030
Sucht 21030, 31030
Findet 31030
Setzt Workflowauf 31040
Sucht 11040, 21040, 31040Findet 31040
Setzt Workflowauf 31050
Sucht 11080, 21090, 31050Findet 31050
LöschtWorkflow
Request
User
März 200414 C. Allendörfer, ZDV Uni-Mainz
ADBV-Dienste
• Jeder Service liest seine Konfiguration aus dem AD aus – teils global, teils von OU abhängig.
• 4 Accounttypen:– Mitarbeiter– Studierender– Nur Login– Nur Login und Druckkonto
• Workflows für Gruppen und OUs
• Erweiterung sehr einfach im laufenden Betrieb möglich
März 200415 C. Allendörfer, ZDV Uni-Mainz
Datenimport
• Studierende:
– Abgleich über Textdatei
– werden zunächst normale Accounts, bei Freischaltung wird ADBVRequestFull gesetzt
• Mitarbeiteracconts
– Antrag über WWW-Formular, erzeugt RequestObject, das nicht umgewandelt wird
– Umwandlung kann durch ZDV oder OU Admin gestartet werden.
März 200416 C. Allendörfer, ZDV Uni-Mainz
Unixintegration
• YP Tabellen werden durch Export aus AD erzeugt.
• Solaris kann AD (aLDAP/Krb5) statt YP nutzen
• MIT Kerberos zur Authentisierung
– Heimdal inzwischen auch
• Probleme bei Windows 2003 Umstellung
– UDP/TCP
• für NFSv4 auch Tickets unter Unix notwendig
– Problem: Computeraccounts
März 200417 C. Allendörfer, ZDV Uni-Mainz
Metadirectory
• ADBV kann alle Delegations- und Administrationsaufgaben erfüllen
• Zusatznutzen:
– Synchronisierung mit nicht LDAP-aware Applikationen
– Synchronisierung von Teildaten zu FB Datenbanken
• MetaDirectory kann mit bestehender ABDV zusammenarbeiten
• Tests Anfang 2003, MIIS Ende 2003 gekauft.
März 200418 C. Allendörfer, ZDV Uni-Mainz
MIIS Konzept (MS)
• Connected Data Source (CD)– Any source and/or destination containing identity data
• Management Agent (MA)– Facilitates the communication between MIIS and the CD
• Connector Space (CS)– Staging area for inbound or outbound synchronized attributes
• Metaverse (MV)– Central (SQL) store of identity information– Matching CS entries to a single MV entry is called “join”
CDCD
MIISMIIS
CSCS
MVMV
MAMA
März 200419 C. Allendörfer, ZDV Uni-Mainz
Metadirectory Konzept
• Eigene Ergänzungen:
– keine Hierarchie
März 200420 C. Allendörfer, ZDV Uni-Mainz
Metadirectory Connectors
• Active Directory 2000/2003 • Exchange 2000/2003• ADAM• SunOne Directory (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 4.6 and 5.0• Novell eDirectory 8.62/8.7
März 200421 C. Allendörfer, ZDV Uni-Mainz
Metadirectory Connectors
• Updates in 2004:
– IBM DB2 MA• OS/390, AS/400, NT, Unix
– IBM Directory Server
– Corporate MA Development Kit
– Simple XML
– Generic LDAPv3 MA Kit
März 200422 C. Allendörfer, ZDV Uni-Mainz
State- vs. Event- based (MS)
• State-based systems are more robust– Storing state information means the system knows
what to expect on the connected system– The system can respond if things go wrong
• Event-based systems can be quicker to respond– Events fire in response to changes in systems, but…– …events can get lost
• MIIS provides the “best of both”– Our state based approach allows us to take a
pessimistic view of connected system uptime/connectivity
– Our architecture allows high flexibility• Runs can be controlled via schedules, events via WMI, etc.• System can process only changes in the connected systems• Microsoft OTG runs 1500-2000 runs per day
März 200425 C. Allendörfer, ZDV Uni-Mainz
Scenarios (MS)
• Hire Scenario
• Fire Scenario
• Join Scenario
• Identity Data Aggregation
• Identity Data Brokering (Identity Convergence)
• Identity Data Integrity Enforcement
März 200432 C. Allendörfer, ZDV Uni-Mainz
Polyarchy (MS)
März 200433 C. Allendörfer, ZDV Uni-Mainz
Demo
• Datenquellen:
– Windows 2003 AD
– Telefondatenbank• (TelefonNr, Vorname, Nachname, Anzeigename, eMail)
– Personaldatenbank• (PersonalNr, Vorname, Nachname, Titel)
• Ziele:
– AD, Telefon- und Personaldatenbank importieren und Objekte verbinden
– Telefonnummer und Titel in AD Exportieren
März 200434 C. Allendörfer, ZDV Uni-Mainz
Demo AD MA
• Installation MIIS– Service läuft als User „miis“
• MetaVerse Schema bearbeiten bzw. laden
• AD MA aufsetzen– Rechte im AD einstellen– User „miis“ zum Zugriff auf AD– Container nur „OU=User,DC=Uni-Mainz,DC=DE“– Attribute: cn, comment, displayName, givenName,
mail, name, ou, sAMAccountName, sn, telephoneNumber, title
– Attributmapping: …– AD Run Profile Full Import and Sync
März 200435 C. Allendörfer, ZDV Uni-Mainz
Demo TelefonDB MA
• Telefon DB MA aufsetzen,
– User „miis“ zum Zugriff auf DB
– Join an Mailadresse (eMail -> mail)
– Attributmapping: TelefonNr -> telephoneNumber
– Run Profile definieren und ausführen
März 200436 C. Allendörfer, ZDV Uni-Mainz
Demo PersonalDB MA
• PersonalDB
– User „miis“ zum Zugriff auf DB
– Join: ?
– Attributmapping: Titel -> title, PersonalNr -> employeeID
– Runprofile festlegen und ausführen
März 200437 C. Allendörfer, ZDV Uni-Mainz
Demo Export
• Objekte im Metaverse / CS kontrollieren
• Attribut Precedence definieren
• Runprofile AD Export definieren
• Export erneut durchführen
März 200438 C. Allendörfer, ZDV Uni-Mainz
Geplanter Einsatz
• AD Import– fertig
• Export zu SunOne Directory auf Mailserver der Studierenden– fertig
• Export zu Applix Helpdesk– z. Zt. mit eigenem Script mit AD abgeglichen
• Synchronisierung mit UniVIS– ???
• Synchronisierung mit Telefonanlage, UMS, CTI– ???
• Import der Studierendendaten– zum nächsten Semesteranfang
• Import der Personaldaten– ???
• Synchronisierung mit FB Datenbanken (Mathematik, Pharmazie)– nächste Woche
top related