Vorlage Oracle Enterprise User Security Mit Server Chaining · Oracle Enterprise User Security 11g...

Preview:

Citation preview

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

Recommended