Oracle Database Transparent Data Encryption (TDE) com o AWS CloudHSM
Transparent Data Encryption [criptografia de dados transparente (TDE)] é usada para criptografar arquivos de banco de dados. Com o TDE, o servidor de banco de dados criptografa os dados antes de armazená-los no disco. Os dados nas colunas ou tablespaces da tabela do banco de dados são criptografados com uma chave de tabela ou chave de tablespace. Algumas versões do software de banco de dados da Oracle oferecem TDE. No Oracle TDE, essas chaves são criptografadas com a chave mestre de criptografia TDE. É possível obter maior segurança armazenando a chave de criptografia mestra do TDE em HSMs no seu AWS CloudHSM cluster.
Nesta solução, você usa o Oracle Database instalado em uma instância do Amazon EC2. O Oracle Database se integra à Biblioteca de software AWS CloudHSM para PKCS #11 para armazenar a chave-mestra do TDE nos HSMs do seu cluster.
Importante
-
Recomendamos instalar o Oracle Database em uma instância do Amazon EC2.
Complete as seguintes etapas para realizar a integração do Oracle TDE com o AWS CloudHSM.
Tópicos
Etapa 1. Configurar os pré-requisitos
Para realizar a integração do Oracle TDE com o AWS CloudHSM, você precisa do seguinte:
Um cluster do AWS CloudHSM ativo com pelo menos um HSM.
Uma instância do Amazon EC2 executando um sistema operacional Amazon Linux com o seguinte software instalado:
O cliente AWS CloudHSM e as ferramentas da linha de comando.
A biblioteca de software do AWS CloudHSM para PKCS #11.
Oracle Database. AWS CloudHSM oferece suporte para integração do Oracle TDE. O Client SDK 5.6 e versões superiores oferecem suporte ao Oracle TDE para o Oracle Database 19c. O Client SDK 3 oferece suporte ao Oracle TDE para o Oracle Database versões 11g e 12c.
-
Um usuário de criptografia (CU) para possuir e gerenciar a chave de criptografia mestre do TDE nos HSMs no seu cluster.
Conclua as seguintes etapas para configurar todos os pré-requisitos.
Para configurar os pré-requisitos para a integração do Oracle TDE com o AWS CloudHSM
-
Siga as etapas em Conceitos básicos. Depois de fazer isso, você terá um cluster ativo com um HSM. Você também terá uma instância do Amazon EC2 executando o sistema operacional Amazon Linux. O cliente do AWS CloudHSM e as ferramentas da linha de comando também serão instalados e configurados.
-
(Opcional) Adicione mais HSMs ao seu cluster. Para ter mais informações, consulte Para adicionar um HSM em um cluster do AWS CloudHSM.
-
Conecte-se à sua instância de cliente do Amazon EC2 e faça o seguinte:
-
Instale a biblioteca de software do AWS CloudHSM para PKCS #11.
-
Instale o Oracle Database. Para obter mais informações, consulte a documentação do Oracle Database
. O Client SDK 5.6 e versões superiores oferecem suporte ao Oracle TDE para o Oracle Database 19c. O Client SDK 3 oferece suporte ao Oracle TDE para o Oracle Database versões 11g e 12c. -
Use a ferramenta da linha de comando cloudhsm_mgmt_util para criar um usuário de criptografia (CU) no seu cluster. Para obter mais informações sobre a criação de um CU, consulte Como gerenciar usuários do HSM com CMU e Usuários do HSM.
-
Etapa 3: gerar a chave de criptografia mestra do Oracle TDE
Para gerar a chave-mestra do Oracle TDE nos HSMs do seu cluster, conclua as etapas no procedimento a seguir.
Para gerar a chave-mestra
-
Use o comando a seguir para abrir o Oracle SQL*Plus. Quando solicitado, digite a senha do sistema que você definiu quando instalou o Oracle Database.
sqlplus / as sysdba
nota
Para Client SDK 3, é necessário definir a variável de ambiente
CLOUDHSM_IGNORE_CKA_MODIFIABLE_FALSE
sempre que você gerar uma chave mestra. Essa variável é necessária apenas para a geração de chave mestra. Para obter mais informações, consulte "Problema: Oracle define o atributo PCKS #11CKA_MODIFIABLE
durante a geração da chave mestra, mas o HSM não oferece suporte a ele" em Problemas conhecidos para integração de aplicativos de terceiros. -
Execute a instrução SQL que cria a chave de criptografia mestra, conforme mostrado nos exemplos a seguir. Use a instrução que corresponda à sua versão do Oracle Database. Substitua
<CU user name>
pelo nome do usuário de criptografia (CU). Substitua<password>
pela senha CU.Importante
Execute o seguinte comando apenas uma vez. Cada vez que o comando é executado, ele cria uma nova chave de criptografia mestra.
-
Para o Oracle Database versão 11, execute a seguinte instrução SQL.
SQL>
alter system set encryption key identified by "
<CU user name>
:<password>
"; -
Para o Oracle Database versão 12 e versão 19c, execute a seguinte instrução SQL.
SQL>
administer key management set key identified by "
<CU user name>
:<password>
";
Se a resposta for
System altered
oukeystore altered
, você gerou e definiu com êxito a chave-mestra do Oracle TDE. -
-
(Opcional) Execute o seguinte comando para verificar o status da Oracle wallet.
SQL>
select * from v$encryption_wallet;
Se a carteira não estiver aberta, use um dos seguintes comandos para abri-lo. Substitua
<CU user name>
pelo nome do usuário de criptografia (CU). Substitua<password>
pela senha CU.-
Para o Oracle 11, execute o seguinte comando para abrir a wallet.
SQL>
alter system set encryption wallet open identified by "
<CU user name>
:<password>
";Para fechar manualmente a carteira, execute o seguinte comando.
SQL>
alter system set encryption wallet close identified by "
<CU user name>
:<password>
"; -
Para o Oracle 12 e Oracle 19c, execute o seguinte comando para abrir a wallet.
SQL>
administer key management set keystore open identified by "
<CU user name>
:<password>
";Para fechar manualmente a carteira, execute o seguinte comando.
SQL>
administer key management set keystore close identified by "
<CU user name>
:<password>
";
-