doag 2014 - enterprise user security von der business rolle bis in die datenbank
TRANSCRIPT
Enterprise User Security Von der Business Rolle bis in die Datenbank
Andre Lünsmann Barmenia Versicherungen Teamleiter IT-DB/Change
Marcel Pils ACT Unternehmensgruppe Leiter Data Management
ACT Unternehmensgruppe ● Marcel Pils
● Leiter Data Management ● Senior Database Consultant ● 14 Jahren Oracle DB Erfahrung ● [email protected]
● ACT Unternehmensgruppe ● Seit 1982 tätig in DACH Region ● 175 qualifizierten Mitarbeitern ● 17 Millionen € jährlicher Umsatz ● Sitz in Niederkassel bei Bonn ● www.actgruppe.de/service/
Barmenia Versicherungsgruppe
Versicherungsvereine auf Gegenseitigkeit Aktiengesellschaft
Verbundene Unternehmen nach § 18 Abs. 2 AktG
100% Tochter der BK
Barmenia Kranken
Barmenia Leben
Barmenia Allgemeine
100%
Toc
hter
der
BK
ADCURI GmbH
100% Tochter der B
A
Barmenia Beteiligungsgesellschaft mbH
Die Barmenia zählt zu den großen unabhängigen Versicherungs-gruppen in Deutschland.
Leben Kranken
Allgemeine
Anteil: 11 % (193,4 Mio. Euro)
Anteil: 5 % (90,0 Mio. Euro)
Anteil: 84 % (1.485,2 Mio. Euro)
Berechtigungspflege und das reale Leben
Januar Februar März April Mai Juni Juli August September Oktober November Dezember
erster Arbeitstag Arbeitsvertrag am 24.03.2014
zum 01.07.2014
IDM Lifecycle
Mai Juni Juli
| 6
Reifegrad 1 Initial Level
• diverse Quelle für Identitäten mit (teil)automatisierten Synchronisationsmechanismen mit Duplikaten/Inkonsistenzen
• Unsystematische und schwer planbare Bereitstellung von Usern und Rechten
Reifegrad 2 Repeatable Level
• Identitäten werden in wenigen Systemen konsistent gepflegt • Die wichtigsten IDM-Prozesse sind eingeführt • Die Erbringung der Dienstleistung ist planbar/wiederholbar
Reifegrad 3 Defined Level
• Identitäten werden zentral verwaltet • IDM-Service Prozesse sind dokumentiert, standardisiert und
weitgehend automatisiert
Reifegrad 4 Managed Level
• Ein User Self Service ist vorhanden • Die Sicherstellung konsistenter Pflege der Identitäten,
Rechte und Rollen ist gegeben • Es erfolgt keine Rechtevergabe mehr außerhalb der
zentralen Verwaltungsstelle
Reifegrad 5 Optimizing Level
• Die Einhaltung der Compliance Anforderungen ist nachweisbar • Identitäten, Rechte und Rollen können bitemporal verwaltet
werden • Die Prozesse sind vollständig automatisiert • Alle Rechte können auf die Geschäftsregeln gemappt werden • Inkonsistenzen werden erkannt und behoben bzw. verhindert
Nachher
Vorher
Identity & Access Management
Projektanforderungen
§ Zentralisierte Verwaltung der Authentifizierung und Authorisierung § Active Directory als zentrale Identitätsquelle § Passwortbasierte Authentifizierung
§ kleinster gemeinsamer Nenner für alle Tools § Reporting der Berechtigungen
§ Compliance, Rezertifizierung § Unterstützung bei der Konsolidierung
§ Bereinigung der Zugriffsrechte § Bildung von Business Rollen
§ Nachträgliche Erweiterung § Provisionierung, Reconcilation § weitere Identitätsquellen § Single Sign On
Oracle Lösungsportfolio EUS n Enterprise Edition Feature n Global DB User n Global DB Roles n AD Anbindung n Definition der Fachrollen n Mapping auf AD Gruppen
CUA4DB n Oracle Identity Manager n DB, AD, .. Connectoren n ID Syncronisierung n Regelwerke definieren
n Provisioning n Workflows n Self Service n Reports
OIA n Import der ID Quelldaten n Abbildung der
Unternehmenshierarchie n Erstellung von Reports n Ergebnisauswertungen
n Zertifizierungen n Audits
Produktauswahl für POC
EUS OIM Prio
Zentralisierte User und Rollen Verwaltung Ja Ja 1
Microsoft Active Directory als Quelle für User und Rechte Ja Ja 1
Authentifizierung per User/Password Ja Ja 1
Authentifizierung per Kerberos, PKI Ja Ja 2
Erweiterbar auf Non Oracle Datenbanken Nein Ja 2
Audit & Compliance Ready (Reporting) - aktiv per OIM oder reaktiv per OIA
OIA Ja 1
Password Self Service UHD Ja 3
Workflow und Policy basiertes Benutzer Mngt. UHD Ja 3
Schnittstelle zum Provisioning & Reconcilation - bei EUS mittels Active Directory Anbindung an OIM
OIM Ja 2
Schnittstelle zum Oracle Identity Analytics Ja Ja 1
Keep It Simple and Smart (KISS) - EUS = DB Anbindung über globale User/Rollen und Proxy User in der DB - OIM = großer Funktionsumfang, zusätzliche Connectoren, Synchronisierung, Regelwerke
Ja Nein 2
Geringer Implementierungsaufwand (Zeit + Kosten) - EUS = DB Anbindung ca. 1/2h, - OIM = DB Anbindung > 1 Tag, zusätzliche Personalressourcen
gering hoch 2
UHD = User Help Desk, EUS = Enterprise User Security, OIM = Oracle Identity Manager, OIA = Oracle Identity Analytics
Enterprise User Security Varianten
Oracle Internet Directory (OID) Active Directory
CTX
EUS enabled Database
PWD Filter DB
DIP (Sync) / Chaining Password
Authentification
Authorisation
Oracle Virtual Directory (OVD)
CTX
Active Directory
PWD Filter
Read Write
EUS enabled Database
Other Directories / SAP HR
Password Authentification
Authorisation
Bedenken der AD Administration
§ Kollision mit anderen Schemaerweiterung? − Oracle Schema nicht zertifiziert − Zertifizierung seitens Oracle nicht geplant + Enthält ANSI „Root Object Identifier“
(„Oracle Corporation Directory Object“ OID 2.16.840.1.113894) http://www.oid-info.com/get/2.16.840.1.113894
§ Microsoft Support Probleme? − Password Filter DLL nicht zertifiziert − Zertifizierung seitens Oracle nicht geplant + Einsatz entsprechend Microsoft API Beschreibung
http://msdn.microsoft.com/en-us/library/windows/desktop/ms721766%28v=vs.85%29.aspx + Oracle validierte Active Directory Versionen
(OUD 11.1.2.1 à MS AD 2008 R2; OUD 11.1.2.2 à MS AD 2012)
Bedenken der AD Administration
§ Konsistente Installation ohne Installer? + Nur 1 DLL + 1 Registry Key Wert
§ Integration in Windows-Dateischutz? − Windows File Protection nur für OS-DLLs + Regelmäßiges Monitoring des Password Filters + Restore nur einer DLL Datei
§ Einbindung in WinSxS DLL-Versionskontrolle? + Microsoft Interface unverändert seit Windows NT + Januar 2010 letzte DLL-Änderung (64 Bit Version) + Unterschiedlicher DLL Versionen nicht erforderlich + Laden neuer DLL Version à Server Restart + Abhängigkeiten nur zu Windows Server DLLs
Enterprise User Security Varianten
Oracle Unified Directory (OUD)
CTX
Active Directory
PWD Filter
Read Only
EUS enabled Database
Password Authentification
Authorisation
(ab Version 11.1.2.1)
Oracle Virtual Directory (OVD)
CTX
Active Directory
PWD Filter
Read Only
EUS enabled Database
Password Authentification
Authorisation
Other Directories / SAP HR
Oracle Internet Directory (OID)
CTX
DB
Konfiguration am Active Directory
§ Schemaerweiterung für Password Attribut
§ PWD Filter DDL auf AD Controler kopieren
§ Registry-Key auf AD Controler erweitern
§ Benutzer muss initial sein Passwort ändern
# Source: $OUD_HOME/config/EUS/ActiveDirectory/extendAD!!java –cp . extendAD !–h <Schema-Master-ADControler>.lan.local –p 389 \!
! ! !–D <Schema-Admin>@lan.local –w <Admin-Passwort> \!! ! !–AD “dc=lan,dc=local” –commonattr!
# Source: $OUD_HOME/config/EUS/ActiveDirectory/win64/oidpwdcn.dll!!copy oidpwdcn.dll \WINDOWS\system32\ !
Open Registry Tree !HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\!Edit RegKey !Notification Packages!Add value !oidpwdcn!
Big Picture
Multimaster Replication
User / Password Login
Load Balancer
AD Controler 3
Password Filter DLL
Oracle DB
AD Controler 2
Password Filter DLL
AD Controler 1
Password Filter DLL
OUD 2
EUS Context Local Datastore
OUD 1
EUS Context Local Datastore
Authentication / Authorisation
Wallet
Sqlnet.ora Ldap.ora
SPfile
LDAP_DIRECTORY_ACCESS = PASSWORD LDAP_DIRECTORY_SYSAUTH = YES
Global Schema User
Global Roles
Enterprise Roles
User
Gruppen
User
Gruppen
User
Gruppen
Enterprise Roles
1. In
stal
latio
n 3.
Con
figur
atio
n 2.
Inte
grat
ion
EUS Databases EUS Databases
TNS Services TNS Services
11.2.0.4
11.1.2.1 11.1.2.1
Apache Directory Studio
Enterprise Manager Cloud Control
Intuitive Abbildung von Geschäftsregeln
§ Services + Organisationseinheiten (Business Role) § Verzweigungen + Vererbungen § Berücksichtigung von Mehrfachbelegungen § Active Directory als „Single Point of Declaration“
Team DBA
Nutzung App1
Wartung App2
DB Prod read Schema A
DB Prod write Schema B
DB Prod DBA
DB Prod read Schema B
Role RO_A
Role RO_B
Role RW_B
Role DBA
Business Role Resource Role
Nutzung App2
OU
D E
nter
pris
e R
oles
§ Keine Verschachtelung von AD Gruppen möglich! § Direkte Zuordnung der AD User erforderlich
§ Mehr AD-Gruppen pro User § Wo erfolgt das Mapping? (Business Role à Resource Role)
§ User Self Service?, OUD?, Datenbank?
§ Enhancement nicht geplant
§ Programmierung eigener OUD Workflows?
EUS Einschränkungen für Active Directory
User Self Service Business Role
Active Directory Gruppe
OUD Enterprise Role
Datenbank Global/Local Role
Administration
Skripte § Perl, Shell
OUD Binaries § Dsconfig § Dsreplication § Backup § Ldapsearch EUSM CLI
Oracle Directory Server Manager (ODSM)
Weblogic Server Administration Console
Enterprise Manager Fusion Middleware Control
OUD / EUS
Apache Directory Studio
Enterprise Manager Cloud Control
Console
4 GB+ RAM 3 GB+ Disk
500 MB RAM 200 MB Disk
Client
Server
2 GB RAM 2 GB Disk
EUSM Security Leak
§ Enterprise User Security Manager (EUSM) § Command Line Interface zur EUS Administration § Oracle Database ab 11gR1 § Umfangreich und intuitiv § Bisher nur im MOS dokumentiert (ID 1085065.1)
§ Passwortübergabe per Parameter § Enhancement Requests 14704668 + 19704624
eusm addGlobalRole realm_dn="dc=idm,dc=lan,dc=local“ ldap_host=oud.unix.lan ldap_port=1389 \ !!domain_name=OracleDefaultDomain enterprise_role="e-myapp" global_role="g-myapp" \!!database_name="mydb" dbuser="sys" dbuser_password="syspwd" dbconnect_string="mydb“ \!
!ldap_user_dn="cn=Directory Manager" ldap_user_password="dmpwd“!!ps –ef | grep "eusm.jar“ | grep -v grep!!oracle 9050 9049 0 18:31 pts/2 00:00:00 /app/oracle/product/11.2.0/db112032/jdk/jre//
bin/java -classpath /app/oracle/product/11.2.0/db112032/jdk/jre//lib/rt.jar:/app/oracle/product/11.2.0/db112032/jdbc/lib/ojdbc5.jar:/app/oracle/product/11.2.0/db112032/rdbms/jlib/eusm.jar oracle.security.eus.util.ESMdriver addGlobalRole realm_dn="dc=idm,dc=lan,dc=local“ ldap_host=oud.unix.lan ldap_port=1389 domain_name=OracleDefaultDomain enterprise_role="e-myapp" global_role="g-myapp" database_name="mydb" dbuser="sys" dbuser_password="syspwd" dbconnect_string="mydb" ldap_user_dn="cn=Directory Manager" ldap_user_password="dmpwd"!
Enterprise User Auditing
§ Enterprise User = Shared Schema User in der DB # Enterprise User Connect!SQL> conn "240531"!Enter password:!Connected.!!!# Session Environment!SQL> show user!!USER is "GLOBAL_TEST_USER“!!!SQL> select ! 1 sys_context('userenv','external_name')! 2 from dual;!!SYS_CONTEXT('USERENV','EXTERNAL_NAME')!----------------------------------------!cn=240531,ou=User,dc=idm,dc=lan,dc=local!!
# Activate DML Auditing!SQL> conn / as sysdba!SQL> audit insert table, delete table, ! 1 update table by "GLOBAL_TEST_USER" by access;!Audit succeeded.!!# Execute DML !SQL> conn "240531"!SQL> insert into table1 values (1,'eins');!SQL> delete from table1 where id=1;!SQL> disconnect;!!# Check Audit Entries!SQL> select a.sessionid,a.entryid,aa.action, ! 1 aa.name, a.userid,a.comment$text! 2 from sys.audit_actions aa, sys.aud$ a! 3 where a.action# = aa.action ! 4 and a.userid='GLOBAL_TEST_USER'! 5 order by sessionid desc,entryid desc;!!
Enterprise User Session Informationen
§ Enterprise User = Shared Schema User in der DB § Anlegen eines Logon-Triggers
§ Sichtbar in V$SESSION
CREATE OR REPLACE TRIGGER EUS_LOGON_TRIGGER!AFTER LOGON ON DATABASE!declare! l_client_info varchar2(4000);! l_ad_user varchar2(4000);!BEGIN! dbms_application_info.read_client_info(l_client_info);! if length(l_client_info) > 0 then! l_client_info := ', '||l_client_info;! end if;! l_ad_user := sys_context('userenv','external_name');! l_ad_user := regexp_substr(l_ad_user,'[^.*(cn=)][^(,)]*');! dbms_application_info.read_client_info(l_ad_user||l_client_info);!End;!
select sid, username, schemaname, client_info ! from v$session ! where username in ('GLOBAL_TEST_USER', 'LOCAL_TEST_USER') order by 1!
Enterprise Manager Plug-in for OUD
§ Lizenzierung § „Mgmt. Pack Plus for Identity Management“
§ Dokumentation Version 12.1.0.1.0 § http://docs.oracle.com/cd/E24628_01/nav/plugins.htm
§ Deployment im EM12c § Proxy Server | Directory Server | Replication Gateway
!
Enterprise Manager Plug-in for OUD
§ Discovery als „Proxy Server“ § 572 Metriken in 33 Gruppen § Performance, Resource Usage, Remote Server
Remote LDAP Store
Kein local LDAP Store ! (OracleContext)
Enterprise Manager Plug-in for OUD
§ Discovery als „Directory Server“ § Unterstützt local LDAP Stores (OracleContext) § Metrik Evaluation Error à Keine Werte § Für Proxy Instanz nicht einsetzbar!
!
!
Monitoring des Oracle Unified Directory
§ Enterprise Manager Plug-in for OUD § Erfordert Lizenz „Mngt. Pack Plus for Identity Management“ § Nicht ausreichend für OUD Proxy mit local LDAP Store § Enhancement Request – RFE BUG 18717725
§ Geplant für nächstes Release § Release Date unbekannt
§ Skript basiert für CheckMK / Foglight § Perl Skripte
§ LDAP search à „cn=replication,cn=monitor“ § LDAP search à „OracleContext Tree“ § http[s] socket / ldap connect check
§ Shell Skripte § ps, ldapsearch, dsreplication, dsconfig
Entwicklung der IDM Produkte
? ?? ???
Enterprise User Security
Oracle Identity Manager
Oracle Unified Directory
Oracle Identity Analytics
Oracle Identity Governance Roadmap
Convergence
Product Suites + Lizenzmetriken
?
Nächste Schritte / Ideen
§ Rechte Mining und Reporting § Bereinigung der ID Quellsysteme § Konsolidierung / Provisionierung von ID Quellsystemen § Neugestaltung der Prozesse / Automationen / Standards § Rechte und Rollen mit den Geschäftsregeln mappen
Oracle Identity Analytics
Oracle Identity Analytics
Oracle Identity Analytics
Oracle Identity Analytics
Verweise
§ Oracle Unified Directory Dokumentation § http://www.oracle.com/technetwork/middleware/id-mgmt/documentation/index.html § MOS 1418884.2 – Information Center : Overview Oracle Unified Directory (OUD) § MOS 1675625.1 – OUD-EUS configuration steps
§ Oracle Unified Directory EM12c Plugin Dokumentation § http://docs.oracle.com/cd/E24628_01/nav/plugins.htm
§ EUS Dokumentation § http://docs.oracle.com/cd/E11882_01/network.112/e10744/toc.htm § MOS 1376365.1: Master Note For Enterprise User Security
§ EUSM Dokumentation § MOS 1085065.1 – EUSM, CLI Tool For EUS Administration and Some EUS Good to Knows
§ Directory Services Integration with Database Enterprise User Security § http://www.oracle.com/technetwork/database/security/dirsrv-eus-integration-133371.pdf
§ Enhancement Requests § RFE BUG 18717725: EM12C OUD PLUGIN - NEEDS TO MONITOR THE LOCAL LDAP DATA STORE § RFE BUG 14704668: EUS COMMAND LINE TOOL EUSM SHOULD HAVE AN OPTION NOT TO USE
PLAINTEXT PASSWORDS § RFE BUG 19704624: EUSM SHOULD NOT USE USERNAME AND PASSWORD AS COMMAND LINE
ARGUMENTS
Jetzt sind Sie dran ...