Fase 13 — perfis de acesso, matriz de permissões e auditoria de bloqueios
Esta fase usa o usuário interno ativo da Fase 12 e aplica permissões por perfil. Enquanto o banco não estiver inicializado, o sistema não bloqueia telas para evitar travamento inicial.
Altere o perfil do usuário para testar como cada área da aplicação fica liberada ou bloqueada.
Escolha um perfil, marque as permissões desejadas e salve. A tela será bloqueada quando o usuário ativo não tiver a permissão correspondente.
Visão rápida das permissões ativas em cada perfil.
Quando um usuário tenta acessar uma tela sem permissão, o bloqueio fica registrado para auditoria.
{
"ok": true,
"message": "Segurança carregada.",
"db_status": {
"ok": true,
"message": "Banco SQLite inicializado.",
"mode": "sqlite",
"pdo_available": true,
"pdo_sqlite_available": true,
"storage_dir": "/var/www/html/storage",
"storage_exists": true,
"storage_writable": true,
"db_path": "/var/www/html/storage/fluxo_caixa_crti.sqlite",
"db_exists": true,
"json_dir": "/var/www/html/storage/jsondb",
"json_exists": false,
"tables": [
"access_denied_log",
"app_users",
"audit_log",
"endpoint_cache",
"normalization_history",
"profile_permissions",
"saved_views_server",
"scenarios_server",
"sqlite_sequence"
],
"active_user": null
},
"active_user": null,
"profiles": {
"ti": "TI / BI",
"gestor": "Gestor",
"financeiro": "Financeiro",
"diretoria": "Diretoria",
"consulta": "Consulta"
},
"permissions": {
"connection": {
"area": "Sistema",
"label": "Conexão com ERP",
"description": "Configurar ou trocar a credencial de acesso ao ERP."
},
"endpoints": {
"area": "Técnico",
"label": "Testar endpoints",
"description": "Executar testes diretos dos endpoints da API."
},
"normalizacao": {
"area": "Dados",
"label": "Normalização",
"description": "Carregar dados da API e gerar a fato_fluxo_caixa."
},
"dashboard": {
"area": "Gestão",
"label": "Dashboard",
"description": "Ver cards, gráficos e resumo operacional."
},
"drilldown": {
"area": "Gestão",
"label": "Drill-down",
"description": "Abrir detalhes por documento, pessoa, conta e filial."
},
"bi": {
"area": "Gestão",
"label": "Exploração BI",
"description": "Usar filtros e agrupamentos avançados."
},
"visoes": {
"area": "Usuário",
"label": "Visões salvas",
"description": "Salvar e restaurar visões de análise."
},
"relatorios": {
"area": "Gestão",
"label": "Relatórios",
"description": "Gerar relatórios, PDF do navegador, CSV e JSON."
},
"auditoria": {
"area": "Governança",
"label": "Auditoria de dados",
"description": "Ver alertas de qualidade, vencidos, duplicidades e completude."
},
"cenarios": {
"area": "Planejamento",
"label": "Cenários e simulações",
"description": "Criar cenários locais sem alterar o ERP."
},
"database": {
"area": "Administração",
"label": "Banco & usuários",
"description": "Gerenciar usuários internos e histórico."
},
"admin": {
"area": "Administração",
"label": "Administração técnica",
"description": "Executar diagnósticos de SSL, endpoints e ambiente."
},
"security": {
"area": "Segurança",
"label": "Segurança e permissões",
"description": "Gerenciar perfis e matriz de permissões."
},
"performance": {
"area": "Performance",
"label": "Performance, cache e cargas",
"description": "Gerenciar cache de endpoints, reuso de dados e cargas incrementais."
},
"homologacao": {
"area": "Produção",
"label": "Homologação final",
"description": "Executar checklist final de aderência, UX e preparação para produção."
},
"history_save": {
"area": "Banco",
"label": "Salvar histórico",
"description": "Salvar normalizações no banco do servidor."
},
"history_restore": {
"area": "Banco",
"label": "Restaurar histórico",
"description": "Restaurar normalizações salvas para a sessão."
},
"history_delete": {
"area": "Banco",
"label": "Excluir histórico",
"description": "Excluir normalizações salvas."
},
"export": {
"area": "Saída",
"label": "Exportar dados",
"description": "Exportar CSV/JSON ou imprimir relatório."
}
},
"matrix": {
"ti": [
"admin",
"auditoria",
"bi",
"cenarios",
"connection",
"dashboard",
"database",
"drilldown",
"endpoints",
"export",
"history_delete",
"history_restore",
"history_save",
"homologacao",
"normalizacao",
"performance",
"relatorios",
"security",
"visoes"
],
"gestor": [
"auditoria",
"bi",
"cenarios",
"connection",
"dashboard",
"database",
"drilldown",
"export",
"history_delete",
"history_restore",
"history_save",
"homologacao",
"normalizacao",
"performance",
"relatorios",
"security",
"visoes"
],
"financeiro": [
"auditoria",
"bi",
"cenarios",
"dashboard",
"drilldown",
"export",
"history_restore",
"history_save",
"homologacao",
"normalizacao",
"performance",
"relatorios",
"visoes"
],
"diretoria": [
"bi",
"cenarios",
"dashboard",
"drilldown",
"export",
"history_restore",
"homologacao",
"relatorios",
"visoes"
],
"consulta": [
"bi",
"dashboard",
"export",
"history_restore",
"homologacao",
"relatorios"
]
},
"users": [
{
"id": 1,
"nome": "Usuário padrão",
"email": "",
"perfil": "gestor",
"ativo": 1,
"created_at": "2026-05-17T23:15:39+00:00",
"updated_at": null
}
],
"denied_log": [
{
"id": 2,
"user_id": 1,
"profile": "gestor",
"permission_key": "admin",
"page": "admin.php",
"created_at": "2026-05-17T23:49:46+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": []
},
{
"id": 1,
"user_id": 1,
"profile": "gestor",
"permission_key": "endpoints",
"page": "endpoints.php",
"created_at": "2026-05-17T23:49:27+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": []
}
],
"audit": [
{
"id": 20,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-06-15T11:58:28-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 19,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-06-06T21:30:00-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 18,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-27T15:10:40-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 17,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-27T15:10:40-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 16,
"user_id": null,
"acao": "migracao_banco",
"area": "database",
"created_at": "2026-05-27T11:55:31-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Migração executada.",
"mode": "sqlite"
}
},
{
"id": 15,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T21:47:21-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 14,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T21:47:21-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 13,
"user_id": null,
"acao": "migracao_banco",
"area": "database",
"created_at": "2026-05-17T21:33:56-03:00",
"usuario_nome": null,
"detalhes": {
"message": "Migração executada.",
"mode": "sqlite"
}
},
{
"id": 12,
"user_id": 1,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T23:49:48+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 11,
"user_id": 1,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T23:49:47+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 10,
"user_id": 1,
"acao": "acesso_negado",
"area": "security",
"created_at": "2026-05-17T23:49:46+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": {
"permission": "admin",
"page": "admin.php"
}
},
{
"id": 9,
"user_id": 1,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T23:49:43+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 8,
"user_id": 1,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T23:49:43+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 7,
"user_id": 1,
"acao": "acesso_negado",
"area": "security",
"created_at": "2026-05-17T23:49:27+00:00",
"usuario_nome": "Usuário padrão",
"detalhes": {
"permission": "endpoints",
"page": "endpoints.php"
}
},
{
"id": 6,
"user_id": null,
"acao": "migracao_banco",
"area": "database",
"created_at": "2026-05-17T23:29:32+00:00",
"usuario_nome": null,
"detalhes": {
"message": "Migração executada.",
"mode": "sqlite"
}
},
{
"id": 5,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T23:29:27+00:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 4,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T23:29:26+00:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 3,
"user_id": null,
"acao": "migracao_seguranca",
"area": "security",
"created_at": "2026-05-17T23:29:26+00:00",
"usuario_nome": null,
"detalhes": {
"message": "Tabelas e permissões de segurança atualizadas."
}
},
{
"id": 2,
"user_id": null,
"acao": "migracao_banco",
"area": "database",
"created_at": "2026-05-17T23:29:24+00:00",
"usuario_nome": null,
"detalhes": {
"message": "Migração executada.",
"mode": "sqlite"
}
},
{
"id": 1,
"user_id": null,
"acao": "migracao_banco",
"area": "database",
"created_at": "2026-05-17T23:15:39+00:00",
"usuario_nome": null,
"detalhes": {
"message": "Migração executada.",
"mode": "sqlite"
}
}
]
}