SlideShare uma empresa Scribd logo
1 de 4
Baixar para ler offline
Oracle TDE ­ O Básico 
 
No tempo do Oracle 10gR2 foi introduzido o TDE (Transparent Data Encryption), que permite 
essencialmente proteger os dados mais sensíveis para que alguém não possa ao nível do 
sistema operativo aceder confortavelmente. O problema com isto pretende­se com o facto de 
só ser possível encriptação ao nível dacoluna. 
No entanto para vos dar um background inicial de como é possível aceder aos dados via 
sistema operativo dar­vos­hei um exemplo simples: 
 
Para evitar confusões, criaremos um tablespace pequeno que acomodará o nosso exemplo: 
 
Como SYSDBA: 
 
SQL> CREATE TABLESPACE tl_luis1 DATAFILE 
'/home/oracle/app/oracle/oradata/testSID/t1_luis1.dbf' SIZE 256K   
2  AUTOEXTEND ON NEXT 64K; 
 
Tablespace created. 
 
Ajustando um user já existente para criar objectos por omissão no tablespace TL_LUIS1: 
 
SQL>  ALTER USER lmarques IDENTIFIED BY ****** DEFAULT TABLESPACE TL_LUIS1; 
 
User altered. 
 
Como user lmarques: 
 
SQL> create table la_luis1 (clubes varchar2(50), maior varchar2(1)) 
TABLESPACE TL_LUIS1; 
Table created. 
 
SQL>  INSERT INTO la_luis1 (clubes, maior)  VALUES('SLB', 'Y'); 
1 row created. 
 
SQL> INSERT INTO la_luis1 (clubes, maior)  VALUES('SCP', 'N'); 
1 row created. 
 
SQL> commit; 
 
Commit complete. 
 
Para ter a certeza que os dados são escritos para o disco é necessário um FLUSH ao 
BUFFER_CACHE: 
 
SQL> ALTER SYSTEM FLUSH BUFFER_CACHE; 
 
System altered. 
 
Vamos agora passar um editor HEX em cima do datafile que criámos para o tablespace 
TL_LUIS1, para ver o resultado: 
 
[oracle@localhost testSID]$ hexdump t1_luis1.dbf ­C | grep 'S' 
00002020  54 45 53 54 53 49 44 00  5e 04 00 00 20 00 00 00 
|TESTSID.^... ...| 
00002150  08 00 54 4c 5f 4c 55 49  53 31 00 00 00 00 00 00 
|..TL_LUIS1......| 
0000e000  1e a2 00 00 07 00 80 01  53 20 11 00 00 00 01 04 
|........S ......| 
0000fff0  00 00 00 00 00 00 00 00  00 00 00 00 01 1e 53 20 
|..............S | 
0001ffe0  00 00 00 00 00 00 00 00  00 00 2c 01 02 03 53 43 
|..........,...SC| 
0001fff0  50 01 4e 2c 01 02 03 53  4c 42 01 59 01 06 7b 22 
|P.N,...SLB.Y..{"| 
 
Como podem facilmente reparar o hexdum revela­nos todos os dados que inserimos no 
tablespace mesmo sendo um ficheiro binário, é obviamente possível ler o ASCII. 
 
Voltando ao Oracle 11g, a limitação que falava no 10g e no TDE prende­se com o facto de a 
encriptação ser feita apenas ao nível da coluna que só possibilita encriptar a coluna 
individualmente protegendo apenas os dados ai contidos. 
Passando para o 11g é possível ter encriptação ao nível do tablespace e consequentemente a 
todos os dados (em tabelas) que residam nesse tablespace. Vejamos: 
 
Primeiro é necesário criar uma wallet que deve ter a sua localização definida no sqlnet.ora: 
 
ENCRYPTION_WALLET_LOCATION= 
  (SOURCE=(METHOD=FILE)(METHOD_DATA= 
(DIRECTORY=/home/oracle/app/oracle/product/11.2.0/dbhome_1/scheduler/
wallet/))) 
 
Depois de adicionar a entrada ao sqlnet.ora temos que dar uma password para a wallet, ou 
seja, esta password vai ser necessária 
para abrir a wallet. 
 
SQL>  ALTER SYSTEM SET ENCRYPTION KEY AUTHENTICATED BY "slb"; 
System altered. 
 
SQL> !ls 
/home/oracle/app/oracle/product/11.2.0/dbhome_1/scheduler/wallet/ 
ewallet.p12 
 
Após a criação da wallet atribuindo uma chave esta fica automáticamente aberta e não há 
necessidade de usar o comando para reabrir. 
Para criar um tablespace encriptado usado a cifra AES256: 
 
SQL> CREATE TABLESPACE tl_luis2 DATAFILE 
'/home/oracle/app/oracle/oradata/testSID/t1_luis2.dbf' SIZE 256K   
2 AUTOEXTEND ON NEXT 64K 
3 ENCRYPTION USING 'AES256' 
4 DEFAULT STORAGE(ENCRYPT) 
 
Modificamos de novo o user que usámos anteriormente para por omissão criar objectos neste 
novo TL_LUIS2 que ao contrário do TL_LUIS1 se encontra encriptado: 
 
SQL> ALTER USER lmarques IDENTIFIED BY ******* DEFAULT TABLESPACE 
TL_LUIS2; 
 
SQL> conn lmarques/******* 
Connected. 
SQL>  create table la_luis2 (clubes varchar2(50), maior varchar2(1)) 
TABLESPACE TL_LUIS2; 
 
Table created. 
 
SQL> INSERT INTO la_luis2 (clubes, maior)  VALUES('SLB', 'Y'); 
 
1 row created. 
 
SQL> INSERT INTO la_luis2 (clubes, maior)  VALUES('SCP', 'N'); 
 
1 row created. 
 
SQL> commit; 
 
Commit complete. 
 
Mais um vez para garantir que os dados são escritos no disco, repetimos o processo e fazemos 
um FLUSH BUFFER_CACHE e de seguida passamos o hexdump em cima do datafile 
correspondente ao tablespace TL_LUIS2 que se encontra encriptado com AES 256. 
 
[oracle@localhost testSID]$ hexdump ­C t1_luis2.dbf | grep S 
00002020  54 45 53 54 53 49 44 00  6d 04 00 00 20 00 00 00 
|TESTSID.m... ...| 
00002150  08 00 54 4c 5f 4c 55 49  53 32 00 00 00 00 00 00 
|..TL_LUIS2......| 
 
[oracle@localhost testSID]$ hexdump ­C t1_luis2.dbf | grep SLB | wc 
­l 
0 
 
[oracle@localhost testSID]$ hexdump ­C t1_luis1.dbf | grep SLB | wc 
­l 
1 
 
As conclusões são simples de tirar, não foi possível no tablespace TL_LUIS2 inferir qualquer 
tipo de resultado sobre o conteúdo das tabelas. 
Como conclusão, este tipo de funcionalidade é bastante útil no entanto existe como é obvio um 
overhead associado ao processo de encriptação/desencriptação que resulta com que as querys 
sejam mais lentas, portanto esse factor deve ser tido em conta para calcular a selectividade a 
aplicar esta funcionalidade. 
 
 

Mais conteúdo relacionado

Semelhante a Oracle TDE - O Básico

Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...Alex Zaballa
 
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...Alex Zaballa
 
DBA became DMA for Oracle Exadata X2-2
DBA became DMA for Oracle Exadata X2-2DBA became DMA for Oracle Exadata X2-2
DBA became DMA for Oracle Exadata X2-2Rodrigo Almeida
 
Fora Hackers! Proteção em camadas do SQL Server
Fora Hackers! Proteção em camadas do SQL ServerFora Hackers! Proteção em camadas do SQL Server
Fora Hackers! Proteção em camadas do SQL ServerFabrício Catae
 
Introdução ao Sql Server
Introdução ao Sql ServerIntrodução ao Sql Server
Introdução ao Sql Serverintradb
 
GUOB - Passa-a-passo para migração do Oracle Database 11g
GUOB - Passa-a-passo para migração do Oracle Database 11gGUOB - Passa-a-passo para migração do Oracle Database 11g
GUOB - Passa-a-passo para migração do Oracle Database 11gRodrigo Almeida
 
Apostila de sql server 2008
Apostila de sql server 2008Apostila de sql server 2008
Apostila de sql server 2008marcos0512
 
PDO: TRABALHANDO COM BANCO DO JEITO CERTO
PDO: TRABALHANDO COM BANCO DO JEITO CERTOPDO: TRABALHANDO COM BANCO DO JEITO CERTO
PDO: TRABALHANDO COM BANCO DO JEITO CERTOPerla Coutinho Barbosa
 
Oracle Database 12c - Novas Características para DBAs e Desenvolvedores
Oracle Database 12c - Novas Características para DBAs e DesenvolvedoresOracle Database 12c - Novas Características para DBAs e Desenvolvedores
Oracle Database 12c - Novas Características para DBAs e DesenvolvedoresAlex Zaballa
 
MySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI TecnologiaMySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI TecnologiaMySQL Brasil
 
Banco de Dados - MySQL Basico
Banco de Dados - MySQL BasicoBanco de Dados - MySQL Basico
Banco de Dados - MySQL BasicoRangel Javier
 
ODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaCaio Lima
 
Curso completo-de-fix-32
Curso completo-de-fix-32Curso completo-de-fix-32
Curso completo-de-fix-32Mário Bassoli
 
Windows Vista - Arthur Duarte Rosa - Henrique Bueno
Windows Vista - Arthur Duarte Rosa - Henrique BuenoWindows Vista - Arthur Duarte Rosa - Henrique Bueno
Windows Vista - Arthur Duarte Rosa - Henrique BuenoAnderson Favaro
 

Semelhante a Oracle TDE - O Básico (20)

Db2
Db2Db2
Db2
 
Apostila oracle
Apostila oracleApostila oracle
Apostila oracle
 
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
 
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
Os melhores recursos novos do Oracle Database 12c para desenvolvedores e DBAs...
 
Apostila ib
Apostila ibApostila ib
Apostila ib
 
DBA became DMA for Oracle Exadata X2-2
DBA became DMA for Oracle Exadata X2-2DBA became DMA for Oracle Exadata X2-2
DBA became DMA for Oracle Exadata X2-2
 
Fora Hackers! Proteção em camadas do SQL Server
Fora Hackers! Proteção em camadas do SQL ServerFora Hackers! Proteção em camadas do SQL Server
Fora Hackers! Proteção em camadas do SQL Server
 
Introdução ao Sql Server
Introdução ao Sql ServerIntrodução ao Sql Server
Introdução ao Sql Server
 
GUOB - Passa-a-passo para migração do Oracle Database 11g
GUOB - Passa-a-passo para migração do Oracle Database 11gGUOB - Passa-a-passo para migração do Oracle Database 11g
GUOB - Passa-a-passo para migração do Oracle Database 11g
 
Apostila de sql server 2008
Apostila de sql server 2008Apostila de sql server 2008
Apostila de sql server 2008
 
PDO: TRABALHANDO COM BANCO DO JEITO CERTO
PDO: TRABALHANDO COM BANCO DO JEITO CERTOPDO: TRABALHANDO COM BANCO DO JEITO CERTO
PDO: TRABALHANDO COM BANCO DO JEITO CERTO
 
xxx no sequel
xxx no sequelxxx no sequel
xxx no sequel
 
Oracle Database 12c - Novas Características para DBAs e Desenvolvedores
Oracle Database 12c - Novas Características para DBAs e DesenvolvedoresOracle Database 12c - Novas Características para DBAs e Desenvolvedores
Oracle Database 12c - Novas Características para DBAs e Desenvolvedores
 
MySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI TecnologiaMySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI Tecnologia
 
Banco de Dados - MySQL Basico
Banco de Dados - MySQL BasicoBanco de Dados - MySQL Basico
Banco de Dados - MySQL Basico
 
Introdução ao BD Postgre
Introdução ao BD PostgreIntrodução ao BD Postgre
Introdução ao BD Postgre
 
ODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração Topologia
 
Curso completo-de-fix-32
Curso completo-de-fix-32Curso completo-de-fix-32
Curso completo-de-fix-32
 
Banco de dados
Banco de dados   Banco de dados
Banco de dados
 
Windows Vista - Arthur Duarte Rosa - Henrique Bueno
Windows Vista - Arthur Duarte Rosa - Henrique BuenoWindows Vista - Arthur Duarte Rosa - Henrique Bueno
Windows Vista - Arthur Duarte Rosa - Henrique Bueno
 

Mais de Luis Marques

Apache Hive for modern DBAs
Apache Hive for modern DBAsApache Hive for modern DBAs
Apache Hive for modern DBAsLuis Marques
 
Ksplice - Keep your Database systems up to date with no downtime
Ksplice - Keep your Database systems up to date with no downtime Ksplice - Keep your Database systems up to date with no downtime
Ksplice - Keep your Database systems up to date with no downtime Luis Marques
 
Partitioning on Oracle 12c - What changed on the most important Oracle feature
Partitioning on Oracle 12c - What changed on the most important Oracle featurePartitioning on Oracle 12c - What changed on the most important Oracle feature
Partitioning on Oracle 12c - What changed on the most important Oracle featureLuis Marques
 
Indices B-Tree – considerações básicas
Indices B-Tree – considerações básicasIndices B-Tree – considerações básicas
Indices B-Tree – considerações básicasLuis Marques
 
Proof of Concept with Real Application Testing 12c
Proof of Concept with Real Application Testing 12cProof of Concept with Real Application Testing 12c
Proof of Concept with Real Application Testing 12cLuis Marques
 
Drill Down the most underestimate Oracle Feature - Database Resource Manager
Drill Down the most underestimate Oracle Feature - Database Resource ManagerDrill Down the most underestimate Oracle Feature - Database Resource Manager
Drill Down the most underestimate Oracle Feature - Database Resource ManagerLuis Marques
 
Exadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesExadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesLuis Marques
 

Mais de Luis Marques (7)

Apache Hive for modern DBAs
Apache Hive for modern DBAsApache Hive for modern DBAs
Apache Hive for modern DBAs
 
Ksplice - Keep your Database systems up to date with no downtime
Ksplice - Keep your Database systems up to date with no downtime Ksplice - Keep your Database systems up to date with no downtime
Ksplice - Keep your Database systems up to date with no downtime
 
Partitioning on Oracle 12c - What changed on the most important Oracle feature
Partitioning on Oracle 12c - What changed on the most important Oracle featurePartitioning on Oracle 12c - What changed on the most important Oracle feature
Partitioning on Oracle 12c - What changed on the most important Oracle feature
 
Indices B-Tree – considerações básicas
Indices B-Tree – considerações básicasIndices B-Tree – considerações básicas
Indices B-Tree – considerações básicas
 
Proof of Concept with Real Application Testing 12c
Proof of Concept with Real Application Testing 12cProof of Concept with Real Application Testing 12c
Proof of Concept with Real Application Testing 12c
 
Drill Down the most underestimate Oracle Feature - Database Resource Manager
Drill Down the most underestimate Oracle Feature - Database Resource ManagerDrill Down the most underestimate Oracle Feature - Database Resource Manager
Drill Down the most underestimate Oracle Feature - Database Resource Manager
 
Exadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesExadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das Partes
 

Último

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 

Último (6)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 

Oracle TDE - O Básico