Files
oracle-deep-data-security-lab/scenarios/06-rag-vector-classified-docs/README.md
Rodrigo Pace cde150b705
Some checks failed
Repo Quality / structure (push) Has been cancelled
Expand scenario READMEs with step-by-step execution guides
2026-05-08 13:39:13 -03:00

2.8 KiB

06 - RAG Vector Classified Docs

Objetivo

Demonstrar que um agente RAG ou copilot interno so recupera documentos e chunks autorizados para o usuario final antes de enviar contexto ao LLM.

O Que Este Lab Mostra

Antes do Oracle Deep Data Security, a busca vetorial pode recuperar chunks confidenciais de RH, juridico e executivo. Depois dos data grants, a recuperacao vetorial respeita a classificacao do documento e a persona do usuario.

Personas

  • nina: colaboradora comum.
  • heitor: RH.
  • sofia: juridico.
  • carlos: executivo.

Onde Executar Os Comandos

Execute os comandos a partir da raiz do repositorio:

cd C:\Users\rodrigo\Documents\Codex\oracle-deep-data-security-lab

Conecte no banco com SQLcl ou SQL*Plus:

sql "<connect_string>"

Este cenario usa tipo VECTOR, TO_VECTOR e VECTOR_DISTANCE. Use uma versao do banco com suporte a Oracle AI Vector Search.

Passo A Passo - Antes, Ambiente Vulneravel

  1. Acesse o banco:

    sql "<connect_string>"
    
  2. Limpe o cenario:

    @scenarios/06-rag-vector-classified-docs/sql/99_reset.sql
    
  3. Crie a tabela de chunks, embeddings simples e personas:

    @scenarios/06-rag-vector-classified-docs/sql/00_schema.sql
    @scenarios/06-rag-vector-classified-docs/sql/01_seed_data.sql
    @scenarios/06-rag-vector-classified-docs/sql/02_identities.sql
    
  4. Simule a pergunta RAG:

    Resuma documentos criticos sobre renovacoes, pessoas e riscos legais.
    
  5. Execute a busca vetorial:

    @scenarios/06-rag-vector-classified-docs/sql/04_test_queries.sql
    

Resultado esperado antes: a busca pode recuperar chunks HR_CONFIDENTIAL, LEGAL_CONFIDENTIAL e EXECUTIVE_CONFIDENTIAL.

Passo A Passo - Depois, Com Deep Data Security

  1. Aplique os data grants por classificacao:

    @scenarios/06-rag-vector-classified-docs/sql/03_data_grants.sql
    
  2. Execute novamente a mesma busca vetorial:

    @scenarios/06-rag-vector-classified-docs/sql/04_test_queries.sql
    
  3. Repita a demonstracao simulando nina, heitor, sofia e carlos.

Resultado esperado depois:

  • nina ve apenas chunks PUBLIC e INTERNAL.
  • heitor ve conteudo de RH autorizado.
  • sofia ve conteudo juridico autorizado.
  • carlos ve todos os documentos por perfil executivo.
  • O LLM recebe somente contexto autorizado.

Execucao Automatizada Opcional

Windows:

powershell -ExecutionPolicy Bypass -File .\scripts\run-scenario.ps1 -Scenario 06-rag-vector-classified-docs -ConnectString "<connect_string>"

Linux/macOS:

./scripts/run-scenario.sh 06-rag-vector-classified-docs "<connect_string>"

Detalhes Da Demo

Veja o passo a passo completo, evidencias e referencias oficiais em RUNBOOK.md.