Translate lab documentation to English
Some checks failed
Repo Quality / structure (push) Has been cancelled
Terraform Validate / validate (push) Has been cancelled

This commit is contained in:
Rodrigo Pace
2026-05-08 14:50:52 -03:00
parent cde150b705
commit 52bf971b8b
33 changed files with 939 additions and 702 deletions

View File

@@ -1,38 +1,38 @@
# Oracle Deep Data Security Lab
Kit interno para demonstrar Oracle Deep Data Security em cenários de segurança de dados comuns em clientes: agentes de AI, aplicações com conta compartilhada, BI ad hoc, acesso a PII e bypass por views.
Internal enablement kit for demonstrating Oracle Deep Data Security in realistic enterprise data security scenarios: AI agents, prompt injection, shared application accounts, ad hoc BI, PII access, view bypass, legacy app modernization, RAG/vector retrieval, and audit evidence.
O objetivo é permitir que qualquer pessoa do time consiga subir uma fundação OCI segura, instalar cenários de laboratório, executar testes positivos/negativos e coletar evidências de forma repetível.
The goal is to let any team member deploy a secure OCI foundation, install lab scenarios, run positive and negative tests, and collect evidence in a repeatable way.
## Visão Rápida
## Quick View
```text
terraform/ Infraestrutura OCI segura por padrão
scenarios/ Labs independentes em SQL e runbooks
scripts/ Automação de bootstrap, validação, execução e reset
docs/ Guias para arquitetura, demo e operação
apps/ Espaço para app Spring Boot, agente AI e simulador BI
terraform/ Secure-by-default OCI infrastructure
scenarios/ Independent SQL labs and runbooks
scripts/ Bootstrap, validation, execution, and reset automation
docs/ Architecture, demo, and operations guides
apps/ Placeholder for Spring Boot app, AI agent, and BI simulator
```
## Cenários Incluídos
## Included Scenarios
| ID | Cenário | Objetivo |
| ID | Scenario | Objective |
| --- | --- | --- |
| 01 | AI Prompt Injection | Demonstrar que o banco limita dados mesmo quando o agente gera SQL amplo ou malicioso. |
| 02 | Shared App Account | Demonstrar controle por usuário final mesmo com uma conta técnica de aplicação. |
| 03 | PII Row/Column/Cell | Demonstrar controle por linha, coluna e célula para dados pessoais e salário. |
| 04 | View Bypass / MAC | Demonstrar Mandatory Access Control com `USE DATA GRANTS ONLY`. |
| 05 | Legacy App AI Extension | Demonstrar modernizacao com agente AI sem reescrever a autorizacao da aplicacao legada. |
| 06 | RAG Vector Classified Docs | Demonstrar RAG/vector search retornando apenas chunks autorizados por classificacao. |
| 07 | Audit Evidence With Data Safe | Demonstrar evidencias de acesso com Unified Audit e roteiro de validacao no OCI Data Safe. |
| 01 | AI Prompt Injection | Show that the database limits data even when an AI agent generates broad or malicious SQL. |
| 02 | Shared App Account | Show end-user data enforcement even when a technical application account is used. |
| 03 | PII Row/Column/Cell | Show row, column, and cell-level controls for personal data and salary. |
| 04 | View Bypass / MAC | Show Mandatory Access Control with `USE DATA GRANTS ONLY`. |
| 05 | Legacy App AI Extension | Show AI modernization without rewriting all legacy application authorization logic. |
| 06 | RAG Vector Classified Docs | Show RAG/vector search returning only authorized chunks by classification. |
| 07 | Audit Evidence With Data Safe | Show access evidence with Unified Audit and OCI Data Safe validation guidance. |
Cada cenario possui um `RUNBOOK.md` com passo a passo de demo em formato antes/depois, evidencias esperadas e referencias oficiais.
Each scenario includes a `RUNBOOK.md` with a before/after demo flow, expected evidence, and official references.
## Guias De Execucao Dos Cenarios
## Scenario Execution Guides
Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook mostra o cenario vulneravel antes da aplicacao dos controles, os comandos para aplicar Oracle Deep Data Security, o resultado esperado depois da protecao e as referencias oficiais usadas.
Use these links to open the step-by-step demo guide for each scenario. Each runbook explains the vulnerable baseline, the commands to apply Oracle Deep Data Security, the expected protected result, and the official references.
| ID | Cenario | Guia passo a passo |
| ID | Scenario | Step-by-step guide |
| --- | --- | --- |
| 01 | AI Prompt Injection | [RUNBOOK.md](scenarios/01-ai-prompt-injection/RUNBOOK.md) |
| 02 | Shared App Account | [RUNBOOK.md](scenarios/02-shared-app-account/RUNBOOK.md) |
@@ -42,19 +42,19 @@ Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook most
| 06 | RAG Vector Classified Docs | [RUNBOOK.md](scenarios/06-rag-vector-classified-docs/RUNBOOK.md) |
| 07 | Audit Evidence With Data Safe | [RUNBOOK.md](scenarios/07-audit-evidence-data-safe/RUNBOOK.md) |
## Pré-Requisitos
## Prerequisites
- Conta OCI com permissão para criar rede, Autonomous Database, Vault opcional e Compute opcional.
- Terraform 1.6 ou superior.
- OCI CLI configurado, ou variáveis de autenticação do provider OCI.
- SQLcl, SQL*Plus ou outro cliente compatível.
- Acesso a uma versão de Oracle AI Database compatível com Deep Data Security.
- OCI tenancy with permission to create networking, Autonomous Database, optional Vault, and optional Compute resources.
- Terraform 1.6 or later.
- OCI CLI configured, or OCI provider authentication variables.
- SQLcl, SQL*Plus, or another compatible Oracle client.
- Access to an Oracle AI Database version compatible with Oracle Deep Data Security.
## Execucao Em 7 Passos
## 7-Step Execution
1. Clone o repositorio.
1. Clone the repository.
2. Copie o arquivo de exemplo.
2. Copy the example Terraform variables file.
Linux/macOS:
@@ -68,7 +68,7 @@ Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook most
Copy-Item terraform\envs\demo\terraform.tfvars.example terraform\envs\demo\terraform.tfvars
```
3. Edite `terraform/envs/demo/terraform.tfvars` com seus OCIDs, regiao e parametros do banco.
3. Edit `terraform/envs/demo/terraform.tfvars` with your OCIDs, region, and database parameters.
Linux/macOS:
@@ -82,7 +82,7 @@ Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook most
notepad terraform\envs\demo\terraform.tfvars
```
4. Valide a infraestrutura.
4. Validate the infrastructure.
Linux/macOS:
@@ -97,7 +97,7 @@ Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook most
powershell -ExecutionPolicy Bypass -File .\scripts\validate-terraform.ps1
```
5. Faca o deploy.
5. Deploy the infrastructure.
Linux/macOS:
@@ -119,7 +119,7 @@ Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook most
Set-Location ..\..\..
```
6. Instale um cenario.
6. Install a scenario.
Linux/macOS:
@@ -133,7 +133,7 @@ Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook most
powershell -ExecutionPolicy Bypass -File .\scripts\run-scenario.ps1 -Scenario 01-ai-prompt-injection -ConnectString "<connect_string>"
```
7. Execute testes e reset quando necessario.
7. Run tests and reset when needed.
Linux/macOS:
@@ -149,27 +149,28 @@ Use os links abaixo para acessar o passo a passo de cada demo. Cada runbook most
powershell -ExecutionPolicy Bypass -File .\scripts\reset-scenario.ps1 -Scenario 05-legacy-app-ai-extension -ConnectString "<connect_string>"
```
## Segurança Por Padrão
## Secure Defaults
- Banco em subnet privada.
- Sem IP público no banco.
- NSGs dedicados para aplicação e banco.
- mTLS obrigatório na conexão do Autonomous Database.
- Secrets fora do Git.
- Vault/KMS opcional para chaves gerenciadas pelo cliente.
- Compute bastion desabilitado por padrão.
- Evidências e logs de demo ignorados pelo Git.
- Database deployed in a private subnet.
- No public IP on the database.
- Dedicated NSGs for application and database access.
- mTLS required for Autonomous Database connectivity.
- Secrets kept out of Git.
- Optional Vault/KMS customer-managed keys.
- Compute bastion disabled by default.
- Demo evidence and logs ignored by Git.
## Como Contribuir
## Contributing
Leia [CONTRIBUTING.md](CONTRIBUTING.md). Todo novo cenário deve conter `README.md`, `metadata.yaml`, SQL numerado, testes positivos/negativos e script de reset.
Read [CONTRIBUTING.md](CONTRIBUTING.md). Every new scenario must include `README.md`, `RUNBOOK.md`, `metadata.yaml`, numbered SQL files, positive/negative tests, and a reset script.
## CI/CD
O repositório inclui GitHub Actions para:
This repository includes GitHub Actions for:
- `terraform fmt`
- `terraform init -backend=false`
- `terraform validate`
- checagem da estrutura mínima dos cenários
- bloqueio de arquivos sensíveis como `.tfvars`, `.pem` e `.key`
- minimum scenario structure checks
- blocking sensitive files such as `.tfvars`, `.pem`, and `.key`