2. 2DOAG Konferenz 2015
database intelligence | operations excellence | bi solutions
„we go the extra mile“
Jan Schreiber, Pablo Stapff
Loopback.ORG GmbH, Hamburg
3. 3DOAG Konferenz 2015
• Oracle Architektur & Performance
• Database Operations und Security
• Data Warehouse und Business
Intelligence
Loopback.ORG GmbH
database intelligence | operations excellence | bi solutions
@LoopbackORG Blog: blogs.loopback.org
4. 4DOAG Konferenz 2015
Problemstellung
• Die meisten Menschen können sich keine
starken Passwörter merken
• Leichte Passwörter sind einfach zu brechen
• Aufgeschriebene Passwörter können in falsche Hände
fallen
– Dies gilt auch für Passwortmanager
• Mehrfachbenutzung von Passwörtern erhöht das Risiko
• Audit-Risiken, tatsächliche Privilegienverteilung oft unklar
• "Wer verbirgt sich hinter diesem User?“
6. 6DOAG Konferenz 2015
Regulatorische Vorgaben
• Bundesdatenschutzgesetz (BDSG)
• Datenschutzverordnungen (DSVO)
• Landesdatenschutzgesetz (LDSG)
„Zugriffe, mit denen Änderungen an automatisierten
Verfahren bewirkt werden können, dürfen nur den dazu
ausdrücklich berechtigten Personen möglich sein. Die
Zugriffe dieser Personen sind zu protokollieren und zu
kontrollieren“
LDSG Schleswig-Holstein, §5 Abs. 2
8. 8DOAG Konferenz 2015
Lösungsansatz #1:
Zentrales Verzeichnis
• Ist in der Regel im Unternehmen bereits vorhanden,
zusätzlicher Administrationsaufwand entfällt
• Eindeutige Benutzeridentifikation
• Berechtigungsvergabe nur an einer Stelle
• Keine Schattenkonten, sofortige Sperre möglich
• 1st Level-Support kann Passwörter verwalten
• Compliance Reporting wird möglich
9. 9DOAG Konferenz 2015
Lösungsansatz #1a:
Oracle Internet Directory als zentrales
Verzeichnis
DB FARM
OID
Anwender
Windows
(pGina)
Anwendung XYZ
UNIX PAMWeb-Anwendung
10. 10DOAG Konferenz 2015
• Verwaltung von
Klimaforschungsdaten
• Bereits 2004 eingerichtet
• 7 Datenbanken, 6500
internationale Anwender
• Identifikation per OID,
X.509 DFN-Zertifikate
optional
EUS & OID im
Deutschen Klimarechenzentrum
11. 11DOAG Konferenz 2015
OID-Anbindung und Enterprise User
Security (EUS): Funktionsweise
Database
client
authentificatio
n
Leonard.Nimo
y
(1)
Connect
Leonard.
Nimoy/
BIGDB
EUS-
enabled
Oracle DB
BIGDB
Überprüft
Passwort Hash,
ordnet User
Rollen und
Schema zu
(2) Request
Leonard.Nimo
y(3) Returned
Leonard.Nimo
y
(4) Request
Schema &
Enterprise Roles
(5) Returned
Schema (SPOCK) &
Enterprise Roles
Oracle
Internet
Directory
(OID)
Ablage für User,
Rollen & EUS
Konfiguration
(6) Logged in as SPOCK with
ROLE SCIENCE_OFFICER
16. 16DOAG Konferenz 2015
Anmeldung mit EUS
SYS@loopds1> create user global_ident identified globally;
User created.
SYS@loopds1> grant connect to global_ident;
Grant succeeded.
oracle@zion ~]$ sqlplus test/geheim
SQL*Plus: Release 11.2.0.4.0 Production on Sun Oct 14 11:53:38 2012
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit
Production
GLOBAL_IDENT@loopds1> show user
USER is "GLOBAL_IDENT"
17. 17DOAG Konferenz 2015
Lizenzkosten für EUS?
• EUS steht nur für die Enterprise Edition (EE), nicht
für die Standard-Edition zur Verfügung. Vor 11g
erforderte der Einsatz von EUS die Lizenzierung
der Advanced Security Option (ASO), seitdem
heißt es:
• "Usage of Enterprise User Security with Oracle
Database strong authentication (PKI, Kerberos) no
longer requires Oracle Advanced Security to be
licensed. Strong authentication services
(Kerberos, PKI, and RADIUS) and network
encryption (native network encryption and
SSL/TLS) are no longer part of Oracle Advanced
Security and are available in all licensed editions
of all supported releases of the Oracle database"
(5)
18. 18DOAG Konferenz 2015
Lizenzkosten für OID?
• Die Lizenzierung von OID oder OUD erfordert eine "Directory Services
Plus"-Lizenz, die mit etwa $50k / pro Prozessor zu Buche schlägt, oder eine
Lizenzierung im Rahmen von Fusion Middleware. Für die Verwendung
ausschließlich als Verzeichnisdienst für Oracle-Datenbanken ist es
allerdings nicht notwendig, OID separat zu lizensierten:
• "A restricted-use license for Oracle Internet Directory (OID) is included with
all editions (except for Oracle Database Express Edition) if users use the
Directory Naming feature to configure Oracle Net Services. OID may not be
used or deployed for other uses“
• Diese Lizenz schließt die Verwendung als Identity Management Provider
allerdings nicht mit ein. Ist OID separat lizensiert, ist der Betrieb einer
Repository-Datenbank in der Lizenz enthalten.
20. 20DOAG Konferenz 2015
Synchronisation
• Keine AD-Schema-
änderungen nötig
• AD Agent muss auf AD-
Kontrollern laufen und
Klartext-Passwörter
mitlesen
Proxy:
• AD-Schema-
änderungen nötig
• Password Filter muss
auf AD-Controllern
laufen
• AD Update Recht muss
vorhanden sein
Virtualisierung:
• Nur AD-
Schemaänderung:
Orclcommonattribute
• Rollentrennung
DBA/AD
OID Active Directory
Verzeichnisintegration
DB FARM
OV
D
Database
Client
SqlPlus,
Java, etc
(AUTH)
Map Users,
Schema,Role
s
OID
DB FARM
Oracle
OID
Database
Client
SqlPlus,
Java, etc
(AUTH)
Map Users,
Schema,Roles
SYNC
(DIP)
oidpwdcn.dll
DB FARM
OID
Database
Client
SqlPlus,
Java, etc
(AUTH)
Map Users,
Schema,Roles
Hashes
Groups
oidpwdcn.dll
orclCommonAttribute
21. 21DOAG Konferenz 2015
AD-Integration mit Oracle Unified
Directory (OUD) & Kerberos
DB FARM
OUD
Database
Client
SqlPlus,
Java, etc
(EUS)
Map Users,
Schema,Roles
Groups
OracleContext
OUD Proxy Setup:
• Lesender AD-Benutzer
• Leserechte auf DB-
Usereinträge im AD
• Oracle Context im
LDAP
• Software: OUD,
WebLogic, ADF
• Funktioniert auch mit
EUS
[linux7 Oracle_OUD1]$ ./oud-proxy-setup
[linux6]$ okinit testuser
[linux7]$ oklist
Kerberos Ticket
22. 22DOAG Konferenz 2015
AD/Kerberos: Vorteile
• In der (alten) UNIX-Welt erprobtes
Protokoll
• Standard in Active Directory
• Starke, Token-basierte Authentifizierung
• Active Directory Schema muss nicht mehr
erweitert oder synchronisiert werden
• Single Sign On für DBA Umgebungen
• Auch Linux Server lassen sich
„kerberisieren“
24. 25DOAG Konferenz 2015
SSL-PKI: Vorteile
• Verwendung von starker Kryptographie
• Einfache Integration von Zwei-Faktor-
Authentifizierung (das Zertifikat als „Something
you have“)
• Single Sign On
• Mehrfachnutzen:
– Auch im Betriebssystem mit Smartcards verwendbar
(Windows, OSX, Linux unterstützt)
– Auch für S/MIME E-Mail verwendbar
• Offline-Funktion, Revocation List Abfrage
optional
25. 26DOAG Konferenz 2015
PKI: Zertifikate und Wallets
Datenbank-Server
1. Leeres Wallet erstellen
2. Key und Zertifikat-Request stellen
3. Request durch CA signieren lassen (Z.B. CN=db12c)
4. CA Zertifikat importieren (CN=myCA)
5. Signiertes Zertifikat importieren
Client
1. Leeres Wallet erstellen
2. Key und Zertifikat-Request stellen
3. Request durch CA signieren lassen (Z.B. CN=jans)
4. CA Zertifikat importieren (CN=myCA)
5. Signierte Zertifikat importieren
34. 35DOAG Konferenz 2015
PKI: JDBC
• Auch per JDBC kann SSL verwendet werden
• Integration auch über keytool
String url = "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)
(HOST=servernam e)(PORT=2484))(CONNECT_DATA=(SERVICE_NAME=servicename)))");
Properties props = new Properties();
props.setProperty("user", "scott");
props.setProperty("password", "tiger");
props.setProperty("javax.net.ssl.trustStore",
"/truststore/ewallet.p12");
props.setProperty("javax.net.ssl.trustStoreType","PKCS12");
props.setProperty("javax.net.ssl.trustStorePassword","welcome123"); Connection conn
= DriverManager.getConnection(url, props);
http://www.oracle.com/technetwork/topics/wp-oracle-jdbc-thin-ssl-130128.pdf
How to configure Oracle SQLDeveloper to use a SSL connection that was configured as
per Note 401251.1
35. 36DOAG Konferenz 2015
Be a Certificate Authority (CA)
• Externer Dienstleister?
• Es gibt verschiedene kommerzielle Produkte
– Auch Open Source:
• EBJCA
• OpenXPKI
• Alle Schritte sind in OpenSSL implementiert
– Nicht mit selbstsignierten Zertifikaten zu verwechseln
openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -nodes -key rootCA.key -days 1024 -out rootCA.pem
openssl ca -policy policy_anything -config loopca-url.cnf -out Certs/$1.pem
-infiles Reqs/$1.req
38. 39DOAG Konferenz 2015
PKI mit Smartcards
• Authentifizierung an Besitz der Karte
gekoppelt
• Zertifikat kann nicht kopiert werden
• Vorraussetzung: Kartenleser, Middleware,
PKI und Smartcards müssen miteinander
kompatibel sein
• Ansonsten wie bei SSL-Wallets
39. 40DOAG Konferenz 2015
Smartcard-PKI: Client-
Konfiguration
orapki wallet p11_add -wallet <Wallet PFAD>
-p11_lib <DLL PFAD>
• Middleware im Wallet verankern
• Middleware muss PKCS#11 implementieren
• Oracle liefert keine Liste kompatibler Hardware
• SmartCard-Einführung hat Projektcharakter
41. 42DOAG Konferenz 2015
Smartcard und Oracle Wallet
orapki wallet p11_verify -wallet . pkcs11_wallet -pwd XXX
Oracle PKI Tool : Version 11.2.0.4.0 – Production
Number of certificates found on token = 1
Cert with subject name:
CN=Stapff Pablo has a matching private key on token.
Cert with subject name:
CN=Stapff Pablo installed as user cert in wallet.
42. 43DOAG Konferenz 2015
Zusammengefasstes
• Eine LDAP-Anbindung ist mit überschaubarem Aufwand
realisierbar. Lizenzkosten für OID oder OUD müssen
allerdings berücksichtigt werden.
• Die Verzeichnis-Anbindung macht in der Regel nur
zusammen mit Enterprise User Security (EUS) Sinn.
• Active Directory Anbindung wird in der Praxis
wahrscheinlich nur mit Kerberos & OUD zu realisieren
sein.
• Die Verwendung von SSL-Zertifikaten ist eine
kostengünstige und mächtige Möglichkeit, die vor allem
in Zusammengang mit einer unternehmensweiten PKI
Sinn macht.
• Die Implementierung aller vorgestellen Lösungen ist in
der Praxis etwas komplexer als in der Theorie.