1
<Insert Picture Here> Transparent Data Encryption in Oracle 11gR2 Andreas Becker Principal Member Technical Staff
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 3
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 4
Transparente Datenverschlüsselung TDE= Transparent Data Encryption Def.: Transparent data encryption is a feature that enables encryption of individual database columns before storing them in the datafile, or enables encryption of entire tablespaces. If users attempt to circumvent the database access control mechanisms by looking inside datafiles directly with operating system tools, transparent data encryption prevents such users from viewing sensitive information. 5
TDE - Begriffe TDE bezeichnet allgemein die Transparente Verschlüsselung von Daten in der Oracle Datenbank Es gibt zwei Typen von TDE Ab 10g: TDE Column Encryption Verschlüsseln von Spalten einer Tabelle Ab 11g: TDE Tablespace Encryption Verschlüsseln des ganzen Tablespace ( Encrypted Tablespace ) 6
Transparente Datenverschlüsselung = Verschlüsselt speichern Schutz vor unbefugtem Lesen der Daten Über Betriebssystem/Filesystem Über Blockdumps,... Es geht NICHT darum, das Lesen oder Ändern über die SQL-Schnittstelle zu unterbinden Es geht um Verschlüsselung auf der Platte, im Backup, im Dump-File-Set Schutz vor Insidern Schutz z.b. bei entsorgten Platten Schutz z.b. beim Verlust auf dem Transport ins Schließfach 7
Transparente Datenverschlüsselung vs. Database Vault Transparente Datenverschlüsselung OS> sqlplus / as SYSDBA SQL> SELECT * from <SAPSR3>.<TABLE>;... OK... Database Vault OS> sqlplus / as SYSDBA SQL> select * from <SAPSR3>.<TABLE>; ORA-01031: insufficient privileges Schützt sensible Daten der SAP-Anwendung vor unberechtigtem Zugriff durch hochprivilegierte Datenbankbenutzer (DBAs) 8
Transparente Datenverschlüsselung Transparent Einfach Sicher ohne Änderung der Anwendung Administration Sichere Verschlüsselung 9
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 10
Master Key und Tabellenschlüssel Master Key im PKCS#12 Wallet Tabellenschlüssel verschlüsselt durch Master Key (Walletkann auch für Secure Backup genutzt werden) Tabellenschlüssel verschlüsselt Daten 11
Transparent Data Encryption (TDE) Release 10.2 Anwendung SQL-Schnittstelle entschlüsselt Daten ASO Netzwerk- Verschlüsselung Daten werden verschlüsselt auf die Platte geschrieben Daten sind verschlüsselt im Backup Verschlüsseln von Tabellenspalten Unterstützte Datentypen CHAR NCHAR VARCHAR2 NVARCHAR2 NUMBER BINARY_DOUBLE BINARY_FLOAT DATE TIMESTAMP RAW Übernimmt das Key Management 12
TDE 10.2 - Nicht unterstützte Features Foreign Keys LOBs Logical Standby Transportable Tablespace Oracle Streams Synchrones / asynchrones Change Data Capture (CDC) LogMiner Direct Path Insert Materialized View Logs 13
TDE einsetzen Konfigurationsschritte in 10.2 1. Wallet mit Masterkey anlegen Security DBA Separation of Duty (SoD) Aufgabenbereiche trennen 2. Tabellen und Spalten mit sensitiven Daten identifizieren 3. Prüfen, ob der Datentyp unterstützt ist 4. Tabellen verschlüsseln 5. Datenfiles von alten Tablespaces sicher löschen Ghost Copies SQL> DROP TABLESPACE INCLUDING CONTENTS KEEP DATAFILES 14
TDE einsetzen - Vorbereitung In sqlnet.ora WALLET-Speicherort angeben ENCRYPTION_WALLET_LOCATION = (SOURCE = (METHOD=FILE)(METHOD_DATA= (DIRECTORY= $ORACLE_HOME/dbs))) Initialisieren des Master Key durch ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY <wallet passwort>" 15
TDE einsetzen Daten in Tabellenspalten verschlüsseln CREATE TABLE employee ( first_name VARCHAR2(128), last_name VARCHAR2(128), empid NUMBER ENCRYPT NO SALT, salary NUMBER(6) ENCRYPT USING '3DES168' ); ALTER TABLE employee MODIFY ( first_name ENCRYPT ); Online Redefinition 16
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 17
Transparent Data Encryption (TDE) Anwendung Block wird beim Lesen entschlüsselt ASO Netzwerk- Verschlüsselung Daten werden verschlüsselt auf die Platte geschrieben Daten sind verschlüsselt im Backup Verschlüsseln von Tablespaces Tablespaces nicht nachträglich zu ver- oder entschlüsseln TDE-Wallet muß vorhanden und geöffnet sein Transport vorhandener Daten in verschlüsselte Tablespaces mit DATA PUMP, CTAS, ALTER TABLE... MOVE Verwendet immer SALT Verschlüsselung wirksam auch für REDO-Einträge, UNDO und TEMPORARY SEGMENTE Keine Einschränkungen für Datentypen Unterstützt z.b. sämtliche Segment-Typen Übernimmt das Key Management 18
Konfigurationsschritte für Tablespace- Verschlüsselung 1. Wallet mit Masterkey anlegen 2. Verschlüsselte Tablespaces anlegen 3. Tabellen und Indizes (!) mit sensiblen Informationen in verschlüsselte Tablespaces übertragen 4. Datenfiles von alten Tablespaces sicher löschen Ghost Copies SQL> DROP TABLESPACE INCLUDING CONTENTS KEEP DATAFILES 19
TDE einsetzen - Vorbereitung In sqlnet.ora WALLET-Speicherort angeben ENCRYPTION_WALLET_LOCATION = (SOURCE = (METHOD=FILE)(METHOD_DATA= (DIRECTORY= $ORACLE_HOME/dbs))) Initialisieren des Master Key durch ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY <wallet passwort>" 20
Verschlüsselten Tablespace anlegen BR1089I Creating tablespace PSAPSR3TESTENC... BR0280I BRSPACE time stamp: 2010-04-30 16.36.03 BR1016I SQL statement 'create tablespace PSAPSR3TESTENC extent management local autoallocate segment space management auto encryption default storage (encrypt) datafile '/oracle/qo1/sapdata4/sr3testenc_1/sr3testenc.data1' size 20M autoextend off' executed successfully BR1060I Tablespace PSAPSR3TESTENC created successfully with file: /oracle/qo1/sapdata4/sr3testenc_1/sr3testenc.data1 20M 21
Performancevergleich TDE Spaltenverschlüsselung Overhead nur bei SELECT/INSERT von verschlüsselten Spalten. Kein Overhead bei unverschlüsselten S. TDE Tablespace Verschlüsselung Geringer Performance Overhead ~5-8% (abh. von der Anwendung) Overhead beim Lesen und Schreiben von Blöcken von verschlüsselten Tablespaces Gesamtoverhead abh. von Anzahl verschlüsselter Spalten und Häufigkeit des Zugriffs Overhead f. Entschlüsseln/Verschlüsseln ~5% 22
Speichermehrbedarf TDE Spaltenverschlüsselung TDE Tablespace Verschlüsselung Overhead f. verschlüsselte Daten Kein Speicher-Overhead Erweiterung auf 16 Byte (Vielf.) MAC: + 20 Byte Integritätsprüfung NOMAC SALT: +16 Byte Maximum: +52Byte / Wert 23
Dictionary Views TDE Spaltenverschlüsselung ALL_ENCRYPTED_COLUMNS DBA_ENCRYPTED_COLUMNS USER_ENCRYPTED_COLUMNS TDE Tablespace Verschlüsselung ALL_TABLESPACES.ENCRYPT DBA_TABLESPACES.ENCRYPT USER_TABLESPACES.ENCRYPT V$ENCRYPTED_TABLESPACES V$ENCRYPTION_WALLET V$ENCRYPTION_WALLET 24
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 25
Konsequenzen von TDE Anpassung der Backupstrategie: Wallet mit Masterkey(s) muß gesichert werden Beim Recovery: Wallet muß geöffnet sein Behandlung von Ghost Copies DROP TABLESPACE INCLUDING CONTENTS KEEP DATAFILES Beim Datenbank-Upgrade von 10.2 11.2: Encryption Wallet kopieren 1x Masterkey regenerieren, um TDE Tablespace Encryption zu verwenden. 26
Empfehlungen Welchen Typ von TDE soll man verwenden? Spalten- oder Tablespace-Verschlüsselung Abh. Welche/wieviele Daten zu verschlüsseln sind Sind es nur wenige Spalten? Ist der Datentyp unterstützt? Wie wird auf die Spalte zugegriffen? 27
Empfehlungen zur Migration Gründe für eine Migration von Spaltenverschlüsselung zu Tablespace- Verschlüsselung Beschränkungen der Spaltenverschlüsselung Leichtere Administration Schwierige Identifizierung sensibler Daten zeitweise doppelte Verschlüsselung während der Umstellung technisch möglich Tabelle mit verschlüsselter Spalte in verschlüsseltem Tablespace 28
Empfehlungen für weitergehende Verschlüsselung Verschlüsselung des Netzverkehrs Orace Network Encryption Voraussetzung: ASO Verschlüsselung der Backups RMAN Backup Encryption Voraussetzung: ASO Verschlüsselung von Export Dumps DataPump Encryption Voraussetzung: ASO 29
Daten verschlüsselt übertragen x#!s%u3 Nur verfügbar mit Advanced Security Option Schutz vor Informationsverlust und vor Veränderung von Daten im Transfer Verschlüsseln der Übertragung von Oracle-Daten Vom Server zum Client Vom Client zum Server Von Server zu Server Unterstützt gängige Verfahren RC4, DES, Triple-DES, AES, MD5, SHA-1 30
Backups verschlüsseln mit RMAN Nur verfügbar mit Advanced Security Option Hintergrund Unverschlüsseltes Backup kann in die falschen Hände geraten RMAN> SET ENCRYPTION IDENTIFIED BY <password> ON FOR ALL TABLESPACES; RMAN> BACKUP DATABASE; Nutzt TDE wallet Automatisches Entschlüsseln bei Restore Restore benötigt Backup Wallet Passwort für Wallet 31
Data Pump-Verschlüsselung Nur verfügbar mit Advanced Security Option Steuerung über Parameter ENCRYPTION ALL / DATA_ONLY / ENCRYPTED_COLUMNS_ONLY / METADATA_ONLY / NONE ENCRYPTION_ALGORITHM AES128 / AES192 / AES256 ENCRYPTION_MODE DUAL / PASSWORD / TRANSPARENT ENCRYPTION_PASSWORD expdp scott/tiger encryption=all... directory=dmpdir... 32
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 33
Einsatz von TDE mit SAP Konfiguration Generelle Empfehlung: Anlegen eines separaten Wallets für die Encryption Master Keys für TDE ENCRYPTION_WALLET_LOCATION sqlnet.ora: Unix: ENCRYPTION_WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = $ORACLE_HOME/dbs))) Windows: ENCRYPTION_WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = %ORACLE_HOME%\DATABASE))) 34
Einsatz von TDE mit SAP Support Voraussetzung: Advanced Security Option TDE Column Encryption ab 10.2.0.4 TDE Tablespace Encryption ab 11.2.0.1 SAP BR*Tools Support Wallet Management Integriert in BRBACKUP Backup-Strategie Backup von Wallet ewallet.p12 Autologin-Wallet wird nie gesichert SAP Hinweis 974876 35
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 36
Weitere neue Features Ändern des Wallet Passworts über Kommandozeile möglich (in 10.2 nur über Wallet Manager) orapki wallet change_pwd -wallet wallet_location [-oldpwd password ] [-newpwd password] Support für LOBs bei TDE Column Encryption (Internal LOBs and SECUREFILE LOBs Only) 11.2: Unified Master Key Nur ein Master Key für TDE Column E. und TDE Tablespace E. Tablespace REKEY Verschlüsselung von unverschlüsselten Spalten beim Export mit DataPump Hardward-Security-Module(HSM)-Unterstützung 37
Hardware Security Module (HSM) Speichern des Master Key in einem HSM ab 11.1.0.6 für Spalten-Verschlüsselung ab 11.1.0.7 auch für Tablespace-Verschlüsselung Erleichtert das Schlüsselmanagement in verteilten Umgebungen z.b. mit Data Guard und RAC Standard PKCS #11-API erlaubt Rückgriff auf Module unterschiedlicher Anbieter Oracle-Zertifizierungen beachten Ver- / Entschlüsseln findet nach wie vor auf dem Server statt 38
LOB-Verschlüsselung mit TDE Ausschließlich mit SecureFiles CREATE TABLE tabelle (region VARCHAR2(20), a BLOB) LOB(a) STORE AS SECUREFILE ( ENCRYPT USING 'AES128') 39
Agenda Transparente Datenverschlüsselung Was ist das? Spaltenverschlüsselung in 10.2 Tablespaceverschlüsselung in 11.2 Empfehlungen zu TDE und Konsequenzen Einsatz von TDE mit SAP Weitere Neuerungen in 11.2 im Bereich TDE Weitere Informationen 40
Weitere Informationen http://search.oracle.com database security Technology Overview Visit: oracle.com/database/security http://www.oracle.com/database/security View Whitepapers and webinars Technical Information, Demos, Software Visit OTN: otn.oracle.com -> Products and Services -> Oracle database -> Security Database Documentation: http://www.oracle.com/pls/db112/homepage 41
Weitere Informationen SAP Support Portal http://service.sap.com/notes Note 974876 - Transparent Data Encryption (TDE) Note 1431800 - Oracle 11.2.0: Central Technical Note 42
Weitere Informationen OTN TDE FAQ http://www.oracle.com/technology/deploy/securit y/database-security/transparent-dataencryption/tde_faq.html Advanced Security Technical White Paper http://www.oracle.com/technology/deploy/securit y/database-security/pdf/advanced-security-11gwhitepaper.pdf 43
44
45