# 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_VECTOR` e `VECTOR_DISTANCE`. - Banco compativel com Oracle Deep Data Security. - SQLcl ou SQL*Plus. ## Antes - Ambiente Vulneravel 1. Limpe o cenario: ```sql @scenarios/06-rag-vector-classified-docs/sql/99_reset.sql ``` 2. Crie chunks e personas, sem aplicar data grants: ```sql @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 ``` 3. Simule a pergunta RAG: ```text Resuma documentos criticos sobre renovacoes, pessoas e riscos legais. ``` 4. Execute a busca vetorial: ```sql @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`. - O LLM poderia receber contexto sensivel antes mesmo de gerar a resposta. ## Depois - Aplicando Deep Data Security 1. Aplique data grants por classificacao: ```sql @scenarios/06-rag-vector-classified-docs/sql/03_data_grants.sql ``` 2. Execute a mesma busca como `nina`, `heitor`, `sofia` e `carlos`: ```sql @scenarios/06-rag-vector-classified-docs/sql/04_test_queries.sql ``` ## Resultado Esperado Depois - `nina` recupera apenas `PUBLIC` e `INTERNAL`. - `heitor` recupera conteudo de RH autorizado. - `sofia` recupera conteudo juridico autorizado. - `carlos` recupera 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