Files
oracle-deep-data-security-lab/scenarios/02-shared-app-account/RUNBOOK.md
Rodrigo Pace 09bb0df326
Some checks failed
Repo Quality / structure (push) Has been cancelled
Add scenario runbooks and documentation updates
2026-05-08 13:23:37 -03:00

2.5 KiB

Runbook - 02 Shared App Account

Objetivo

Demonstrar que uma conta tecnica compartilhada de aplicacao nao deve ser a fronteira real de autorizacao de dados.

Valor De Seguranca

  • Reduz o risco de connection pools com privilegios excessivos.
  • Permite que o banco avalie o usuario final, e nao apenas a conta tecnica.
  • Ajuda a proteger aplicacoes web, APIs, BI e agentes que usam contas compartilhadas.

Pre-Requisitos

  • Banco Oracle AI Database compativel com Oracle Deep Data Security.
  • SQLcl ou SQL*Plus.
  • Entendimento de qual identidade final sera propagada pela aplicacao.

Antes - Ambiente Vulneravel

  1. Limpe o cenario:

    @scenarios/02-shared-app-account/sql/99_reset.sql
    
  2. Crie a tabela, dados e conta tecnica:

    @scenarios/02-shared-app-account/sql/00_schema.sql
    @scenarios/02-shared-app-account/sql/01_seed_data.sql
    @scenarios/02-shared-app-account/sql/02_identities.sql
    
  3. Simule uma aplicacao ou API usando a conta DDS_APP para consultar todos os pedidos:

    @scenarios/02-shared-app-account/sql/04_test_queries.sql
    

Resultado Esperado Antes

  • A conta compartilhada consegue enxergar pedidos de todos os vendedores e regioes.
  • Campos como MARGIN podem ficar expostos se a aplicacao gerar SQL incorreto.
  • Um bug, prompt injection ou endpoint abusado pode consultar mais dados do que o usuario deveria ver.

Depois - Aplicando Deep Data Security

  1. Aplique data grants por papel de negocio:

    @scenarios/02-shared-app-account/sql/03_data_grants.sql
    
  2. Execute a mesma query no contexto de alice e bruno:

    @scenarios/02-shared-app-account/sql/04_test_queries.sql
    

Resultado Esperado Depois

  • alice ve somente seus pedidos e nao ve margin.
  • bruno ve pedidos LATAM com acesso gerencial.
  • A conta tecnica deixa de ser a unica fronteira de seguranca.

Evidencias Para Demo

  • Comparacao antes/depois do mesmo SQL.
  • Explicacao do uso de data roles.
  • Diagrama simples: usuario final -> app -> banco -> data grants.

Referencias Oficiais