Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Automatisierte Benutzerverwaltung
Diplomarbeit HTL-Wels 2006/2007 Etzlstorfer Andreas Roland Kretschmer
2
Agenda Teil 1 Teil 2 Teil 3 Ziele Anwendungsfall Ablauf Technologien
Konfiguration Teil 3 Codebeispiele
3
Ziele Massenimport von Schülerlogins Logineinstellungen
Gruppenzugehörigkeiten Platzbeschränkungen Homeverzeichnisse (+Filerechte) Unixattribute Loginskript
4
Importdaten CSV Datei aus SAS-II Schema der CSV Datei einstellbar
Schulverwaltungsprogramm St. Pölten Schema der CSV Datei einstellbar auch andere Schulverwaltungsprogramme möglich Konfigurationsfile einfache Textdatei Profile XML Datei
5
Beispiel: CSV-Datei aus SAS II
ist im Prinzip nichts anderes als eine Excel Datei in Textform die meisten Schulverwaltungssysteme liefern Daten in so einer Form…
6
Verwendete Technologien
Programmiersprache Java GUI durch SWING Bibliotheken LDAP-Zugriffe: JLDAP (v.2.16) Novellzugriffe: NJCL (v.2.0) Konfiguration: JDOM (v.1.0) Logging: LOG4J (v )
7
Verwendete Programme Programmierung Umgebung Server Eclipse CVS-Server
Console One JXplorer VM-Ware Server Novell Netware 6.5 (SP3)
8
Ansicht GUI Menü Toolbar Registerkarten Konsole
9
Anwendungsfall I Schritt 1: Datei öffnen
10
Anwendungsfall II Schritt 2: CSV-Daten in Logins umwandeln
Generierungsmuster vorkonfigurierte Muster Hier kann man schon einmal die Anpassung an das jeweilige CSV-File vornehmen…(Muster) Passwortlänge
11
Anwendungsfall III Schritt 3: Logins exportieren CSV Datei
Sollte man tun, damit man die Passwörter gesichert hat… CSV Datei
12
Anwendungsfall IV Schritt 4: Profil zuordnen 1: Popupmenü 2: Panel 2 1
Man kann Standardprofile festlegen die sofort eingestellt sind, falls Logins generiert werden… Andernfalls kann man selbstständig die Profile erstellen und zuweisen (über Texteditor – XML oder über eigene GUI) Was ein Profil im Detail ist wird nachher noch erklärt…
13
Anwendungsfall V Schritt 5: Datenbestand vergleichen
Schritt 5a: Aktionen wählen gefilterte Einträge weglassen…
14
Anwendungsfall VI Schritt 6: Vergleichsdaten ausführen
15
Resultat I Ist mit JXPlorer erstellt worden…
16
Resultat II Filerechte Serverpfad/Volume erwähnen Rechte mit Benutzer
17
Resultat III
18
Resultat IV
19
Teil 2 Ablauf Technologien Konfiguration
20
Ablauf I
21
Ablauf II
22
Anpassung über Muster aus Spalten -> Zeichenketten generieren
besitzt Syntax, Zugriff: $spaltenname$ ganze Spalte $n.spaltenname$ n-Zeichen von vorne $n#.spaltenname$ n-Zeichen von hinten $n,m*spaltenname$ m-Zeichen vom n-ten Zeichen weg (Substring)
23
Beispiel für Muster Daten id vname name abteilung 01 Sepp Mair Verkauf
Syntax Ergebnis $vname$ $name$ Sepp Mair Herr $name$ $vname$ ist in der Abteilung $abteilung$ Herr Mair Sepp ist in der Abteilung Verkauf Login: $abteilung$_$id$$2.vname$$2.name$ Login: verkauf_01SeMa
24
Einstellungen im Profil
Sprache Gruppenzuweisungen Speicherplatzbeschränkungen Homeverzeichnis (NDS und Linux) Verzeichnisrechte Startskript
25
Beispiel eines Profiles (XML)
26
Profileinstellung (GUI) I
27
Profileinstellung (GUI) II
28
Profileinstellung (GUI) III
Remark notwendig sonst nimmt der Server ein Defaultprofil.
29
Konfiguration csv2ldap.conf allg. Konfiguration
filter.conf Filtereinstellungen log4jproperties Einstellungen für das Logging
30
Beispiel csv2ldap.conf name und verzeichnisdn sind unabhängig voneinander da sich der Server für die Spacerestrictions und der Server für die Homeverzeichnisse unterscheiden können… Passwort kann leer sein, GUI fragt nach falls Verbindung aufgebaut wird… Port 636, gesicherte Verbindungen sind noch nicht implementiert
31
Beispiel filter.conf ungewünschte Einträge ignorieren
Problem an Schule: Schüler die noch nicht aufsteigen können… erst teilweise implementiert Einstellung im Konfigurationsfile Alle User deren Klasse ein Fragezeichen enthält werden herausgefiltert… REGEX…
32
Teil 3 - Codebeispiele
33
Codebeispiel Posix Account
Posix Account muss mit „modify“ hinzugefügt werden!
34
Codebeispiel Spacerestriction
Aufruf: addRestriction("cn=testuser,o=htl", "HOM_H1", 100); HOM_H1 cn=testuser,o=htl testuser.htl testuser.htl 100
35
Codebeispiel Gruppenzugehörigkeit
zwei Zugriffe: Benutzer Gruppe Gruppe Benutzer
36
Homeverzeichnisse Problembeschreibung
ca Zugriffe Das Problem ist, dass Verzeichnisse nur einzeln erstellt werden können und nicht ein gesamter Pfad als Ganzes. Mit ca Homeverzeichnissen hat das ganze ca. 5min gedauert!
37
Homeverzeichnisse Lösung
Ablegen der Struktur in hierarchischer Datenform rekursives Abarbeiten der Struktur erspart Zugriffe und somit Zeit
38
Codebeispiel Homeverzeichnis erstellen I
39
Codebeispiel Homeverzeichnis erstellen II
hole das Volume Nr: 1…n hole erstes Verzeichnis des Volumes erstelle Verzeichnis hat Verzeichnis Kinder? ja: erstelle Kinder nein: fertig hole nächstes …
40
Codebeispiel Homeverzeichnis erstellen III
Aufruf: erstelleVerzeichnis(“02“, altercontext); Informationen setzen über JNDI wird das Verzeichnis erstellt…
41
Zusammenfassung Massenimport aus CSV-Datei
Flexible Einstellungsmöglichkeiten Vollständiges Login mit Homeverzeichnisse Platzbeschränkungen Gruppenzugehörigkeiten … weitere Wünsche?
42
Vielen Dank für ihre Aufmerksamkeit
Fragen ? ¿ ? ¿ Kontaktadressen: OpenSource
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.