After 12 years my Oracle DB Security Review Script is ready to execute again. Lots of stuff is implemented and will be execute via script menu.
If you are intresting to hear more, please let me know.
Tipps, Tricks und Best Practices zu verschiedenen Themen. Im Moment beschäftigen mich die Bereich Security, Cloud, IOS App Development und real-time event streaming am meisten.
22. August 2011
17. Juni 2011
VM applicances for Developers
Oracle bietet schon seit einiger Zeit vorbereitete VM Boxen für Developer an. Einfach aus dem Netz laden, die Virtuelle Maschine öffnen und los geht es mit dem Development und Ausprobieren (PS: Bitte die OTN License beachten).
Es stehen verschiedene Boxen zur Verfügung:
Oracle VM Appliances
Es stehen verschiedene Boxen zur Verfügung:
Oracle VM Appliances
15. Juni 2011
Assign Account to Context: Utility for Oracle Information Rights Management
Business Case: Kunde will weg von den Papier-getriebenen internen Prozessen und will die Oracle Information Rights Management Lösung stattdessen einsetzen. Die Idee ist, den Mitarbeiter Zugriff auf einen bestimmten Context (Klassifikation) zu gewähren, so dass versiegelte Dokumente sicher verteilt werden können und Zugriff auf diese Dokumente automatisch protokolliert wird.
Nun kam dieser Kunde neulich auf mich und fragte, wie man ca. 1.000 Mitarbeiter direkt einem IRM Context mit einer bestimmten Rollen zu weisen kann.
Meine Antwort: "Ganz einfach, nutzen Sie ihren zentralen LDAP-Server und weisen Sie die LDAP-Gruppe, welche die 1000 Mitarbeiter beherbergt, direkt dem Context mit einer entsprechenden Rolle zu. Aufwand ca. 1 Minute."
Leider ist es bei dem Kunden nicht möglich LDAP-Gruppen zu nutzen, so dass eine manuelle Zuweisung jedes einzelnen Mitarbeiters notwendig wäre. Aber man kann das Problem natürlich besser lösen.
Oracle Information Rights Management stellt eine API zur Verfügung, die wesentliche Funktionen beinhaltet, um schnell und einfach Utilities zu schreiben. Das habe ich dann auch gemacht.
Im Developer Guide findet man ein nettes Beispiel dazu: Assign a Role to a User.
Wir brauchten natürlich etwas mehr Dynamik:
- Wir wollen die 1.000 Mitarbeiter direkt aus einer Datei lesen
- Alle Parameter werden über eine property-Datei gelesen.
Beispiel-Code für das Utility kann wie folgt aussehen (PS: Ich bin Java Newbie):
Nun kam dieser Kunde neulich auf mich und fragte, wie man ca. 1.000 Mitarbeiter direkt einem IRM Context mit einer bestimmten Rollen zu weisen kann.
Meine Antwort: "Ganz einfach, nutzen Sie ihren zentralen LDAP-Server und weisen Sie die LDAP-Gruppe, welche die 1000 Mitarbeiter beherbergt, direkt dem Context mit einer entsprechenden Rolle zu. Aufwand ca. 1 Minute."
Leider ist es bei dem Kunden nicht möglich LDAP-Gruppen zu nutzen, so dass eine manuelle Zuweisung jedes einzelnen Mitarbeiters notwendig wäre. Aber man kann das Problem natürlich besser lösen.
Oracle Information Rights Management stellt eine API zur Verfügung, die wesentliche Funktionen beinhaltet, um schnell und einfach Utilities zu schreiben. Das habe ich dann auch gemacht.
Im Developer Guide findet man ein nettes Beispiel dazu: Assign a Role to a User.
Wir brauchten natürlich etwas mehr Dynamik:
- Wir wollen die 1.000 Mitarbeiter direkt aus einer Datei lesen
- Alle Parameter werden über eine property-Datei gelesen.
Beispiel-Code für das Utility kann wie folgt aussehen (PS: Ich bin Java Newbie):
package irmwebservice; import java.net.PasswordAuthentication; import static oracle.irm.j2ee.jws.rights.context.DocumentRightOperations.getDocumentRightOperationsEndpoint; import java.io.*; import java.util.*; import java.net.URLEncoder; import java.util.UUID; import java.net.Authenticator; import java.net.PasswordAuthentication; import oracle.irm.engine.types.core.account.AccountRef; import oracle.irm.engine.types.rights.context.ContextInstanceRef; import oracle.irm.engine.types.rights.context.DocumentRoleRef; import oracle.irm.engine.types.rights.context.DomainRef; import oracle.irm.j2ee.jws.rights.context.DocumentRightOperationsEndpoint; public class AssignRole { public static void main(String[] args) throws Exception { String str; String sdomainUUID = ""; String sroleUUID = ""; String scontextUUID = ""; String shostPort = "http://demoIRM:16100"; String susername = "weblogic"; String spassword = "oracle"; try { int check = 0; while (check == 0) { check = 1; BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter file name which has properties extension :"); str = "utility"; File f = new File(str + ".properties"); if (f.exists()) { Properties pro = new Properties(); FileInputStream in = new FileInputStream(f); pro.load(in); System.out.println("All key are given: " + pro.keySet()); shostPort = pro.getProperty("hostport"); System.out.println("hostport" + " = " + shostPort); susername = pro.getProperty("username"); System.out.println("username" + " = " + susername); spassword = pro.getProperty("password"); System.out.println("password" + " = " + spassword); sdomainUUID = pro.getProperty("domainUUID"); System.out.println("domainUUID" + " = " + sdomainUUID); sroleUUID = pro.getProperty("roleUUID"); System.out.println("roleUUID" + " = " + sroleUUID); scontextUUID = pro.getProperty("contextUUID"); System.out.println("contextUUID" + " = " + scontextUUID); } else { check = 0; System.out.println("Property-File "+ str+ ".properties" + " not found!"); } } } catch (IOException e) { System.out.println(e.getMessage()); } final String hostPort = shostPort; final String username = susername; final String password = spassword; Authenticator.setDefault(new Authenticator(){ @Override protected PasswordAuthentication getPasswordAuthentication(){ return new PasswordAuthentication(username,password.toCharArray()); } }); // Domain UUID is read from property file UUID domainUUID = UUID.fromString(sdomainUUID); DomainRef domainRef = new DomainRef(domainUUID); // Document Role UUID is read from property file UUID documentRoleUUID = UUID.fromString(sroleUUID); DocumentRoleRef roleRef = new DocumentRoleRef(documentRoleUUID, domainRef); // Context UUID is read from property file UUID contextUUID = UUID.fromString(scontextUUID); ContextInstanceRef contextInstanceRef = new ContextInstanceRef(contextUUID); // Get the document right operations endpoint DocumentRightOperationsEndpoint rightOperations = getDocumentRightOperationsEndpoint(hostPort); //Read user accounts from File try{ // Open the file that is the first // command line parameter FileInputStream fstream = new FileInputStream("mitarbeiter.txt"); // Get the object of DataInputStream DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; //Read File Line By Line while ((strLine = br.readLine()) != null) { // Print the content on the console System.out.println ("Read-Account from File: "+strLine); // Reference the account by user name AccountRef accountRef = new AccountRef("urn:user:" + URLEncoder.encode(strLine, "utf-8")); // Assign the role to the account rightOperations.assignRole( contextInstanceRef, roleRef, new AccountRef[] { accountRef }, null); // no item constraints System.out.println (strLine+" was assign to Role!"); } //Close the input stream in.close(); }catch (Exception e){//Catch exception if any System.err.println("Error: " + e.getMessage()); } } }
10. Mai 2011
Use your Central User Management for Oracle APEX Applications
Viele Unternehmungen nutzen eine zentrale Benutzerverwaltung auf Basis LDAP. Hier werden bereits alle User Accounts und deren Attribute wie Name, Email, Funktion, USERID, Kennwort etc. gepflegt.
State of the Art ist es heute diese Resource für viele Unternehmenungsanwendungen zu nutzen.
Für APEX Anwendungen (APEX= Applications Express) gilt das natürlich auch. APEX ist eine Web-Entwicklungsumgebung, die komplett in der Datenbank abgelegt ist und seit der DB Version 9.2 genutzt werden kann (für alle Editionen). Im Standard werden die Benutzer für die APEX Anwendungen in der APEX-Umgebung (also Datenbank und zwar in der Tabelle WWW_FLOW_FND_USER) gespeichert. Hierfür steht innerhalb der APEX-Umgebung ein User Interface zur Verfügung. In der Regel ist diese zusätzliche Benutzer-Speicherung redundant und somit ein erhöhter Aufwand.
Die gute Nachricht ist, dass APEX bereits für die Nutzung von zentralen LDAP Diensten vorbereitet ist. Mit ca. 10 Minuten Zeitaufwand kann man LDAP für seine APEX-Anwendungen aktivieren und nutzt somit diese bestehenden Resourcen. Die Authentisierung und Autorisierung wird dann komplett über den zentralen LDAP Dienst abgewickelt. Schauen Sie sich hierfür nachfolgende Slides an:
State of the Art ist es heute diese Resource für viele Unternehmenungsanwendungen zu nutzen.
Für APEX Anwendungen (APEX= Applications Express) gilt das natürlich auch. APEX ist eine Web-Entwicklungsumgebung, die komplett in der Datenbank abgelegt ist und seit der DB Version 9.2 genutzt werden kann (für alle Editionen). Im Standard werden die Benutzer für die APEX Anwendungen in der APEX-Umgebung (also Datenbank und zwar in der Tabelle WWW_FLOW_FND_USER) gespeichert. Hierfür steht innerhalb der APEX-Umgebung ein User Interface zur Verfügung. In der Regel ist diese zusätzliche Benutzer-Speicherung redundant und somit ein erhöhter Aufwand.
Die gute Nachricht ist, dass APEX bereits für die Nutzung von zentralen LDAP Diensten vorbereitet ist. Mit ca. 10 Minuten Zeitaufwand kann man LDAP für seine APEX-Anwendungen aktivieren und nutzt somit diese bestehenden Resourcen. Die Authentisierung und Autorisierung wird dann komplett über den zentralen LDAP Dienst abgewickelt. Schauen Sie sich hierfür nachfolgende Slides an:
4. Mai 2011
Einführung in das Oracle Information Rights Management
Auf der DOAG Apps 2011 Konferenz habe ich für PLM Interessierte Oracle Information Rights Management vorgestellt. Oracle IRM ist eine Lösung mit der sich Dokumente und Emails schützen lassen. Oracle nennt den Schutzmechanismus "versiegeln (engl. sealing)". Die Lösung ist sehr einfach in Handhabung, Administration sowie im Deployment. Im Vergleich zu anderen Lösungen ist es wohl die smarteste Policy-basierte Lösung am Markt. In den beigefügten Folien Deck sind einige Funktionen zusammengefasst. Wer mehr Informationen benötigt oder die Lösung "live und in Farbe" sehen möchte, sendet mir einfach eine Email.
28. April 2011
Hardening Oracle Databases (German)
Ich habe auf Slideshare.com eine kurze Einführung über das Härten von Oracle Datenbanken geladen. Was viele nicht wissen der Enterprise Manager hat im Configuration Pack eine Policy Group "Sichere DB Konfiguration". Hier werden über 360 Regeln geprüft. Mit den Oracle Checklisten (Security Guide) und dem Enterprise Manager lassen sich wunderbar sichere DB-Referenzinstallationen vorbereiten, die dann in die entsprechenden Umgebungen verteilt werden können. Hierzu kann man dann auch den Enterprise Manager nutzen. Diese Verteilfunktionen sind im Provisioning Pack inkludiert. So lassen sich schnell grosse DB Clouds aufbauen, die alle gehärtet sind und über eine sichere Konfiguration verfügen
Falls Sie weitere Fragen haben oder solch eine Umgebung live sehen wollen, sprechen Sie mich an.
Hardening Oracle Databases (German)
View more presentations from Carsten Muetzlitz.
Falls Sie weitere Fragen haben oder solch eine Umgebung live sehen wollen, sprechen Sie mich an.
15. März 2011
Überwachung von Datenbanken mittels Lösungsansatz Audit Warehouse implementieren
Derzeit ist viel Bewegung in der IT-Sicherheit zu erkennen. Durch die Novelle II des Bundesdatenschutzgesetzes (BDSG) vom 1.9.2009 sehen sich die Sicherheitsbeauftragten zum Handeln veranlasst und versuchen die Änderungen des BDSG in die Unternehmensabläufe zu integrieren. Eine Maßnahme, die auch im Zusammenhang mit ISO 27001 steht, ist die Erkennung von Einbrüchen bzw. Einbruchsversuchen, sowie die Überwachung der Zugriffe auf sensible personenbezogene Daten. Wie löst man nun diese Herausforderung? Die Antwort ist Transparenzschaffung und dann gezielte Kontrolle der bereits umgesetzten Sicherheitsmaßnahmen. Gerade in Anbetracht der strengeren Regularien sollten jetzt vollständige Lösungen implementiert werden. In diesem Artikel wird ein Lösungsansatz beschrieben, der mit Standard-Technologien eine optimale Überwachung durch gezieltes Reporting realisiert.
Einleitung
Die Lösung der Überwachung ist die Idee der Transparenzschaffung aller Aktivitäten in den IT Komponenten in einer Unternehmung/Behörde und somit die Schaffung einer Grundlage zur besseren Kontrolle. ![]() |
Abbildung 1: Überwachung durch gezielte Protokollierung und Reporting |
Die Abbildung 1 zeigt eine funktionale Architektur einer Vision für das unternehmensweite Protokollieren der gesamten IT-Anwendungslandschaft. Unternehmungen, die solch eine Vision bereits umgesetzt haben, sind heute bestens gerüstet und haben ihre IT-Landschaft auch in Bezug auf Sicherheit und BDSG voll im Griff.
Der Weg einer vollständigen Umsetzung dieser Vision sollte nicht in einem Projektschritt umgesetzt werden. Es empfiehlt sich die genannte Vision zu entwickeln. Ein erster Schritt ist ein unternehmensweites Protokollieren für die Speicherorte der personenbezogenen Daten – den Datenbanken. Für die Überwachung und Protokollierung der Datenbank-Infrastruktur können Oracle Standard-Technologien genutzt werden, die zu schnellen Erfolgen führen und Unternehmungen eine bessere Transparenz, Kontrolle und mehr Sicherheit mit dem Umgang von personenbezogenen Daten ermöglichen.
Oracle Audit Vault bietet eine Out-of-the-Box Lösung für gängige Datenbanken (Oracle, Microsoft, IBM und Sybase). Eine zentrale Einstellung der Protokollierungspolicies, ein revisionssicheres Repository (durch Datenbankmitteln (Database Vault, Verschlüsselung mittels Advanced Security Option u.a.) gehärtete Oracle Datenbank) für die Protokolldaten, entsprechende Agenten zum Sammeln der Protokolldaten und eine Weboberfläche (Oracle Application Express - APEX) für das Reporting stehen zur Verfügung.
1. Einrichtung der Überwachung von Datenbanken mittels Oracle Audit Vault
Als erstes wird die Serverkomponente von Oracle Audit Vault installiert, dann werden auf den entsprechenden zu überwachenden Datenbank Servern die Audit Vault Collection Agents installiert. Das genaue Vorgehen der Installation ist in den Installation Guides für Audit Vault beschrieben.Hinweis:
Oracle Audit Vault Server Installation (z.B. auf LINUX X86):
http://download.oracle.com/docs/cd/E14472_01/doc.102/e14458/toc.htm
Oracle Audit Vault Collection Agent Installation: http://download.oracle.com/docs/cd/E14472_01/doc.102/e14457/toc.htm
Oracle Audit Vault Server Installation (z.B. auf LINUX X86):
http://download.oracle.com/docs/cd/E14472_01/doc.102/e14458/toc.htm
Oracle Audit Vault Collection Agent Installation: http://download.oracle.com/docs/cd/E14472_01/doc.102/e14457/toc.htm
Nun werden die zu überwachenden Datenbanken in die zentrale Überwachung von Audit Vault aufgenommen. Hierzu sind folgende Schritte notwendig:
- Registrierung der Datenbanken am Audit Vault Server
- Starten der Agenten
- Übernahme der Auditeinstellung aus den Datenbanken, Anpassung und Zurückspielung (Provisioning).
- Weitere Einstellungen wie Alerting sind möglich (siehe Admin-Guide).
Somit ist die erste Überwachungsinstanz lauffähig und überwacht alle angebundenen Datenbanken lt. eingestellten Protokollierungspolicies. Alle überwachten Aktivitäten werden nahezu in Echtzeit im revisionssicheren Audit Repository abgelegt.
![]() |
Abbildung 2: Oracle Audit Vault zur Sammlung von DB Aktivitäten |
Hinweis:
Standardmäßig ist bei Audit Vault bereits ein komplettes Reporting auf Basis APEX enthalten. Ein kurzes Einführungs-Viewlet steht im Internet zur Verfügung:
http://www.oracle.com/technology/products/audit-vault/index.html
Standardmäßig ist bei Audit Vault bereits ein komplettes Reporting auf Basis APEX enthalten. Ein kurzes Einführungs-Viewlet steht im Internet zur Verfügung:
http://www.oracle.com/technology/products/audit-vault/index.html
Für die Verwaltung und das Reporting steht eine Weboberfläche zur Verfügung, die alle protokollierten DB-Aktivitäten visualisiert und den ersten Schritt in Richtung Kontrolle darstellt. Die Oberfläche und das Reporting ist mittels APEX Funktionalität umgesetzt und bietet im Look-and-Feel von APEX umfangreiche Möglichkeiten.
![]() |
Abbildung 3: Oracle Audit Vault (10.2.3.1) Admin und Reports Web-Oberfläche |
Ein komfortables Business Intelligence (BI) Reporting mit Drill-Down, Slice and Dice, beliebige Ausgabeformate der Reports, Dashboards etc. bietet Oracle Audit Vault nur indirekt. Das Auditdata Warehouse – also das revisionssichere Repository – basiert auf einem fertig-modellierten Star-Schema, welches automatisiert befüllt wird. Auf dieses Star-Schema können beliebige BI-Lösungen aufsetzen, um die Möglichkeiten im Reporting wie z.B. das Korrellieren von verschiedenen Datenquellen und Usability zu erhöhen. Eine BI Lösung schafft mehr Kontrolle in der nun vorhandenen Protokollierungs-Transparenz durch die Komfortabilität und Flexibilität im Umgang mit Daten.
Hinweis:
Das Oracle Audit Vault Data Warehouse Schema als Star-Schema mit 9 Dimensionen: http://download.oracle.com/docs/cd/E14472_01/doc.102/e14460/avusr_app_dwschema.htm#CACFEHHF
Das Oracle Audit Vault Data Warehouse Schema als Star-Schema mit 9 Dimensionen: http://download.oracle.com/docs/cd/E14472_01/doc.102/e14460/avusr_app_dwschema.htm#CACFEHHF
Nun liegt es nahe, die DB-Überwachung um eine BI Lösung zu erweitern. Gerade im Hinblick auf die Überwachungsvision (Abbildung 1) der kompletten Anwendungslandschaft ist dieser Schritt entscheidend.
![]() |
Abbildung 4: DB Überwachung mit BI Tools |
2. Erweiterung der DB Überwachung durch eine komfortable BI Lösung
Ziel der Erweiterung durch eine BI Lösung (hier Oracle BI Standard Edition One unter Windows) ist es, eine komfortable und flexible Umgebung für den End-Benutzer zu schaffen. Die Installation der BI Lösung ist relativ einfach und wird durch den Oracle Installer voll unterstützt.
Hinweis:
Komplette Dokumentation der Oracle BI Standard Edition One: http://download.oracle.com/docs/cd/E10352_01/welcome.html
Installation Guide: http://download.oracle.com/docs/cd/E10352_01/doc/bi.1013/e10270/toc.htm
Komplette Dokumentation der Oracle BI Standard Edition One: http://download.oracle.com/docs/cd/E10352_01/welcome.html
Installation Guide: http://download.oracle.com/docs/cd/E10352_01/doc/bi.1013/e10270/toc.htm
Nach der Installation muss die Verbindung zum Audidata Warehouse des Audit Vaults konfiguriert werden. Hierfür wird der BI Administrator genutzt. Zuerst wird eine Verbindung zum physikalischen Schema des Audit Vault Data Warehouse hergestellt. Das privilegierte Schema heisst AVAUDITOR, welches den Zugriff auf die physischen Objekte im Schema AVSYS hat.
![]() |
Abbildung 5: Connect-Pool zur Anbindung des Audit Vault Warehouse |
Ist die Verbindung zum physikalischen DB Layer hergestellt, erfolgt die Überführung des physischen Datenmodells in das gewünschte Präsentations Modell. Mittels Drag & Drop werden alle wichtigen Tabellen in das „Business Model (Semantic Layer)“ transformiert.
Hinweis:
Orientieren Sie sich bei der Übernahme der physischen Tabellen an das AV Star-Schema. Siehe Dokumentation: http://download.oracle.com/docs/cd/E14472_01/doc.102/e14460/avusr_app_dwschema.htm#CHDJFFIG
Orientieren Sie sich bei der Übernahme der physischen Tabellen an das AV Star-Schema. Siehe Dokumentation: http://download.oracle.com/docs/cd/E14472_01/doc.102/e14460/avusr_app_dwschema.htm#CHDJFFIG
In dem Business Modell müssen nun noch die Drillpfade, die sogenannten Dimensionen, erstellt werden. Hierfür orientiert man sich am vorgegebenen Star-Schema in der Audit Vault Dokumentation. Beispiel:
- Auswahl des Objektes Target
- Rechte Maustaste klicken, „Create Dimension“ ausführen
- Auswahl bestätigen.
Sind alle Objekte und Dimensionen (Drill-Pfade) in dem Business Modell erstellt, kann man das komplette Business Modell (hier „AuditVault“) in den Presentation Layer überführen. Man zieht das Business Modell „AuditVault“ in den Presentation Layer Bereich (per Drag & Drop) und kreiert somit den Presentation Layer.
![]() |
Abbildung 6: Drill-Pfade erstellen mittels „Create Dimension“ |
![]() |
Abbildung 7: BI Modelle mit dem BI Administrator erstellen |
Mit BI Answers werden die Abfragen erstellt und später im Dashboard dargestellt. Die Erstellung der Abfragen wird über die Web-Oberfläche grafisch unterstützt (BI Answers). Auf der linken Seite von BI Answers findet man nun den erzeugten Presentation Layer. Um eine geeignete Abfrage zu erstellen, zieht man die Datenspalten der Dimensionen in den Kriterienbereich (per Drag & Drop) und definiert geeignete Filter. Beispiel für eine Abfrage aller Daten-Änderungen seit gestern (siehe Abbildung 8):
- Per Drag & Drop folgende Datenspalten übernehmen:
Aus der Dimension „Source“ → „Source Name“ übernehmen
Aus der Dimension „Event“ → „Event Name“ und „Event Status“ übernehmen
Aus der Dimension „User“ → „User Name“ und „OS Username“ übernehmen
Aus der Dimension „Time“ → „Day“ übernehmen
Aus der Fakt-Tabelle „Audit Event Fact“ → „Sql Text Str“ übernehmen - Die Abfrage wird mittels Filter eingeschränkt:
Category Name = DATA ACCESS and TIME.Day >= CURRENT_DATE -1
![]() |
Abbildung 8: Reports/Abfragen mit BI Answers per Drag & drop erstellen |
Die Erstellung dieser Abfrage dauert ungefähr eine Minute und gibt als Ergebnis alle Datenänderungen, die seit gestern durchgeführt wurden, aus. Die Abfrage wird abgespeichert und später zur Anzeige in das Dashboard übernommen. Es können beliebige Dashboards zur Darstellung gebracht werden, in denen die gespeicherten Answers Abfragen einfach eingebunden werden.
Hinweis:
Die Benutzung von BI Answers, Dashboards etc. sind im User Guide beschrieben: http://download.oracle.com/docs/cd/B40078_02/doc/bi.1013/b31767.pdf
Die Benutzung von BI Answers, Dashboards etc. sind im User Guide beschrieben: http://download.oracle.com/docs/cd/B40078_02/doc/bi.1013/b31767.pdf
Für die Erstellung der Abfragen orientiert man sich am besten am Audit Vault Reporting und kann natürlich beliebige eigene Abfragen in das Dashboard einbinden. Das hier vorgestellte Überwachungs-Dashboard beinhaltet z.B. Abfragen, die eventuelle Attacken wie „Brute Force Attacken“, „SQLInjections“ oder „Installation eines Root-Kits“ aufzeigt. Die nachfolgende Abbildung zeigt, wie solch ein Überwachungsdashboard aussehen könnte.
![]() |
Abbildung 9: Überwachungs-Dashboard |
Natürlich können auch Reports, die mit dem BI Publisher erstellt wurden, integriert werden. Das BI Dashboard sieht einen direkten Aufruf von BI Publisher Reports vor. Die Idee ist, dass Dokumente, die Auskunft über den Zustand der Anwendungslandschaft geben, direkt eingebunden werden. In der Regel wird diese Art der Dokumentation durch Sicherheitskonzepte oder aber auch bei eventuellen Audits z.B. nach PCI DSS oder ISO 27001 gefordert. Mit dem BI Publisher hat man die Möglichkeit geforderte Reports einfach zu erstellen und in sein eigenes Überwachungs-Dashboard aufzunehmen.
![]() |
Abbildung 10: Einbindung eines BI Publisher Reports zum IT-Grundschutz |
Audit Vault und BI schaffen eine sehr gute Plattform für die Überwachung aller Datenbanken. Es können alle Aktivitäten überwacht werden, die von beliebigen Datenbank-Benutzern ausgeführt wurden. Was an dieser Stelle fehlt, ist das Wissen über die Datenbank-Benutzer. Welche Identität steckt hinter diesen Benutzern und welche Berechtigung haben diese Benutzer und warum? Diese Fragen lassen sich durch die Integration einer Identity Management Lösung beantworten. Oracle bietet mit dem Oracle Identity Manager die Möglichkeit zur zentralen Administration von Datenbank-Benutzern „CUA4DB (centralized User Administration for DBs)“ an. Um die Überwachung vollständig zu machen, läßt sich der Oracle Identity Manager (CUA4DB) in die Überwachungslösung aufnehmen.
Hinweis:
CUA4DB ist ein von Oracle Consulting entwickeltes Konzept auf Basis des Oracle Identity Managers.
CUA4DB ist ein von Oracle Consulting entwickeltes Konzept auf Basis des Oracle Identity Managers.
3. Erweiterung der DB Überwachung durch den Oracle Identity Manager
Der Oracle Identity Manager als zentrales Tool zur Berechtigungs- und Identitätsvergabe bringt zusätzliche Transparenz und somit erhöhte Kontrolle. Der Oracle Identity Manager wird nach den Vorgaben des Installation Guides installiert. Im Standard enthalten ist der Oracle WebLogic Server, aber auch Application Server wie JBoss werden unterstützt.
Hinweis:
Die komplette Dokumentations wie auch die Installations Guide findet man hier: http://download.oracle.com/docs/cd/E14049_01/index.htm
Die komplette Dokumentations wie auch die Installations Guide findet man hier: http://download.oracle.com/docs/cd/E14049_01/index.htm
Nach der Installation muss der Datenbank Connector in den Oracle Identity Manager deployed werden. Mit dem Deployment stehen Funktionen zum Provisioing (eingestellte Berechtigungen in den Zielsystemen anlegen) und zur Reconciliation (bestehende Berechtigungen in das Identity Repository überführen) zur Verfügung.
Hinweis:
Deployment Guide für den Datenbank Connector:
http://download.oracle.com/docs/cd/E11223_01/doc.904/e10425/toc.htm
Deployment Guide für den Datenbank Connector:
http://download.oracle.com/docs/cd/E11223_01/doc.904/e10425/toc.htm
Zur Vereinfachung der Konfiguration von Datenbank-Resourcen (u.U. sind mehrere hundert Instancen vorhanden) hat Oracle Sales Consulting ein kleines Parser-Tool entwickelt. Der TNSNames-Parser kann zur Verfügung gestellt werden und liest alle notwendigen Daten aus der TNSNAMES.ORA Datei und erstellt auf Basis dieser Information die komplette Konfiguration der Datenbank-Resourcen im Identity Manager. Somit ist die Installation und Konfiguration des Identity Managers als zentrale Berechtigungs-Verwaltung für Datenbanken sehr schnell und einfach umsetzbar.
Im nächsten Schritt müssen die Identitäten - die tatsächlichen Personen im Identity Repository - bekannt gemacht werden. Mittels einer CSV-Datei als Quelle kann diese Information leicht in das Repository importiert werden. Nun werden alle Berechtigungen aus den Datenbanken in das Identity Repository überführt. Hierfür wird für jede Datenbank ein Reconciliation Task angestossen.
![]() |
Abbildung 11: Berechtigungen in das Identity Repository überführen mittels Reconciliation |
Sind die USERIDs der Datenbank-Benutzer nicht identisch mit den User-IDs, die im Identity Repository hinterlegt sind, können sie manuell oder über Regeln den richtigen Identitäten zugeordnet werden. Die WebConsole des Identity Managers unterstützt diesen Zuordnungsvorgang, wie in Abbildung 12 dargestellt ist.
![]() |
Abbildung 12: Manuelle Zuordnung von DB-Account zu Identitäten |
Somit liefert der Oracle Identity Manager in kurzer Zeit Transparenz über die aktuellen Berechtigungen in den Datenbanken. Das nachfolgende Beispiel zeigt alle Datenbank Resourcen, auf die Carsten Muetzlitz zugriffsberechtigt ist.
![]() |
Abbildung 13: Alle DB Resourcen von Hr. Mützlitz |
Auf Basis dieser Information liefert der Oracle Identity Manager weitere Benefits zur Erhöhung der Kontrolle und Sicherheit wie kontrollierte und automatisierte Provisionierung von Berechtigungen, erhöhte Kontrolle der Rechtevergabe durch implementierte Logik, Segregation of Duties (Aufgabentrennung), Self-Services, Delegierte Administration, Workflows für Genehmigungen, Berechtigungsanforderungen via Self-Services, Kennwort-Synchronisation, Berechtigungsrezertifizierung, zentrales Entziehen von Berechtigungen (manuell oder Prozess-gesteuert) und einiges mehr. Ein weiteres Benefit für das Überwachungsdashboard sind die fertigen BI Publisher Reports, die sofort integriert werden können.
![]() |
Abbildung 14: Identity Manager Reports im Überwachungsdashboard |
Diese Reports schaffen zusätzliche Transparenz und geben Antworten auf die Fragen nach der tatsächlichen Identität und warum die Identität die aktuellen Berechtigungen in der entsprechenden Datenbank besitzt.
Zusammenfassung und Fazit
Aus den vorgestellten Technologie-Komponenten implementierten wir in diesem Beitrag eine Überwachung der Datenbank-Infrastruktur als Teil der Protokollierungs-Vision.
· Oracle Audit Vault
Out-of-the-Box Data Warehouse Star-Modell für die Anbindung an eine BI Auswertung und Reporting. Standard-Agenten sammeln die Audit-Daten aus den Quell-Datenbanken und legen diese Information in einer revisionssicheren Datenbank ab. Zentrales Provisioning der Audit-Einstellungen in die Datenbanken über zentrale Policy-Administration.
Out-of-the-Box Data Warehouse Star-Modell für die Anbindung an eine BI Auswertung und Reporting. Standard-Agenten sammeln die Audit-Daten aus den Quell-Datenbanken und legen diese Information in einer revisionssicheren Datenbank ab. Zentrales Provisioning der Audit-Einstellungen in die Datenbanken über zentrale Policy-Administration.
· Oracle Business Intelligence
Professionielle Auswertung, Reporting, Benachrichtigung und Ad-Hoc Abfragen über alle Audit-Informationen. Erstellung von eigenen Reports und Abfragen.
Professionielle Auswertung, Reporting, Benachrichtigung und Ad-Hoc Abfragen über alle Audit-Informationen. Erstellung von eigenen Reports und Abfragen.
· Oracle Identity Manager
Liefert mittels Datenbank-Connector Accounts und Rechte aller Datenbank-Benutzer und ermöglicht ein Mapping auf reale Identitäten. Berechtigungsprozesse sind abbildbar und schaffen mehr Sicherheit.
Liefert mittels Datenbank-Connector Accounts und Rechte aller Datenbank-Benutzer und ermöglicht ein Mapping auf reale Identitäten. Berechtigungsprozesse sind abbildbar und schaffen mehr Sicherheit.
Der Oracle Lösungsansatz für die Datenbank-Überwachung ist schnell implementiert und liefert schnelle Ergebnisse. Daten können korreliert werden und somit beliebige Informationen abgeleitet werden: Attacken, Sicherheits-Reviews, Compliance-Reports und vieles mehr ist möglich.
![]() |
Abbildung 15: Datenbank-Überwachung mit dem Lösungsansatz Audit-Warehouse |
Kurzdarstellung: Der Weg zur Datenbank-Überwachung
Die Implementierung der Datenbank-Überwachung ist in 5 Schritten durchzuführen.
1. Installation und Konfiguration Oracle Audit Vault
2. Installation Oracle BI Komponenten
3. Installation Oracle Identity Manager
4. Dashboarding und Reporting der Überwachung
5. Zusätzliche Anforderungen umsetzen
Was man nicht messen kann, kann man nicht kontrollieren. Aus diesem Fakt heraus ist die Idee der Datenbank-Überwachung entstanden. Der wesentliche Unterschied in der IT-Sicherheit ist das Wissen über Zustände und nicht der Glaube, dass IT-Komponenten „sicher“ sind (Generelle Aussage: „...ich gehe davon aus, dass...“). Protokollierung und Überwachung wird immer wichtiger (Forderung aus dem BDSG §9 Abs. 1) und unterliegt einem Kreislauf der Messung, Auswertung, Verbesserung und Optimierung. Dadurch entsteht ein Prozess, der fortlaufend Wissen liefert und dieses Wissen wiederum im Prozess anwendet. Wie heißt es so schön: „Erfahrung macht klug!“
![]() |
Abbildung 16: Kreislauf der Protokollierung |
Der hier vorgestellte Lösungsansatz wurde nur skizziert. Für eine detaillierte Diskussion stehe ich gerne zur Verfügung.
Weiterführende Informationen:
Oracle Security Center: http://www.oracle.com/technology/deploy/security/index.html
Oracle Identity Management: http://www.oracle.com/technology/products/id_mgmt/index.html
Oracle Datenbank Sicherheit: http://www.oracle.com/technology/deploy/security/database-security/index.html
Oracle Security BSI-Matrix: https://www.bsi.bund.de/cln_156/DE/Themen/weitereThemen/ITGrundschutzKataloge/Hilfsmittel/InformationenexternerAnwender/informationenexterneranwender_node.html
Oracle Security Center: http://www.oracle.com/technology/deploy/security/index.html
Oracle Identity Management: http://www.oracle.com/technology/products/id_mgmt/index.html
Oracle Datenbank Sicherheit: http://www.oracle.com/technology/deploy/security/database-security/index.html
Oracle Security BSI-Matrix: https://www.bsi.bund.de/cln_156/DE/Themen/weitereThemen/ITGrundschutzKataloge/Hilfsmittel/InformationenexternerAnwender/informationenexterneranwender_node.html
Abonnieren
Posts (Atom)