Files
ampmInsights/docs/03-pre-requisitos-credenciais.html
Antonio Sergio Rodrigues Figueiredo 561f26608e Docs v2.0.0: capítulos 11 e 12 (evolução de schema + view/procedure)
- docs/11-v2-evolucao-schema.html: documenta o Passo 1
  (sql/03_v2_ddl_schema_evolution.sql) — o quê, por quê, script resumido,
  como rodar, validação, rollback. Callout deixa explícito que ainda está
  em validação, não é procedimento definitivo.
- docs/12-v2-view-procedure.html: documenta o Passo 2
  (sql/04_v2_view_procedure_update.sql), mesmo formato, com dependência
  explícita do capítulo 11.
- Nav lateral (sidebar) atualizada nas 12 páginas do doc set para incluir
  os capítulos novos; pillnav do capítulo 10 ganhou link 'next' para o 11.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-09 15:01:48 -03:00

117 lines
9.0 KiB
HTML

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>ampmInsights &middot; Pré-requisitos & credenciais</title>
<meta name="description" content="Checklist de pré-requisitos e passo a passo para criar a chave de API OCI usada pelo ampmInsights.">
<link rel="stylesheet" href="assets/main.css">
</head>
<body>
<div class="layout">
<aside class="sidebar">
<div class="brand">
<span class="oracle">ORACLE</span>
<span class="name">ampmInsights</span>
</div>
<button class="menu-toggle" type="button">Menu &#9776;</button>
<div class="kicker">Documentação V2 &middot; AM/PM</div>
<ul class="nav-list">
<li><a class="" href="index.html"><span class="step-no">1</span>Visão geral</a></li>
<li><a class="" href="02-arquitetura.html"><span class="step-no">2</span>Arquitetura</a></li>
<li><a class="active" href="03-pre-requisitos-credenciais.html"><span class="step-no">3</span>Pré-requisitos & credenciais</a></li>
<li><a class="" href="04-passo-a-passo-banco.html"><span class="step-no">4</span>Passo a passo: banco de dados</a></li>
<li><a class="" href="05-passo-a-passo-apex.html"><span class="step-no">5</span>Passo a passo: aplicação APEX</a></li>
<li><a class="" href="06-validacao-testes.html"><span class="step-no">6</span>Validação & testes</a></li>
<li><a class="" href="07-seguranca-boas-praticas.html"><span class="step-no">7</span>Segurança & boas práticas</a></li>
<li><a class="" href="08-glossario-roadmap.html"><span class="step-no">8</span>Glossário & roadmap</a></li>
<li><a class="" href="09-operacao-observabilidade.html"><span class="step-no">9</span>Operação & observabilidade</a></li>
<li><a class="" href="10-carga-cmdb-vulnerabilidades.html"><span class="step-no">10</span>Carga: CMDB & Vulnerabilidades</a></li>
<li><a class="" href="11-v2-evolucao-schema.html"><span class="step-no">11</span>v2.0.0 — Evolução de schema</a></li>
<li><a class="" href="12-v2-view-procedure.html"><span class="step-no">12</span>v2.0.0 — View & Procedure</a></li>
</ul>
<div class="sidebar-footer">
Vulnerability &amp; Audit AI Insights<br>
Oracle AI Database 26ai &middot; AI Vector Search<br>
Versão V1 &middot; ambiente reprodutível do cliente
</div>
</aside>
<main class="content">
<p class="page-kicker">Antes de começar</p>
<h1>Pré-requisitos e criação de credenciais</h1>
<p class="lede">Nenhuma habilidade prévia é assumida: este é o roteiro completo para gerar, do zero, tudo que os scripts pedem como <SUBSTITUA_...>.</p>
<h2>Checklist de pré-requisitos</h2>
<div class="grid">
<div class="card"><h4>Autonomous Database 26ai</h4><p>Provisionado (ATP/ADW), com acesso ADMIN e AI Vector Search disponível.</p></div>
<div class="card"><h4>Acesso ao Console OCI</h4><p>Usuário com permissão para criar API Signing Key no compartimento correto.</p></div>
<div class="card"><h4>Política IAM</h4><p>Uso do Generative AI e leitura de objetos no bucket do modelo ONNX (se for usar).</p></div>
<div class="card"><h4>Região com Generative AI</h4><p>Confirme que a região do seu tenancy oferece o OCI Generative AI (ex.: us-chicago-1 ou sa-saopaulo-1, conforme disponibilidade).</p></div>
<div class="card"><h4>Cliente SQL</h4><p>Database Actions (SQL Worksheet), SQL Developer ou SQLcl para rodar os scripts.</p></div>
<div class="card"><h4>Workspace APEX</h4><p>Um workspace disponível (ou permissão para criar um) para instalar a aplicação.</p></div>
</div>
<div class="callout info">
<div class="callout-title">Você preenche cada valor uma única vez</div>
<p>Todo OCID/região/bucket coletado nesta página é digitado <strong>uma única vez</strong>, na
tabela de configuração criada na Seção 2 do <code>01_ampminsights_db_setup.sql</code>. Os blocos
seguintes do script (credencial, modelo ONNX, SELECT AI) leem esses valores automaticamente — você
não precisa repetir nenhum OCID em vários lugares do arquivo.</p>
</div>
<h2>Passo a passo: criar a chave de API da OCI</h2>
<p>Esta chave autentica o banco de dados para chamar o OCI Generative AI (e, opcionalmente, o Object
Storage). É o único pré-requisito "manual" fora do banco de dados.</p>
<ol class="steps">
<li><h4>Abrir "User settings"</h4><p>No Console OCI, clique no seu avatar/usuário (canto superior direito) e selecione "User settings" — ou peça a um administrador OCI para gerar a chave para o usuário/service account que a aplicação vai usar.</p></li>
<li><h4>Adicionar API key</h4><p>No menu lateral, clique em "API keys" e depois em "Add API key".</p></li>
<li><h4>Gerar o par de chaves</h4><p>Selecione "Generate API key pair", clique em "Download private key" (baixa um arquivo <code>.pem</code>) e depois em "Add".</p></li>
<li><h4>Guardar os 4 valores</h4><p>A tela final mostra um "Configuration file preview" com <code>user</code>, <code>fingerprint</code>, <code>tenancy</code> e <code>region</code>. Guarde esses 4 valores — eles vão para a tabela de configuração (Seção 2 do script 1).</p></li>
<li><h4>Obter o OCID do compartimento</h4><p>Identity &amp; Security &rarr; Compartments &rarr; abra o compartimento do banco &rarr; copie o OCID no topo da página.</p></li>
<li><h4>Obter o namespace do Object Storage</h4><p>Console OCI &rarr; Storage &rarr; Buckets &rarr; o "Namespace" aparece no topo da página, independente de qual bucket você abrir. Só necessário se for usar o modelo ONNX (Seção 4 do script 1).</p></li>
<li><h4>Copiar o conteúdo da chave privada</h4><p>Abra o arquivo <code>.pem</code> em um editor de texto simples e copie todo o conteúdo, incluindo as linhas <code>BEGIN/END PRIVATE KEY</code> e as quebras de linha originais. Este é o único valor que <strong>não</strong> vai para a tabela de configuração — ele é colado direto no bloco da Seção 3, na hora de criar a credencial.</p></li>
</ol>
<div class="callout danger">
<div class="callout-title">Trate a chave privada como uma senha</div>
<p>Não envie o arquivo <code>.pem</code> por e-mail ou chat, não o suba para repositórios de código
e restrinja a política IAM do usuário ao mínimo necessário. Depois de criar a credencial no banco
(script 1, Seção 3), o arquivo local pode ser apagado com segurança — o Autonomous Database guarda a
chave de forma criptografada e ela não aparece em nenhuma consulta.</p>
</div>
<h2>Exemplo de política IAM mínima</h2>
<div class="code-block">
<div class="code-bar">
<span class="code-label">Política IAM</span>
<button class="copy-btn" type="button">Copiar</button>
</div>
<pre><code class="lang-sql">Allow group ampminsights-app to use generative-ai-family in compartment &lt;nome-do-compartimento&gt;
Allow group ampminsights-app to read objects in compartment &lt;nome-do-compartimento&gt; where target.bucket.name=&#x27;&lt;seu-bucket-onnx&gt;&#x27;</code></pre>
</div>
<h2>Onde cada valor da tabela de configuração é preenchido</h2>
<div class="table-wrap">
<table>
<tr><th>Campo (PARAM_NAME)</th><th>Onde obter</th></tr>
<tr><td><code>EMBEDDING_COMPARTMENT</code></td><td>Passo 5 acima (OCID do compartimento do banco).</td></tr>
<tr><td><code>OCI_TENANCY_OCID</code></td><td>Passo 4 acima (campo <code>tenancy</code>).</td></tr>
<tr><td><code>OCI_USER_OCID</code></td><td>Passo 4 acima (campo <code>user</code>).</td></tr>
<tr><td><code>OCI_FINGERPRINT</code></td><td>Passo 4 acima (campo <code>fingerprint</code>).</td></tr>
<tr><td><code>OCI_REGION</code></td><td>Passo 4 acima (campo <code>region</code>), ex.: <code>sa-saopaulo-1</code>.</td></tr>
<tr><td><code>OS_NAMESPACE</code></td><td>Passo 6 acima. Só necessário se for usar o modelo ONNX (Seção 4 do script 1).</td></tr>
<tr><td><code>OS_BUCKET</code></td><td>Nome que você escolher para o bucket que vai criar na Seção 4 do script 1.</td></tr>
<tr><td><code>GENAI_REGION</code></td><td>Região do OCI Generative AI (Seção 5+) — pode ser diferente de <code>OCI_REGION</code>. Padrão <code>us-chicago-1</code>; troque se sua tenancy não alcançar essa região (ver <a href="09-operacao-observabilidade.html">Operação &amp; observabilidade</a>).</td></tr>
<tr><td><code>AI_LOG_RETENTION_DAYS</code></td><td>Preenchido automaticamente (90 dias) — dias de retenção do log de chamadas de IA/embeddings.</td></tr>
<tr><td>Chave privada (.pem)</td><td>Passo 7 acima — colada direto na Seção 3 do script 1, nunca na tabela de configuração.</td></tr>
<tr><td>Credenciais do export APEX (<code>apex_cred</code>, <code>RAG_CRED</code>, compartimento no remote server <code>apex_genai</code>)</td><td>Mesmos valores de tenancy/compartimento acima — preenchidos na importação do app (ver <a href="05-passo-a-passo-apex.html">Passo a passo: aplicação APEX</a>).</td></tr>
</table>
</div>
<div class="pillnav"><a class="prev" href="02-arquitetura.html">&larr; Arquitetura</a><a class="next" href="04-passo-a-passo-banco.html">Passo a passo: banco de dados &rarr;</a></div>
</main>
</div>
<script src="assets/main.js"></script>
</body>
</html>