Gerenciar Chaves de Criptografia Principais no Oracle Key Vault

O Autonomous Database suporta chaves de Criptografia de Dados Transparentes (TDE) gerenciadas pelo cliente que residem no Oracle Key Vault (OKV).

Pré-requisitos para Usar Chaves de Criptografia Gerenciadas pelo Cliente no Oracle Key Vault

Descreve as etapas de pré-requisito para usar chaves de criptografia principais gerenciadas pelo cliente que residem no Oracle Key Vault (OKV) no Autonomous Database.

Requisitos:
Limitação:
  • O OKV não é suportado em stand-bys do Autonomous Data Guard entre as regiões.

Siga estas etapas:

  1. Crie um ponto final do OKV, uma wallet e uma chave mestra de TDE.
    1. Acesse a instância do OKV.
      • Copie o Endereço IP público ou o Endereço IP privado na página de detalhes da instância do OKV e cole em um browser.

      • Na página de log-in da instância do OKV, informe o nome de usuário e a senha.

    2. Crie e registre um ponto final do OKV.
    3. Criar uma wallet

      A wallet do OKV contém a chave de criptografia principal de TDE.

    4. Crie uma Chave de Criptografia Principal de TDE na wallet.
      • Selecione Chaves e Segredos e clique em Criar.
      • Para Chaves de Aplicativo, selecione Chave de Criptografia Principal de TDE.
      • Para Extraível, selecione Verdadeiro.
      • Certifique-se de que a Data de Desativação esteja vazia.

        Por exemplo:



      • Para Associação de Wallet, clique em Selecionar Wallet.
      • Na lista exibida de wallets, selecione a wallet criada na etapa anterior e clique em Fechar.
      • Clique em Criar. A Chave de Criptografia Principal de TDE é criada e exibida em Conteúdo da Wallet.

        Por exemplo:



    5. Modifique o ponto final para tornar a wallet criada anteriormente a wallet padrão.
      • Navegue até a página de detalhes do ponto final.
      • No painel Wallet Padrão, selecione Escolher Wallet.
      • Na página Escolher Wallet, selecione a wallet criada anteriormente e clique em Selecionar.
      • Clique em Salvar.
    6. Ativar serviços Restful.
      Observação

      Os serviços Restful devem ser ativados na instância do OKV para executar com sucesso o comando curl, em uma etapa subsequente, para fazer download da wallet.
      • Na home page do OKV, selecione a guia Sistema.
      • No painel de navegação esquerdo, clique em Setting.
      • Em Configuração do Sistema, selecione Serviços Restful.
      • Clique em Tudo e, em seguida, em Salvar.
  2. Provisione uma instância do Autonomous Database, com as seguintes definições necessárias:
    1. Para Escolher acesso à rede, selecione Somente acesso de ponto final privado.
    2. Para Rede virtual na nuvem, selecione a VCN em que esta instância do banco de dados está sendo executada.
    3. Para Sub-rede, selecione a sub-rede privada na qual essa instância do banco de dados está em execução.
    4. Para Grupos de Segurança de Rede (NSGs), selecione o grupo de segurança.
    5. Para definições de Chave de criptografia, use como padrão Criptografia usando uma chave gerenciada pela Oracle. Essas definições são alteradas para chaves gerenciadas pelo cliente no OKV, após a conclusão dessas etapas de pré-requisito. As chaves gerenciadas pelo cliente são desativadas durante o provisionamento da instância. Consulte Usar Chaves de Criptografia Gerenciadas pelo Cliente no Autonomous Database com o Oracle Key Vault para obter detalhes.
  3. Conecte-se à instância do Autonomous Database e crie um diretório para a wallet do OKV.
    1. Conecte-se à instância do Autonomous Database de Ponto Final Privado como usuário ADMIN.
      Por exemplo, conecte-se à instância do banco de dados OKVDEMO1:
      SQL> connect ADMIN/<password>@OKVDEMO1_low
    2. Crie um objeto de diretório na instância do Autonomous Database.
      Por exemplo:
      SQL> create directory okv_dir as 'okvdir';
    3. Verifique se o diretório foi criado.
      Por exemplo, as instruções a seguir criam o objeto de diretório OKV_DIR e os resultados da instrução exibem o nome do diretório (OKV_DIR) e o caminho do diretório (/u03/dbfs/<path data>/data/okvdir).
      SQL> connect ADMIN/<admin password>#@OKVDEMO1_low
      Connected
      SQL>
      SQL> create directory okv_dir as 'okvdir';
      Directory created.
      SQL> select * from dba_directories where directory_name = 'OKV_DIR';
      OWNER
      –--------------------------------------------------------------------
      DIRECTORY_NAME
      –--------------------------------------------------------------------
      DIRECTORY_PATH
      –--------------------------------------------------------------------
      ORIGIN_CON_ID
      –------------
      SYS
      OKV_DIR
      /u03/dbfs/<path data>/data/okvdir
      SQL>
  4. Faça download da wallet do Ponto Final para o objeto de diretório criado na instância do Autonomous Database. Esta wallet não é a wallet de TDE virtual no OKV que contém a chave de criptografia mestra de TDE. Esta wallet contém os certificados necessários para estabelecer uma conexão mTLS 1.2 entre o OKV e o Autonomous Database.
    1. Faça download da wallet do ponto final na instância do OKV.
      Execute o seguinte comando em uma instância de computação que esteja na mesma rede que o OKV:
      curl -k -X POST
       --location https://OKV server:5695/okv/cloud/utility/endpoint/download/sso
       --data "token=Enrollment Token"
       --output cwallet.sso
      Onde:
      • OKV server é o Nome de Domínio Interno Totalmente Qualificado ou o endereço IP Privado, encontrado na página de detalhes da Instância do OKV.

      • Enrollment Token é o token de inscrição do ponto final encontrado na página Pontos Finais.

      Por exemplo:

      $ curl -k -X POST --location https://10.0.0.123:5695/okv/cloud/utility/endpoint/download/sso 
                                 --data "token=H5r8NzqxopYOgkZC" 
                                 --output cwallet.sso
      % Total    % Received % Xferd Average Speed   Time    Time    Time  Current 
               Dload  Upload  Total   Spent    Left  Speed
      100  3697  100  3675  100    22  2157     12  0:00:01  0:00:01 --:--:--  2172 
      
      ls -altr ./cwallet.sso 
      -rw-r--r--. 1 opc opc 3675 Jun 17 16:53 wallet.sso

      Após o download da wallet, o ponto final na instância do OKV muda de REGISTERED para ENROLLED.

    2. Faça upload da wallet para o Object Storage.

      Faça o upload do arquivo da wallet da sua máquina local para o seu bucket do Object Storage usando o Upload Object. Consulte Fazendo Upload de um Objeto para um Bucket para obter mais informações.

    3. No Object Storage, gere um URL de PAR (Solicitação Pré-Autenticada) para o arquivo de wallet submetido a upload. Consulte Criando uma Solicitação Pré-Autenticada no Object Storage para obter mais informações.
    4. Na VM, estabeleça conexão com a instância do banco de dados como usuário ADMIN.
    5. Na instância do banco de dados, execute o procedimento DBMS_CLOUD.GET_OBJECT para fazer download da wallet do serviço Object Storage para o diretório da wallet da instância do banco de dados.
      Por exemplo:
      BEGIN
          DBMS_CLOUD.GET_OBJECT(
              object_uri => '<PAR URL>',
              directory_name => '<wallet_dir>');
      END;
      /
      • Onde:
        • object_uri é o URL de PAR gerado para o arquivo de wallet no Object Storage.
        • directory_name é o nome do diretório da wallet criado na instância do banco de dados.

        Consulte Procedimento GET_OBJECT para obter mais informações.

    6. Exclua a wallet do serviço Object Storage.

Usar Chaves de Criptografia Gerenciadas pelo Cliente no Autonomous Database com o Oracle Key Vault

Mostra as etapas para criptografar seu Autonomous Database usando chaves de criptografia principais gerenciadas pelo cliente que residem no Oracle Key Vault (OKV).

Siga estas etapas:

  1. Execute as etapas obrigatórias de pré-requisito da chave de criptografia gerenciada pelo cliente conforme necessário. Consulte Pré-requisitos para Usar Chaves de Criptografia Gerenciadas pelo Cliente no Oracle Key Vault para obter detalhes.
  2. Na página Detalhes da instância do Autonomous Database, clique em Mais ações e selecione Gerenciar chave de criptografia.


    Veja a seguir a descrição da ilustração sec_okv_manage.png
    Descrição da ilustração sec_okv_manage.png

    Observação

    Se você já estiver usando chaves gerenciadas pelo cliente no OKV e quiser rotacionar as chaves TDE, siga estas etapas e selecione outra chave (uma diferente da chave de criptografia principal selecionada no momento). No entanto, você não pode usar uma chave OKV que tenha sido usada anteriormente na mesma instância do Autonomous Database.

  3. Na página Gerenciar chave de criptografia, selecione criptografar usando uma chave gerenciada pelo cliente.
  4. Na lista drop-down Tipo de chave, selecione Oracle Key Vault (OKV).

    A caixa de diálogo Gerenciar chave de criptografia exibe as opções do Oracle Key Vault (OKV).
    Veja a seguir a descrição da ilustração sec_okv.png
    Descrição da ilustração sec_okv.png

  5. Digite as seguintes informações:
    • UUID do OKV: Informe o Identificador Exclusivo da chave mestra de TDE para a chave localizada na instância do OKV.

      Para localizar este valor:

      1. Acesse a instância do OKV e selecione Chaves e Wallets.

      2. Clique no nome da wallet padrão do ponto final do Autonomous Database.

      3. Role para Conteúdo da Wallet e copie o Identificador Exclusivo na coluna Detalhes.

        Por exemplo:

        BC63511B-4B4A-411C-A71C-4AA90005F632
        OKV Server URI: ok
        Certificate DN:

        Clique no nome do ponto final e, em seguida, clique no Download (formato PEM) verde. Isso faz download do "CA.pem" para o seu computador.

        Extraia o DN do certificado com um comando como:

        $ openssl x509 -in ./CA.pem -noout -subject -nameopt RFC2253 | sed 's|subject=||'

        Por exemplo:

        CN=CA,OU=Key_Vault,O=Oracle,L=Redwood_City,ST=California,C=us
      4. Clique no nome da wallet padrão do seu ponto final do Autonomous Database.

      5. Role para Acesso ao Conteúdo da Wallet e copie o Identificador Exclusivo.

        .


        Veja a seguir a descrição da ilustração sec_okv_uuid.png
        Descrição da ilustração sec_okv_uuid.png

      6. Cole o Identificador Exclusivo no campo UUID do OKV.

    • URI do Servidor OKV - Informe o Nome do Domínio Interno Totalmente Qualificado ou o IP Privado encontrado na página de detalhes da instância do OKV.

      Por exemplo, se estiver usando uma VM do OCI para hospedar o OKV, esse valor poderá ser encontrado na página de detalhes da instância do OKV em VNIC Principal:


      Veja a seguir a descrição da ilustração sec_okv_fqdn.png
      Descrição da ilustração sec_okv_fqdn.png

    • DN do Certificado - Informe o DN (Nome Distinto) do seu certificado.
    • ID do Certificado (Opcional) - Informe o ID do seu certificado ou deixe em branco.
      Observação

      Este campo será opcional se estiver usando o OKV versões 21.9 e posteriores. Se estiver usando versões do OKV abaixo da versão 21.9, o ID do certificado será obrigatório.
    • Nome do diretório - Informe o nome do diretório em que a wallet é salva na instância do Autonomous Database.
  6. Clique em Salvar.

Quando o salvamento é concluído com sucesso, as definições de criptografia da instância do Autonomous Database são atualizadas para mostrar Chave gerenciada pelo cliente (Oracle Key Vault (OKV)) e o estado da solicitação de serviço é mostrado com sucesso.


Veja a seguir a descrição da ilustração sec_okv_done.png
Descrição da ilustração sec_okv_done.png