- Copia integral de ampmInsights_V1/ (docs/ + sql/), que o usuário confirma ser exatamente o que foi usado para construir e implementar ampmInsights_V1_Cliente no cliente. - Traz docs/10-carga-cmdb-vulnerabilidades.html de V1_Cliente (existia lá, faltava em V1 — gap de conteúdo, não só de tom). - Rebrand mecânico 'Documentação V1' -> 'Documentação V2' nas 10 páginas de docs + link de navegação para o capítulo 10 adicionado onde faltava. - ampmInsights_V1/ e ampmInsights_V1_Cliente/ ficam congelados a partir de agora (réplica validada, já implementada no cliente) — todo o trabalho de v2.0.0 (schema aditivo: ALTER/MERGE, sem DROP) acontece nesta pasta. - Adiciona TASKS.md e CHANGELOG.md próprios desta geração. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
96 lines
6.9 KiB
HTML
96 lines
6.9 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 · Segurança & boas práticas</title>
|
|
<meta name="description" content="Recomendações de segurança para o ambiente ampmInsights, incluindo rotação das credenciais originais encontradas em texto puro.">
|
|
<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 ☰</button>
|
|
<div class="kicker">Documentação V2 · 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="" 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="active" 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>
|
|
</ul>
|
|
<div class="sidebar-footer">
|
|
Vulnerability & Audit AI Insights<br>
|
|
Oracle AI Database 26ai · AI Vector Search<br>
|
|
Versão V1 · ambiente reprodutível do cliente
|
|
</div>
|
|
</aside>
|
|
<main class="content">
|
|
<p class="page-kicker">Segurança</p>
|
|
<h1>Segurança & boas práticas</h1>
|
|
<p class="lede">O que rotacionar do ambiente original, e como manter o novo ambiente do cliente com privilégio mínimo.</p>
|
|
|
|
<div class="callout danger">
|
|
<div class="callout-title">Ação recomendada — credenciais do ambiente original</div>
|
|
<p>O arquivo de origem (<code>demo_ampm.sql</code>, fora desta pasta) continha uma chave privada
|
|
OCI completa, uma senha de schema e OCIDs de usuário/tenancy/compartimento em texto puro. O export
|
|
original da aplicação (<code>VulnerabilityAI-myapp.sql</code>) também continha: dois OCIDs de
|
|
tenancy, um OCID de compartimento, e-mails pessoais, e <strong>dois links pré-autenticados (PAR)
|
|
do Object Storage</strong> apontando para vídeos de demonstração hospedados em um bucket interno da
|
|
Oracle (galeria de vídeos genérica "26ai Demo Hub", sem relação com a AM/PM). Nenhum desses valores
|
|
foi trazido para <code>ampmInsights_V1</code>, mas recomenda-se:</p>
|
|
<ul>
|
|
<li>Revogar/rotacionar, no Console OCI, a API key correspondente à chave privada que estava em <code>demo_ampm.sql</code>.</li>
|
|
<li>Trocar a senha do usuário de banco original (se o ambiente de origem continuar em uso).</li>
|
|
<li>Revogar/expirar os dois links PAR de Object Storage encontrados no export original (dão acesso de leitura a objetos do bucket sem outra autenticação).</li>
|
|
<li>Não incluir <code>demo_ampm.sql</code>, <code>VulnerabilityAI-myapp.sql</code>, <code>Connections.md</code> ou <code>Wallet_ADBJSON.zip</code> (pasta raiz do projeto) em nada que seja enviado ao cliente ou a terceiros — apenas os arquivos desta pasta <code>ampmInsights_V1</code>.</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<h2>Boas práticas para o ambiente do cliente</h2>
|
|
<div class="grid">
|
|
<div class="card"><h4>Privilégio mínimo</h4><p>Restrinja a política IAM da API key ao compartimento e ao bucket estritamente necessários (ver exemplo em Pré-requisitos).</p></div>
|
|
<div class="card"><h4>Rotação periódica</h4><p>Defina um ciclo de rotação da API key e da senha do schema <code>AMPMINSIGHTS</code>.</p></div>
|
|
<div class="card"><h4>ACL de rede restrita</h4><p>A regra de rede liberada cobre apenas o host de Generative AI necessário — evite abrir hosts adicionais sem necessidade.</p></div>
|
|
<div class="card"><h4>Sem segredos em texto puro</h4><p>Nunca deixe a chave privada ou senha do schema em planilhas, chats ou repositórios compartilhados.</p></div>
|
|
</div>
|
|
|
|
<h2>Itens do export original que precisam de atenção do time funcional</h2>
|
|
<p>Além de segredos, o export da aplicação continha lógica e textos herdados de um template interno
|
|
genérico de demonstração ("26ai Demo Hub"), incompatíveis com a entrega deste ambiente à AM/PM.
|
|
Foram ajustados nesta versão, mas revise antes de liberar aos usuários finais:</p>
|
|
<ul>
|
|
<li><strong>Autoprovisionamento de acesso:</strong> o cadastro automático de novos usuários (com envio de senha inicial por e-mail) estava restrito a e-mails <code>@oracle.com</code>. Foi trocado por um marcador
|
|
<code><SUBSTITUA-PELO-DOMINIO-CORPORATIVO-DA-AMPM.COM.BR></code> — configure o domínio de e-mail real da AM/PM na página de cadastro antes de liberar o app, ou nenhum usuário da AM/PM conseguirá se autoprovisionar.</li>
|
|
<li><strong>Disclaimer de uso:</strong> o texto original dizia "uso restrito a colaboradores Oracle", "não enviar dados reais de clientes" e "nunca compartilhe com clientes" — o oposto do que se aplica aqui, já que este ambiente roda com dados reais da própria AM/PM. O texto foi reescrito para o contexto da AM/PM; revise a redação final com o time de compliance/segurança da informação do cliente.</li>
|
|
</ul>
|
|
|
|
<h2>Sobre a normalização de nome de marca na view</h2>
|
|
<p>A view <code>V_26AI_TECH</code> contém duas chamadas <code>REPLACE()</code> que padronizam
|
|
os valores de <code>NOME</code>/<code>EMPRESA</code> para "Company" quando o CMDB traz "Ipiranga" ou
|
|
"Ampm". Essa lógica veio do ambiente de demonstração original (provavelmente pensada para
|
|
apresentações a outros prospects). Como este ambiente V1 é o próprio ambiente da AM/PM, avalie com o
|
|
time de negócio se essa normalização ainda faz sentido ou se deve ser removida da view.</p>
|
|
|
|
<h2>Privacidade dos dados</h2>
|
|
<p>As tabelas de vulnerabilidade e CMDB carregam dados reais e sensíveis do ambiente da AM/PM
|
|
(inventário de ativos, severidade de vulnerabilidades, criticidade de sistemas). Trate a base
|
|
carregada com o mesmo nível de confidencialidade do relatório de origem (Tenable/CMDB), inclusive
|
|
em ambientes de teste/demonstração.</p>
|
|
|
|
<div class="pillnav"><a class="prev" href="06-validacao-testes.html">← Validação & testes</a><a class="next" href="08-glossario-roadmap.html">Glossário & roadmap →</a></div>
|
|
</main>
|
|
</div>
|
|
<script src="assets/main.js"></script>
|
|
</body>
|
|
</html>
|