Preparação para Conexões do Oracle Call Interface, ODBC e JDBC OCI com Wallets (mTLS)

A preparação para qualquer tipo de conexão do Oracle Call Interface (OCI) com autenticação mTLS requer a instalação do software cliente, o download de credenciais do cliente e a configuração de determinados arquivos e variáveis de ambiente.

Este tópico abrange as etapas para preparar um aplicativo para estabelecer conexão usando a autenticação mTLS com uma wallet que você faz download de uma instância do Autonomous Database. Consulte Preparação para Conexões do Oracle Call Interface, ODBC e JDBC OCI Usando Autenticação TLS para obter informações sobre as etapas de preparação para autenticação TLS com esses tipos de conexão.

Nova Instalação do Oracle Client

As etapas a seguir pressupõem que o software cliente Oracle ainda não tenha sido instalado no computador cliente. Se o software cliente Oracle já tiver sido instalado e houver cópias de trabalho de sqlnet.ora e tnsnames.ora, consulte Atualizando uma Instalação Existente do Cliente Oracle.

Antes de fazer uma conexão do Oracle Call Interface (OCI), ODBC ou JDBC OCI, faça o seguinte:

  1. Instale o software Oracle Client no seu computador.

    • Oracle Instant Client/Oracle Database Client: 18.19 (ou posterior), 19.2 (ou posterior) ou 21 (versão base ou posterior). O Instant Client contém o software mínimo necessário para fazer uma conexão do Oracle Call Interface.

  2. Faça download das credenciais do cliente e armazene o arquivo em uma pasta segura no computador cliente. Consulte Fazer Download das Credenciais do Cliente (Wallets).

  3. Descompacte/descompacte o arquivo de credenciais em uma pasta segura no computador cliente.

  4. Edite o arquivo sqlnet.ora na pasta em que você descompactou o arquivo de credenciais, substituindo "?/network/admin" pelo nome da pasta que contém as credenciais do cliente.

    Por exemplo, edite sqlnet.ora da seguinte forma:

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))
    SSL_SERVER_DN_MATCH=yes

    O valor alterado no UNIX/Linux é:

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adb_credentials")))
    SSL_SERVER_DN_MATCH=yes
    

    O valor alterado para Windows é:

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="D:\\myapp\\adb_credentials")))
    SSL_SERVER_DN_MATCH=yes
    
  5. Crie a variável de ambiente TNS_ADMIN e defina-a para o local do arquivo de credenciais.

    Use esta variável de ambiente para alterar o caminho do diretório dos arquivos de configuração do Oracle Net Services do local padrão de ORACLE_HOME\network\admin para o local da pasta segura que contém o arquivo de credenciais salvo na Etapa 2. Defina a variável de ambiente TNS_ADMIN para o diretório onde estão os arquivos de credenciais descompactados, não para o próprio arquivo de credenciais.

    Por exemplo, no UNIX/Linux, defina TNS_ADMIN como o caminho completo do diretório em que você descompactou as credenciais do cliente:

    export TNS_ADMIN=/home/adb_credentials

    Por exemplo, no Windows:

    set TNS_ADMIN=d:\myapp\adb_credentials

Conexões com um Proxy HTTP

Se o cliente estiver protegido por um firewall e sua configuração de rede exigir que um proxy HTTP se conecte à internet, execute as etapas a seguir para atualizar os arquivos sqlnet.ora e tnsnames.ora. As conexões por meio de um proxy HTTP só estão disponíveis com o software Oracle Client versão 12.2.0.1 ou posterior.

Observação

Para evitar atualizações manuais nos arquivos sqlnet.ora e tnsnames.ora, você pode usar SQLcl e especificar o proxy HTTP na linha de comando. Consulte Conectar o Oracle SQLcl Cloud com uma Wallet (mTLS) para obter mais informações.
  1. Adicione a seguinte linha ao arquivo sqlnet.ora para ativar conexões por meio de um proxy HTTP:

    SQLNET.USE_HTTPS_PROXY=on
  2. Adicione o nome de host e a porta do proxy HTTP às definições de conexão no tnsnames.ora. Você precisa adicionar os parâmetros https_proxy e https_proxy_port na seção de endereço das definições de conexão. Por exemplo, o seguinte define o proxy HTTP como proxyhostname e a porta do proxy HTTP como 80; substitua esses valores pelas informações do proxy HTTP:

    ADB1_high =
           (description=
                 (address=
                       (https_proxy=proxyhostname)(https_proxy_port=80)(protocol=tcps)(port=1522)(host=adb.example.oraclecloud.com)
                 )
                 (connect_data=(service_name=adb1_high.adb.oraclecloud.com)
                 )
                 (security=(ssl_server_dn_match=yes))
                 )
           )

Observação

A configuração de sqlnet.ora e tnsnames.ora para o proxy HTTP pode não ser suficiente, dependendo da configuração de rede e das políticas em segurança de sua organização. Por exemplo, algumas redes exigem um username e um password para o proxy HTTP. Nesses casos, contate o administrador de rede para abrir conexões de saída para hosts no domínio oraclecloud.com usando o porta 1522 sem passar por um proxy HTTP.

Para obter mais informações sobre o SQLNET.USE_HTTPS_PROXY, consulte Referência de Serviços de Rede.

Para obter informações sobre HTTPS_PROXY e HTTPS_PROXY_PORT, consulte a Seção de Endereço de Protocolo.

Atualizando uma Instalação Existente do Oracle Client

Se você tiver uma instalação existente do Oracle Client, já terá os arquivos sqlnet.ora e tnsnames.ora e a variável de ambiente TNS_ADMIN. Nesse caso, faça o seguinte:

  1. Atualize seu arquivo sqlnet.ora adicionando o seguinte:

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adb_credentials")))
  2. Copie as entradas no arquivo tnsnames.ora fornecido na wallet do Autonomous Database para seu arquivo tnsnames.ora existente.