2.5 KiB
2.5 KiB
Runbook - 06 RAG Vector Classified Docs
Objetivo
Demonstrar que um agente RAG so recupera chunks/documentos autorizados antes de enviar contexto ao LLM.
Valor De Seguranca
- Reduz over-retrieval em RAG.
- Evita que chunks confidenciais sejam enviados ao modelo.
- Combina vector search com data grants por classificacao.
Pre-Requisitos
- Banco Oracle AI Database com suporte a
VECTOR,TO_VECTOReVECTOR_DISTANCE. - Banco compativel com Oracle Deep Data Security.
- SQLcl ou SQL*Plus.
Antes - Ambiente Vulneravel
-
Limpe o cenario:
@scenarios/06-rag-vector-classified-docs/sql/99_reset.sql -
Crie chunks e personas, sem aplicar data grants:
@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 -
Simule a pergunta RAG:
Resuma documentos criticos sobre renovacoes, pessoas e riscos legais. -
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_CONFIDENTIALeEXECUTIVE_CONFIDENTIAL. - O LLM poderia receber contexto sensivel antes mesmo de gerar a resposta.
Depois - Aplicando Deep Data Security
-
Aplique data grants por classificacao:
@scenarios/06-rag-vector-classified-docs/sql/03_data_grants.sql -
Execute a mesma busca como
nina,heitor,sofiaecarlos:@scenarios/06-rag-vector-classified-docs/sql/04_test_queries.sql
Resultado Esperado Depois
ninarecupera apenasPUBLICeINTERNAL.heitorrecupera conteudo de RH autorizado.sofiarecupera conteudo juridico autorizado.carlosrecupera todos os chunks por papel executivo.- A camada RAG so envia contexto autorizado ao LLM.
Evidencias Para Demo
- Lista de chunks recuperados antes/depois.
- Classificacoes visiveis por persona.
- Explicacao de que o controle ocorre antes da chamada ao LLM.
Referencias Oficiais
- Oracle Deep Data Security Guide: https://docs.oracle.com/en/database/oracle/oracle-database/26/ddscg/index.html
- Create Data Grants: https://docs.oracle.com/en/database/oracle/oracle-database/26/ddscg/create-data-grants.html
- TO_VECTOR SQL Reference: https://docs.oracle.com/en/database/oracle/oracle-database/26/sqlrf/to_vector.html
- VECTOR operations in PL/SQL: https://docs.oracle.com/en/database/oracle/oracle-database/26/lnpls/sql-data-types.html