Post on 08-Mar-2020
Oracle Enterprise User Security 11g mit Server Chaining
Jürgen KühnSenior Consultant
Basel Bern Lausanne Zürich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg München Stuttgart Wien
Senior Consultant
Düsseldorf, 9. Juni 2011
Agenda
� Enterprise User Security
� Systemarchitektur
� Administration
� Server Chaining zum Active Directory
© 2010Oracle Enterprise User Security 11g mit Server Chaining
Daten sind immer im Spiel.
� Server Chaining zum Active Directory
� Probleme und Widrigkeiten
� Diskussion
2
Compliance
� Personalisierte Accounts� Nachvollziehbarkeit von Administrationstätigkeiten� Auditierbare Berechtigungen� Auch und gerade für (Datenbank-) Administratoren
� Anforderungen von Regulatorien und Gesetzen� Sarbanes Oxley Act� KonTraG
© 2010
� KonTraG� Aktiengesetz AktG
� § 91 (2) Der Vorstand hat geeignete Maßnahmen zu treffen, insbesondere ein Überwachungssystem einzurichten, damit den Fortbestand der Gesellschaft gefährdende Entwicklungen früh erkannt werden.
� Bürgerliches Gesetzbuch BGB� § 276 Fahrlässig handelt, wer die im Verkehr erforderliche Sorgfalt außer Acht
lässt� Gesetz betreffend die Gesellschaften mit beschränkter Haftung GmbHG
� § 41 Die Geschäftsführer sind verpflichtet, für die ordnungsmäßige Buchführung der Gesellschaft zu sorgen.
Oracle Enterprise User Security 11g mit Server Chaining3
Kundensituation
� Alle DBAs nutzen für alle Datenbanken ein und denselben Account
� Nutzung von Shared Accounts� User: READALL� Passwort: GehHeim
DB2
DB3
DB4DB5
DBn
© 2010
� Passwort: GehHeim
� Revisionssicherheit� Innenrevision� Externe Wirtschaftsprüfer
� Auditierung� Externe Auditoren
Oracle Enterprise User Security 11g mit Server Chaining4
DBnDB1
SQL> connect READALL/GehHeim@ALL_DATABASES
Oracle Enterprise User Security (1)
© 2010
Quelle: Oracle
Oracle Enterprise User Security 11g mit Server Chaining5
Oracle Enterprise User Security (2)
� Benutzer- und Rollenverwaltung im LDAP Verzeichnis� Oracle Internet Directory OID� Es ist nicht mehr jeder Benutzer und jeder DBA in jeder Datenbank
angelegt� Verwaltung der Datenbankrollen im LDAP Verzeichnis
� Unterstützte Authentisierungsmethoden
© 2010
� Unterstützte Authentisierungsmethoden� Passwort� Kerberos� SSL
� Anbindung externer Verzeichnisse� Server Chaining� Directory Integration and Provisioning DIP� Oracle Virtual Directory OVD
Oracle Enterprise User Security 11g mit Server Chaining6
Enterprise User
� Enterprise User werden nur im Verzeichnis angelegt� Sie werden nicht in der Datenbank angelegt
� Shared Schema� Benutzer besitzen kein eigenes Schema� Ein "Stellvertreter- Benutzer"
© 2010
� Mapping� Wird im Verzeichnis definiert� Einzelne Benutzer oder Knoten eines Verzeichnisses werden auf das
Shared Schema gemappt
Oracle Enterprise User Security 11g mit Server Chaining7
SQL> CREATE USER SHARED_USER IDENTIFIED GLOBALLY AS ''
Rollen und Privilegien (1)
DatenbankenOracle Internet Directory
Enterprise User Enterprise Rollen Globale Rollen Lokale Rollen
© 2010
Enterprise User Enterprise Rollen Globale Rollen Lokale Rollen
RoleUserLocal2
RoleDbaGlobalRoleEnterpriseDba
RoleUserLocal1
DBA
RoleUserGlobal2
RoleUserGlobal1
RoleEnterpriseUser
User
DBA
RESOURCE
Oracle Enterprise User Security 11g mit Server Chaining8
Rollen und Privilegien (2)
� Einer globalen Rolle können zugewiesen werden� Privilegien� Lokale Rollen� Keine globalen Rollen
� Enterprise Rollen enthalten� eine oder mehrere globale Rollen
© 2010
� eine oder mehrere globale Rollen� aus einer oder mehreren Datenbanken
� Enterprise Rollen können zugewiesen werden an� Einzelne Benutzer� Gruppen
Oracle Enterprise User Security 11g mit Server Chaining9
Authentisierung
� Datenbank authentisiert sich gegen OID
� Benutzer authentisieren sich nicht gegen OID
� Datenbank authentisiert die Benutzer mittels� Passwort� Kerberos
© 2010
� Kerberos� SSL
� SASL Bind zwischen DB und OID, falls kein SSL konfiguriert ist� Simple Authentication and Security Layer� Ähnlich SSL� Authentisierung mit Passwort aus Wallet
Oracle Enterprise User Security 11g mit Server Chaining10
Oracle Passworte und Passwort Verifier
� OID speichert Passworte im Attribut "userPassword"� Authentisierung eines OID Benutzers gegen OID
� Oracle Komponenten speichern Password Verifier in� orclPassword
� nur für "O3LOGON Verifier" für Enterprise User� synchronisiert mit userPassword
© 2010
� synchronisiert mit userPassword� authPassword
� multivalued� synchronisiert mit userPassword� dasselbe Passwort mit unterschiedlichen Verfahren gehasht
� orclPasswordVerifier� multivalued� nicht synchronisiert mit userPassword
Oracle Enterprise User Security 11g mit Server Chaining11
Client OID
Ablauf der AuthentisierungEUS DB
1. User meldet sich an
2. DB kennt User nicht, kennt aber globale User
3. DB meldet sich an OID an
4. OID authentisiert DB
© 2010
5. DB sucht User im OID anhand des Nicknamesund liest orclPassword des Users
7. DB vergleicht orclPassword und gehashtesübergebenes Passwort des Users
10. Session mit globalen Rollen und external_name
9. OID liefert EUS relevante Daten des Users
6. OID liefert orclPassword des Users
8. DB liest EUS relevante Daten des Users
4. OID authentisiert DB
Oracle Enterprise User Security 11g mit Server Chaining12
Authentisierung eines Benutzers
[oracle@dbserver1 ~]$ sqlplus user9/user9@db10a
SQL> select * from session_roles;ROLE------------------------------GR_DBADBA
© 2010
SQL> select user from dual;USER
------------------------------USERSHARED
SQL> select sys_context('userenv', 'external_name') from dual;SYS_CONTEXT('USERENV','EXTERNAL_NAME')--------------------------------------
cn=User9,cn=Users,dc=tvd
Oracle Enterprise User Security 11g mit Server Chaining13
Agenda
� Enterprise User Security
� Systemarchitektur
� Administration
� Server Chaining zum Active Directory
© 2010Oracle Enterprise User Security 11g mit Server Chaining
Daten sind immer im Spiel.
� Server Chaining zum Active Directory
� Probleme und Widrigkeiten
� Diskussion
14
Systemarchitektur (1)
Datenbanken mit EUS Active Directory
- Authentisierung- Schema Mapping- Enterprise Roles Server Chaining
© 2010Oracle Enterprise User Security 11g mit Server Chaining
Oracle Internet Directory
RepositoryOID
15
Systemarchitektur (2)
Admin Console
EM
AdminServer
ODSM
WLS_ODS2
OID1 OID2
OID_INST2
Admin Console
EM
AdminServerVirt. OidAdminVirt
ODSM
WLS_ODS1
OID1 OID2
OID_INST1
© 2010Oracle Enterprise User Security 11g mit Server Chaining
IdmHost2, Virtuell: IdmVirt
DatenbankenRepository
RAC Datenbank
1521
IdmHost1, Virtuell: IdmVirt
Load Balancer
LDAP 3060LDAPS 3131
RacHost1:1521:OIDDB1^RacHost2:1521:OIDDB2@
OIDDB
HTTP 7006
HTTP 7001
16
2-WayLDAP
- Authentisierung- Schema Mapping- Enterprise Roles
Server Chaining
High Availability
Datenbanken mit EUS Active Directory
© 2010
Oracle Internet Directory
LDAPReplication
Repository A Repository B
OID A OID B
Oracle Enterprise User Security 11g mit Server Chaining17
High Availability - 2 Way LDAP Replication
� Replication Server auf OID B liest Änderungen von OID A
� Konfiguration über Replication Wizard in ODSM
© 2010Oracle Enterprise User Security 11g mit Server Chaining18
Quelle: Oracle
Agenda
� Enterprise User Security
� Systemarchitektur
� Administration
� Server Chaining zum Active Directory
© 2010Oracle Enterprise User Security 11g mit Server Chaining
Daten sind immer im Spiel.
� Server Chaining zum Active Directory
� Probleme und Widrigkeiten
� Diskussion
19
Administration
� Oracle Directory Services Manager ODSM
� Oracle Enterprise Manager Fusion Middleware Control 11g
� Weblogic Server Administration Console
� Oracle Enterprise Manager Grid Control / Database Control
© 2010
� Oracle Enterprise Manager Grid Control / Database Control
Oracle Enterprise User Security 11g mit Server Chaining20
Oracle Directory Services Manager (1)
© 2010Oracle Enterprise User Security 11g mit Server Chaining21
Oracle Directory Services Manager (2)
© 2010Oracle Enterprise User Security 11g mit Server Chaining22
Enterprise Manager Fusion Middleware Control (1)
© 2010Oracle Enterprise User Security 11g mit Server Chaining23
Enterprise Manager Fusion Middleware Control (2)
© 2010Oracle Enterprise User Security 11g mit Server Chaining24
Weblogic Server Administration Console (1)
© 2010Oracle Enterprise User Security 11g mit Server Chaining25
Weblogic Server Administration Console (2)
© 2010Oracle Enterprise User Security 11g mit Server Chaining26
Grid Control (1)
© 2010Oracle Enterprise User Security 11g mit Server Chaining27
Grid Control (2)
© 2010Oracle Enterprise User Security 11g mit Server Chaining28
Grid Control (3)
© 2010Oracle Enterprise User Security 11g mit Server Chaining29
Agenda
� Enterprise User Security
� Systemarchitektur
� Administration
� Server Chaining zum Active Directory
© 2010Oracle Enterprise User Security 11g mit Server Chaining
Daten sind immer im Spiel.
� Server Chaining zum Active Directory
� Probleme und Widrigkeiten
� Diskussion
30
EUS und externe Verzeichnisse (1)
© 2010Oracle Enterprise User Security 11g mit Server Chaining31
Quelle: Oracle
EUS und externe Verzeichnisse (2)
� Nutzung von Daten aus vorhandenen Verzeichnissen� Active Directory� Sun ONE, eDirectory, OpenLDAP
� Synchronisation von Benutzern und Gruppen mit vorhandenem Verzeichnis� Directory Integration and Provisioning (DIP)
© 2010
� Server Chaining des OID� Active Directory mit Kerberos� Active Directory Passwort (neu in 11g)
� Active Directory Passwort Filter� Sun ONE nur mit Passwort
� Oracle Virtual Directory OVD
� EUS direkt mit AD ist nicht zertifiziert
Oracle Enterprise User Security 11g mit Server Chaining32
Authentication 3 rd Party Directory
DB OID OVD(Does Not Require DIP or DAS)
Passwordorapassword
AD + DIP + DAS 9.2.0.3+ 10g+
Passwordorapassword
AD + DIP + Password Filter
9.2.0.3+ 10g+
Passwordauthpassword
SUN + DIP 10.1+ 10.1.4
Kombinationsmöglichkeiten
© 2010
authpassword
Passwordauthpassword
SUN + OID Server Chaining
10.1+ 10.1.4
Certificate 8i+ 9i+
Kerberos AD + OID Server Chaining
10.1+ 10.1.4
Passwordauthpassword
AD with oidpwdcn DLL
10.1+ 10.1.4.2
Passwordauthpassword
Sun 10.1+ 10.1.4.2
Kerberos AD 10.1+ 10.1.4.2
Quelle: Oracle
Oracle Enterprise User Security 11g mit Server Chaining33
Server Chaining zu Active Directory mit Kerberos
© 2010
Quelle: Oracle
Oracle Enterprise User Security 11g mit Server Chaining34
Server Chaining - Vorteile und Nachteile
+ Vorteile
� Kerberos Authentisierung
� Passwort nur in Active Directory gespeichert
� Keine Passwortpolicy für EUS User im OID erforderlich
© 2010
Keine Passwortpolicy für EUS User im OID erforderlich
- Nachteile
- Nur für Datenbankversionen ab 10.1
Oracle Enterprise User Security 11g mit Server Chaining35
Server Chaining (1)
© 2010Oracle Enterprise User Security 11g mit Server Chaining36
Server Chaining (2)
� Warum ist nur "Server Chaining Search" aktiviert?
© 2010Oracle Enterprise User Security 11g mit Server Chaining37
Server Chaining (3)
© 2010Oracle Enterprise User Security 11g mit Server Chaining38
Server Chaining (4)
� Active Directory Benutzer
© 2010Oracle Enterprise User Security 11g mit Server Chaining39
Server Chaining (5)
© 2010Oracle Enterprise User Security 11g mit Server Chaining40
Server Chaining (6)
� Active Directory Gruppe
© 2010Oracle Enterprise User Security 11g mit Server Chaining41
Authentisierung eines Benutzers mit Kerberos
C:\> sqlplus /@db10a
SQL> select * from session_roles;ROLE------------------------------GR_DBADBA
© 2010Oracle Enterprise User Security 11g mit Server Chaining42
SQL> select user from dual;USER
------------------------------USERSHARED
SQL> select sys_context('userenv', 'external_name') from dual;SYS_CONTEXT('USERENV','EXTERNAL_NAME')--------------------------------------
cn=User1,cn=ad,cn=Users,dc=tvd
Agenda
� Enterprise User Security
� Systemarchitektur
� Administration
� Server Chaining zum Active Directory
© 2010Oracle Enterprise User Security 11g mit Server Chaining
Daten sind immer im Spiel.
� Server Chaining zum Active Directory
� Probleme und Widrigkeiten
� Diskussion
43
Bekannte Probleme und Widrigkeiten (1)
© 2010Oracle Enterprise User Security 11g mit Server Chaining44
Bekannte Probleme und Widrigkeiten (2)
� Enterprise Rollen sind nicht in Grid Control verwaltbar� Den Einträgen im OID fehlt beim Server Chaining mindestens eine
Objektklasse� Vom Kunden eskaliert� Diskussion zwischen Oracle Entwicklung und Product Management
� Oracle Warehouse Builder
© 2010
� Oracle Warehouse Builder� liefert Fehler "Can not contact LDAP server", wenn OID nicht
verfügbar ist� liefert Fehler "Nickname not found", wenn OID verfügbar ist� Verbindungstest mit "scott/tiger"� Problem kommuniziert und akzeptiert ☺
Oracle Enterprise User Security 11g mit Server Chaining45
Empfehlung
� Rollenmodell erstellen� Gute Gelegenheit zur Bereinigung „historisch gewachsener
Rollenstrukturen“
� Mit EUS für wenige DBAs starten
� Server Chaining mit Active Directory
© 2010
� Server Chaining mit Active Directory
� Allgemeine Datenbankbenutzer einbeziehen
Oracle Enterprise User Security 11g mit Server Chaining46
Kunden (1)
� Kunde 1� EUS mit Server Chaining zu Sun ONE� Proof of Concept erfolgreich� Rollout für 150 Datenbanken und 12 DBAs
� Kunde 2� EUS mit Synchronisation von Active Directory
© 2010
� EUS mit Synchronisation von Active Directory� Proof of Concept erfolgreich� Rollout für 100 Datenbanken und 4 DBAs� Rollout für allgemeine Datenbankbenutzer geplant
� Kunde 3� EUS mit SSL Authentisierung der Benutzer� Proof of Concept erfolgreich
Oracle Enterprise User Security 11g mit Server Chaining47
Kunden (2)
� Kunde 4� EUS mit Server Chaining zu Active Directory� Kerberos� Weblogic 10.3.3.0� OID 11.1.1.3� Rollout für 200 Testdatenbanken und 6 DBAs erfolgreich
© 2010
� Rollout für 200 Produktivdatenbanken verzögert sich wegen eines Kerberos-Problems, für das ein Patch installiert werden muss� Darf nur innerhalb des firmeninternen Updateverfahrens ausgeführt
werden
Oracle Enterprise User Security 11g mit Server Chaining48
Fazit
� Enterprise User Security ist ein Baustein zur Compliance
� Enterprise User Security vereinfacht die Verwaltung von Benutzern und Rollen
� Die Anbindung an Active Directory ist kein Hexenwerk
© 2010
� Für eine nahtlose Integration müssen die aktuellsten Versionen von OID und DB eingesetzt werden
� Es muss ein Rollenmodell her
„Wir sind nicht nur verantwortlich für das, was wir tun, sondern auch für das, was wir nicht tun“ (Voltaire)
Oracle Enterprise User Security 11g mit Server Chaining49
?
� � � Vielen Dank!
?www.trivadis.com
Basel Bern Lausanne Zürich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg München Stuttgart Wien