Autonomous IA Database on Oracle Cloud Infrastructure - Como acessar um Autonomous Database usando Wallet

Olá, a finalidade desse post e mostrar como criar uma conta Free Tier (always free) na Oracle Cloud, provisionar um ambiente Oracle Autonomous Database e realizar o acesso via internet de maneira segura fazendo uso de uma Wallet.


Primeiro Passo - Criando a Conta

Acessar o site da Oracle Cloud e criar sua conta gratuitamente (se você já criou previamente, pule esse passo)

Use o link Infrasestrutura de Nuvem | Oracle Brasil para acessar a pagina Inicial da OCI.

Na tela haverá o botão em verde: "Teste a OCI gratuitamente". Clique nele.

Na tela você verá como funciona a conta gratuita na OCI que basicamente te dá 300 dólares nos primeiros 30 dias para usar e testar todos os serviços da OCI além do Always Free. A qualquer momento durante os primeiros 30 dias ou depois você pode mudar para o pagamento por uso (Pasy as you Go) ou seja, você paga apenas pelo que exceder os valores mensais gratuitos. Se você não fizer nada após 30 dias você ainda continuará recebendo os serviços always free na sua conta.

Clique em "Comece gratuitamente" e insira seus dados para criação da sua conta gratuita. Seja solicitado dados como nome, E-mail e senha, preencha tudo.

Apos criar a conta, no primeiro login sera necessario cadastrar o MFA para garantir a segurança de acesso com um autenticador de dois fatores, cadastre e após isso sera direcionado para a tela inicial da console:


Segundo Passo - Acessando a console


Já na tela inicial da console, Abaixo podemos ver que no canto superior esquerdo temos uma mensagem informando que nossa conta e uma conta gratuita e podemos fazer o Upgrade para uma conta paga a qualquer momento.



Ainda nessa pagina, vamos clicar no menu de Hamburger que se encontrar no canto superior esquerdo e depois vamos clicar na seção "Identity & Security" e depois em "Compartments", onde vamos clicar em "Create Compartment" :


























Na tela de Compartments vamos criar um novo para abrigar o Banco de Dados que iremos criar, assim conseguimos segregar recursos nesse Compartment e organizar o ambiente ao nosso modo. O Nosso novo compartment chamara "Comp_TESTE" e será colocado dentro do Root Compartment (pedrohvido).










Nessa tela podemos adicionar tags ao compartment para realizar um tipo de gerenciamento dos serviços mais refinado, mas para esse laboratório no faremos uso deste recurso.

Clique em "Create Compartment" para seguir com a criação.

Agora ja e possível ver o nosso compartment criado: 








Terceiro Passo - Provisionando um Autonomous Database

Agora que temos o nosso novo compartment Comp_TESTE, vamos seguir criando o nosso Banco de Dados. No menu de hamburger, vamos selecionar a opção "Oracle AI Database" e depois "Autonomous AI Database":









Como ainda não temos nenhum ambiente, devemos criar um novo Banco, clique em "Create Autonomous AI Database":









Nesta tela devemos realizar algumas configurações, como display name, Database name e Compartment, devemos usar o compartment criado e selecionar as opções Transaction Processing e habilitar a flag Always Free. Selecione a versão 26ai.

  • Display name: Nome do nosso ambiente "ATP_TESTE"
  • Database name: Nome do nosso banco autonomous "ATPDB"
  • Compartment: Usar o compartment que acabamos de criar "Comp_TESTE"













Rolando a tela temos mais algumas configurações para realizarmos:

Vamos configurar a senha do user ADMIN e selecionar a configuração de rede para habilitar o acesso ao banco de dados via internet:















Mantenha o restante das opções sem alteração e clique em "Create" ao final da página:

Nesse momento o nosso ambiente esta sendo criado com o status "Provisioning", devemos aguardar alguns minutos ate que o status mude para "Available" :






















Após 5 minutos o nosso ambiente foi criado com sucesso:

























Agora com nosso ambiente criado, podemos seguir para a parte que nos interessa, como acessar o ambiente fazendo uso de uma wallet seja ela de instância ou regional, ou através de uma string de conexão segura.


Quarto Passo - Acessando o Autonomous Database


1- Como acessar o ambiente fazendo uso de uma Wallet :

Primeiro devemos acessar a tela de Database Conections :









Será aberta uma nova tela onde teremos todas as informações necessárias para o nosso acesso, nessa tela podemos ver que temos uma seção "Download client Credentials (Wallet)" onde temos dois tipo de Wallet - Instance Wallet e Regional Wallet. A diferença entre ambas e simples:

- Instance Wallet : Contém as credencias apenas de uma instance, a instance em questão a qual estamos acessando.

- Regional Wallet : Contém as credenciais de todas as instances de banco para a region selecionada.














Como não temos outro ambiente nesse laboratório, vamos usar a instance wallet. Dessa forma devemos baixar o arquivo zip na opção "Download Wallet". Salve o Arquivo zip onde achar melhor, mais a frente vamos usar essa arquivo.














Para realizar o download da Wallet, devemos configurar uma senha, que deve ser diferente da senha ADMIN, para garantir a segurança no acesso/Download. Configure a senha e clique em Download:














Com a nossa wallet baixada, vamos usar o SQLDeveloper para realizar o acesso usando a wallet:




OBS: Sempre baixa a Wallet para um local seguro. Certifique-se de que apenas usuários autorizados tenham acesso a esses arquivos.


Você pode baixar o SQLDeveloper direto no site da Oracle usando o link -> Oracle SQL Developer Downloads . (Certifique de sempre usar a versão mais recente do Developer para maior segurança)

Agora vamos abrir o SQLDeveloper e clicar no botão com símbolo "+" em verde, agora devemos passar a credencial do user ADMIN que foi configurado no provisionamento do ambiente juntamente com a senha. Em "Tipo de conexão" devemos selecionar a opção "Wallet do Cloud" e abaixo teremos uma opção "Procurar" a qual devemos selecionar o arquivo .zip da wallet que baixamos no passo anterior. Após selecionar o arquivo, na opção "serviço" já deve aparecer para selecionar os tipos de serviços que temos disponível para uso e que foram lidos de dentro da Wallet, entre eles High, low, Medium, tp e tpurgent, selecione Low para teste.

Importante lembrar que não e necessário extrair o zip da Wallet.

Após realizar todos os ajustes, use o botão "Testar" para realizar teste de conexão. Se tudo estiver correto teremos a mensagem "Status: Com Sucesso" na tela abaixo:

Dessa forma você pode salvar a conexão para uso posterior ou conectar imediatamente.

Abaixo a imagem de como deve se assemelhar a sua conexão.



















2 - Como acessar o ambiente fazendo uso de uma string de conexão segura:

Voltemos para a console da OCI e vamos acessar novamente o mesmo menu onde fizemos o download da Wallet, vamos acessar o menu "Database Conections" na pagina do banco de dados:














Role a tela para baixo, após clicar em "Database conections" e verá que temos uma seção "Connection Strings", copie o conteúdo do TNS Name "atpdb_low" clicando nos 3 pontos a frente da conexão e cole em bloco de notas para uso posterior:




















Vamos realizar um ajuste no ACL e mTLS para garantir o acesso ao ambiente e que não haja bloqueios:

Nesse ponto vamos desabilitar o mTLS ou mutual (mTLS). Aplicações que usam o driver JDBC Thin suportam autenticação TLS e TLS mutual (mTLS). Usar autenticação mTLS requer que você forneça credenciais do banco de dados Oracle, incluindo a Wallet Oracle ou arquivos Java KeyStore (JKS) ao se conectar ao banco de dados. 
Nesse caso como vamos realizar um teste e não temos uma aplicação para realizar a conexão vamos desabilitar o mTLS, criar uma regrar no Access Control List que irá controlar o acesso deixando apenas conexões do nosso IP realizar a autenticação usando apenas o user, senha e a string JDBC modificada.

Importante lembrar que essa não e uma maneira segura de acesso, sempre use o mTLS. Nesse caso usaremos apenas o TLS (Transport Layer Security) que se enquadra nas seguintes configurações de rede:

  • Acesso apenas por endpoint privado: configuração de rede com um endpoint privado
  • Acesso seguro apenas de IPs e VCNs permitidos: configuração com uma Lista de Controle de Acesso (ACL)
  • Se o seu Banco de Dados Autonomous AI estiver em um endpoint público sem nenhuma ACL, você pode adicionar 0.0.0.0/0 como seu CIDR no ACL e habilitar a autenticação TLS (A qual vamos usar). Adicionar 0.0.0.0/0 como seu seu CIDR no ACL é idêntico a ter seu Banco de Dados Autonomous AI em um endpoint público sem ACL.


Na tela inicial do ambiente vamos habilitar o ACL, clicando na opcao "Edit":





























Agora vamos usar a opção "Add my IP Address" para adicionarmos o IP da nossa máquina para liberar o acesso via Access Control List, habilite a opção e clique em "Save":
























A alteração pode demorar alguns minutos, aguarde o Banco de Dados mudar o status de Updating para Available e agora devemos desativar o mTLS clicando na opcao "edit"  fazendo uso apenas do TLS:

















Desabilite a flag e clique em "Save":






















Nossa configuração ficará assim :

ACL - Enabled  (Com o IP da nossa maquina)
mTLS - Not Required (Com a flag desabilitada)

















Agora devemos voltar ao SQLDeveloper e configurar a conexão, vamos colocar a entrada do TNS que copiamos para o bloco de notas no passo anterior ao selecionar a opção Tipo de conexao "JDBC personalizado", adicionado "jdbc:oracle:thin:@" no começo da string copiada como mostrado abaixo :





 














Conclusão:

O post cobre os seguintes tópicos:

1- Como criar uma conta OCI Free Tier
2- Como criar um Compartment para separar recursos na Cloud OCI
3- Como criar um Banco Autonomous AI 26i
4- Como Conectar ao ambiente usando Wallet
5- Como Conectar ao ambinte usando TNS Name
6- Como Gerenciar acesso fazendo uso de ACLs


Espero que esse material ajude com mais uma ferramenta útil no dia a dia. Caso tenha alguma dúvida ou sugestão de postagem, deixo aqui meu E-mail - pedrohvido@gmail.com para contato.

Nos vemos no próximo post!



















Comentários

Postagens mais visitadas deste blog

Instalando Oracle Database 19c em um Oracle Linux 8.8 no Virtual Box - PARTE 2

Temporary Tablespace : Identificando consultas consumindo uma Tablespace Temporária

SQL - Calculando crescimento do Banco de dados Oracle