www.Gerhard-Raabe.de
  Oracle
 
Copyright:
 
Der nachfolgende Code ist frei verfügbar, solange er nicht kommerziell verwendet wird! Falls er so wie veröffentlicht, in Teilen oder abgewandelt zum Einsatz kommt, würde ich mich sehr über eine kurze E-Mail freuen.

Für nähere Informationen, Beschreibungen und Downloads folgen Sie dem Pfeil am Anfang der Kurzbeschreibung!
 
Allgemeines:
 
Parameter:
Next   Zur Speicherung von Parameterdaten wurde eine Datenstruktur realisiert, die ähnlich aufgebaut ist wie ein INI-File. Die Datenstruktur enthält Parametergruppen, der wiederum verschiedene, einzelne Parameter zugeordnet werden. Ein Parameter hat ein in der Parametergruppe einen eindeutigen Label. Da Parameter unterschiedliche Datentypen in der gleichen Struktur gehalten werden sollen, werden alle Parameter als String (varchar) gespeichert.

Der Datenzugriff auf die Parametertabellen erfolgt über die Proceduren/Funktionen des Packages parameter, über die das Auslesen und Ändern der Parameter erfolgt.
 
Logging:
Next   Batches und Proceduren sollten ihren Ablauf möglichst umfassend protokollieren. In der Regel werden dazu die Outputs der Batches in Logfiles auf das Filesystem geschrieben. Häufig werden aber auch Proceduren über Client-Applications aufgerufen. Da auch in solchen Fällen die Log-Informationen zentral gespeichert werden sollen, bietet es sich an die Log-Informationen mit auf der Datenbank zu speichern. Dies ermöglicht auch ein komfortables analysieren und suchen in den Log-Informationen.

Beim Speichern von Log-Informationen ergibt sich aber die Schwierigkeit, daß diese Informationen bei einem Rollback mit zurückgerollt werden. Da die Log-Informationen gerade im Fehlerfall benötigt werden, ist dies nicht wirklich wünschenswert. Das Package logging übernimmt daher nicht nur das Speichern der Log-Informationen in der dafür vorgesehenen Tabellenstruktur, sondern speichert die Daten auch noch zusätzlich in einer Variablenstruktur (INDEX BY Tabelle). Nach einem Rollback können so mittels der im Package logging definierten Procedure commit_log die mit zurückgerollten Log-Informationen wiederhersgestellt werden.

Das Package ermöglicht es neben dem Speichern der Log-Informationen auf der Datenbank diese auch zusätzlich (wie gehabt) in Logfiles auf dem Filesystem zu speichern.
 
User:
Next   In der Regel reicht die User-Verwaltung einer Datenbank nicht aus, um die Zugriffsberechtigungen innerhalb einer auf die Datenbank zugreifenden Application steuern zu können. Daher muß häufig eine eigene Userverwaltung eingerichtet werden.

Die hier vorgestellte User-Verwaltung ermöglicht es User in User-Gruppen zusammenzufassen und diesen User-Gruppen Rechte (Permissions) zuzuweisen. Die zur notwendigen Verwaltung und Nutzung benötigten Proceduren/Funktionen befinden sich in dem Package users.

Da in einigen Branchen (z.B. Banken/Versicherungen) sehr viel Wert auf die Nachvollziehbarkeit von Änderungen gelegt wird, werden alle Berechtigungsänderungen über Trigger in History-Tabellen protokolliert.

Hinweis: Dieses Berechtigungskonzept ist so in einem von mir durchgeführten Projekt vom Bundesamt für das Finanzwesen (Bafin) abgenommen worden.
452406 Besucher - seit dem 01.02.2005 - 00:00:00 - 2 Besucher online © 2004-2015 by Gerhard Raabe ##, ## ### #### - ##:##:##