Connect Node.js and other Scripting Languages (mTLS)
Você pode usar programas em diferentes linguagens, incluindo Python, Node.js, PHP, Ruby, R, Go e Perl, para estabelecer conexão com uma instância do Autonomous Database usando mTLS (com carteiras). A segurança é aplicada usando credenciais de cliente.
Essas linguagens de script têm APIs ou drivers de acesso ao banco de dados que usam as bibliotecas do Oracle Call Interface.
Os clientes Oracle Call Interface (OCI) suportarão a autenticação mTLS com uma wallet quando você estiver se conectando usando as seguintes versões do cliente:
-
Oracle Instant Client/Oracle Database Client: 18.19 (ou mais recente), 19.2 (ou mais recente) ou 21 (versão base ou mais recente).
Para obter detalhes sobre a conexão de Node.js ou outras linguagens de script sem uma wallet, consulte Connect Node.js, and Other Scripting Languages Without a Wallet.
Para obter detalhes adicionais, assista ao seguinte vídeo:
Instalar o Driver da Linguagem e as Bibliotecas Clientes
Para estabelecer conexão com o Autonomous Database de sua linguagem de script, primeiro instale o driver da linguagem e as bibliotecas clientes da seguinte forma:
-
Instale o Oracle Instant Client/Oracle Database Client: 18.19 (ou mais recente), 19.2 (ou mais recente) ou 21 (versão base ou mais recente).
O Instant Client funciona bem para a maioria dos aplicativos. Para instalar o Instant Client, faça o seguinte:
-
Selecione sua arquitetura desejada na página Downloads do Instant Client e faça download de um Pacote Básico (disponível na página de download): Downloads do Oracle Instant Client.
Como alternativa, faça download do Pacote Basic Light da página de download da arquitetura desejada se as limitações de globalização do Basic Light se adequarem ao seu uso.
-
Se você estiver criando uma API ou um driver de linguagem com base no código de origem, talvez também precise fazer download do Instant Client SDK: Oracle Instant Client
-
Descompacte o pacote base selecionado. Por exemplo, descompacte em
C:\instantclient_12_2
ou/home/myuser/instantclient_18_5.
Se você também fizer download do SDK, descompacte-o no mesmo diretório. -
No Windows, adicione o caminho à variável
PATH
na seção "Variáveis do sistema" do painel Variáveis de Ambiente (por exemplo, adicioneC:\instantclient_12_2
). No Windows 8, acesse a área de definição de variávelPATH
navegando até Painel de Controle>Sistema>Configurações Avançadas do Sistema>Variáveis de Ambiente. Se você tiver várias versões das bibliotecas Oracle instaladas, certifique-se de que o novo diretório apareça primeiro no caminho. -
Em plataformas não Windows, crie um link simbólico, caso ele não exista. Por exemplo:
cd /home/myuser/instantclient_18_5 ln -s libclntsh.so.18.1 libclntsh.so
Se não houver outro software Oracle no sistema que será afetado, adicione o Instant Client ao caminho do link de runtime. Por exemplo:
sudo sh -c "echo /home/myuser/instantclient_18_5 > /etc/ld.so.conf.d/oic.conf" sudo ldconfig
Como alternativa, defina o caminho da biblioteca em cada shell que executa o seu aplicativo. Por exemplo:
export LD_LIBRARY_PATH=/home/myuser/instantclient_18_5:$LD_LIBRARY_PATH
Observação
Os arquivos de download do Linux Instant Client estão disponíveis como arquivos.zip
ou.rpm
. Você pode usar qualquer uma das versões.
-
-
Instale o driver de linguagem relevante para o Oracle Database:
-
Node.js : Para instalar o node-oracledb para Node.js, use as instruções da seguinte página: Installing node-oracledb.
-
ROracle: Para instalar o ROracle para R, use as instruções da seguinte página: ROracle
-
PHP: Para instalar o PHP OCI8 para PHP, use as instruções da seguinte página: Configurando o PHP com o OCI8.
As DLLs do Windows estão disponíveis em http://php.net/downloads.php e também estão disponíveis em PECL oci8.
-
PHP PDO_OCI: Para instalar o PHP PDO_OCI para PHP, use as instruções da seguinte página: Oracle Functions (PDO_OCI).
As DLLs do Windows estão disponíveis em http://php.net/downloads.php incluído no PHP.
-
Ruby: Para instalar o ruby-oci8 para Ruby, use as instruções da seguinte página: Install for Oracle Instant Client
-
DBD for Perl: Para instalar o DBD::Oracle for Perl, defina
ORACLE_HOME
e o caminho de pesquisa da biblioteca, comoLD_LIBRARY_PATH
ouPATH
, para o diretório Instant Client e use as instruções da seguinte página: Instalando o DBD-Oracle. -
Python: Para obter instruções sobre como conectar aplicativos Python, consulte Conectar Aplicativos Python com uma Wallet (mTLS)
-
Ativar Conectividade de Rede da Oracle e Obter as Credenciais de Segurança (Oracle Wallet)
-
Obtenha as credenciais de segurança do cliente para estabelecer conexão com o Autonomous Database. Você obtém um arquivo zip contendo as credenciais de segurança do cliente e as definições de configuração de rede necessárias para acessar o seu banco de dados. Você deve proteger esse arquivo e seu conteúdo para impedir o acesso não autorizado ao banco de dados. Obtenha o arquivo de credenciais de segurança do cliente da seguinte forma:
-
Usuário ADMIN: Clique em conexão do banco de dados. Consulte Fazer Download das Credenciais do Cliente (Wallets).
-
Outro usuário (não administrador): Obtenha o Oracle Wallet do administrador do seu Autonomous Database.
-
-
Extraia os arquivos de credenciais do cliente (wallet):
-
Descompacte o arquivo zip de credenciais do cliente.
-
Se você estiver usando o Instant Client, faça uma hierarquia de subdiretórios
network/admin
no diretório Instant Client, se necessário. Em seguida, mova os arquivos para esse subdiretório. Por exemplo, dependendo da arquitetura ou do sistema cliente e onde você instalou o Instant Client, os arquivos deverão estar no diretório:C:\instantclient_12_2\network\admin
ou
/home/myuser/instantclient_18_5/network/admin
ou
/usr/lib/oracle/18.5/client64/lib/network/admin
-
Se você estiver usando um Oracle Client completo, mova o arquivo para
$ORACLE_HOME/network/admin
.
-
-
Como alternativa, coloque os arquivos de wallet descompactados em um diretório seguro e defina a variável de ambiente
TNS_ADMIN
com esse nome de diretório.
Observação
No arquivo zip, somente estes arquivos são obrigatórios:tnsnames.ora
,sqlnet.ora
,cwallet.sso
eewallet.p12
. -
-
Se você estiver usando um proxy, siga as etapas em "Connections with an HTTP Proxy", em Prepare for Oracle Call Interface, ODBC, and JDBC OCI Connections with Wallets (mTLS).
Executar Seu Aplicativo
-
Atualize seu aplicativo para estabelecer conexão usando seu nome de usuário do banco de dados, sua senha e o nome de conexão do Oracle Net fornecido no arquivo
tnsnames.ora
descompactado. Por exemplo, usuário,adb_user
, senha edb2022adb_low
como string de conexão. -
Como alternativa, altere a string de conexão em
tnsnames.ora
para corresponder à string usada pelo seu aplicativo. -
Execute seu aplicativo.