Pular para conteúdo

Módulo de Controle de Acesso (RBAC)

  • Sigla: RBAC (Role-Based Access Control)
  • Status:
  • ✅ Revisado
  • ✅ Aprovado

  • Implementação:

  • ⬜ Backend
  • ⬜ Frontend
  • ⬜ Mobile
  • ⬜ Backoffice

Legenda: ⬜ Pendente | ✅ Realizado | ⚠️ Ponto de atenção | ❌ Não se aplica

Descrição

O módulo de Controle de Acesso (RBAC) do sistema BoiView é responsável pela gestão centralizada de usuários, papéis e permissões, assegurando que cada usuário tenha acesso apenas às funcionalidades e informações pertinentes ao seu perfil e responsabilidades na organização. O RBAC garante segurança, rastreabilidade e coerência operacional.

Escopo Inicial

  • Cadastro e gerenciamento de usuários
  • Cadastro e configuração de papéis
  • Vinculação de papéis a permissões
  • Associação de usuários a um ou mais papéis

Funcionalidades

  • Gestão de Usuários: Cadastro, edição e desativação de contas
  • Administração de Papéis: Criação e edição de perfis personalizados e predefinidos
  • Controle de Permissões: Definição granular de permissões por papel
  • Políticas de Segurança: Recuperação de senha, controle de sessão e requisitos de complexidade
  • Autenticação Multi-fator: Configuração de segundo fator de autenticação por perfil
  • Auditoria de Acessos: Registro e consulta de tentativas de acesso, login e logout
  • Gestão de Sessões: Controle de sessões ativas e tempo de expiração configurável

Requisitos Funcionais

  • RF-RBAC-001: Restrição e Permissão conforme permissão
  • Descrição: Este módulo define funções de usuários dos quais ele deve ter a devida permissão para realizar certas ações.
  • Critério de aceitação: Usuários só acessam funcionalidades liberadas para seu perfil.
  • Prioridade: Alta

  • RF-RBAC-002: Funções Fixas do Sistema

  • Descrição: O sistema deve ter funções pré-definidas para vincular papéis.
  • Critério de aceitação: Funções fixas devem ser implementadas e vinculadas a papéis.
  • Prioridade: Alta

  • RF-RBAC-003: Cadastro de usuários

  • Descrição: O sistema deve permitir o cadastro, edição e desativação de usuários.
  • Critério de aceitação: Usuário criado com nome, e-mail, senha e perfil atribuído.
  • Prioridade: Alta

  • RF-RBAC-004: Cadastro de papéis e funções

  • Descrição: O sistema deve permitir o cadastro de papéis e o vínculo de funções a eles.
  • Critério de aceitação: Papéis e funções devem ser criados e vinculados a usuários.
  • Prioridade: Alta

  • RF-RBAC-005: Autenticação Multi-fator

  • Descrição: O sistema deve oferecer e gerenciar autenticação em dois fatores (2FA) para usuários conforme seu perfil e nível de acesso.
  • Critério de aceitação: Usuários podem ativar 2FA via aplicativo autenticador ou SMS, e configuração por perfil é respeitada.
  • Prioridade: Alta

  • RF-RBAC-006: Auditoria de Acessos

  • Descrição: O sistema deve registrar todas as tentativas de acesso, bem-sucedidas ou não, incluindo login, logout e ações críticas.
  • Critério de aceitação: Logs de acesso contêm usuário, horário, IP, dispositivo e resultado da tentativa, com consulta filtrada disponível.
  • Prioridade: Alta

  • RF-RBAC-007: Autenticação Multi-fator

  • Descrição: O sistema deve permitir a configuração de segundo fator de autenticação por perfil.
  • Critério de aceitação: Usuários conseguem configurar e utilizar autenticação em duas etapas.
  • Prioridade: Média

  • RF-RBAC-008: Recuperação e redefinição de senha

  • Descrição: O sistema deve oferecer mecanismo seguro para recuperação e redefinição de senha, incluindo verificação de identidade por meio de e-mail ou SMS.
  • Critério de aceitação: Usuários conseguem recuperar acesso através de processo seguro e rastreável.
  • Prioridade: Alta

Requisitos Não Funcionais

  • RNF-RBAC-001: Desempenho
  • Descrição: O sistema deve suportar pelo menos 1000 usuários concorrentes, mantendo tempo de resposta médio inferior a 2 segundos para operações críticas.
  • Prioridade: Média

  • RNF-RBAC-002: Segurança e Auditoria

  • Descrição: Todas as alterações de permissões e acessos devem ser registradas em logs imutáveis e auditáveis.
  • Prioridade: Alta

  • RNF-RBAC-003: Disponibilidade e operação offline

  • Descrição: O módulo deve garantir operação contínua mesmo em condições de conexão limitada ou inexistente, mantendo a segurança e integridade do controle de acesso.
  • Critério de aceitação: 99,9% de disponibilidade mensal para operações online, com recuperação automática após falhas.
  • Critério de aceitação: Cache local seguro e criptografado de credenciais e permissões, atualizado a cada sincronização.
  • Critério de aceitação: Mecanismo de expiração configurável para permissões em cache, exigindo re-sincronização após período máximo definido (padrão: 7 dias).
  • Critério de aceitação: Em modo offline, autenticações e verificações de permissões são registradas localmente para posterior auditoria.
  • Prioridade: Alta

  • RNF-RBAC-004: Proteção contra Ataques

  • Descrição: O sistema deve implementar proteção contra ataques de força bruta, injeção e tentativas de acesso não autorizado.
  • Prioridade: Alta

  • RNF-RBAC-005: Retenção de Logs

  • Descrição: Logs de acesso e auditoria devem ser retidos por período mínimo de 12 meses e exportáveis em formatos padronizados.
  • Prioridade: Média

Regras de Negócio

  • RN-RBAC-001: Cada usuário deve possuir um e apenas um perfil ativo.
  • Critério de aceitação: Sistema bloqueia múltiplos perfis ativos para o mesmo usuário.
  • Prioridade: Alta

  • RN-RBAC-002: Perfis definidos pelo sistema não podem ser editados, apenas duplicados para customização.

  • Critério de aceitação: Sistema apresenta alerta ao tentar editar perfil fixo.
  • Prioridade: Média

  • RN-RBAC-003: Gerenciamento de permissões em modo offline

  • Descrição: O sistema deve implementar um mecanismo robusto de cache e sincronização de permissões para operações offline. As permissões offline são um subconjunto configurável das permissões online do usuário.
  • Critério de aceitação: Administradores podem definir quais permissões específicas estão disponíveis em modo offline para cada perfil.
  • Critério de aceitação: Cache de permissões é atualizado automaticamente durante sincronização e protegido contra adulteração.
  • Critério de aceitação: Sistema verifica integridade das permissões armazenadas localmente antes de concedê-las.
  • Critério de aceitação: Todas as decisões de controle de acesso em modo offline são registradas para auditoria pós-sincronização.
  • Critério de aceitação: Mecanismos de detecção de violação de integridade das permissões offline, com alertas na próxima sincronização.
  • Prioridade: Alta

Critérios de Aceitação

  • Controle granular de acesso de usuários: Perfis controlam acesso a funcionalidades com granularidade.

Dependências

  • Módulo de Auditoria de Dados (para registro de operações e eventos de segurança)

Integrações

Integrações que o módulo RBAC SOLICITA de outros módulos:

  • Integração com Módulo de Auditoria de Dados: Solicita o registro detalhado de todas as operações de autenticação, alteração de permissões e tentativas de acesso, incluindo aquelas realizadas offline após sincronização.

  • Integração com Sistema de Notificações Interno: Solicita o envio de alertas de segurança, notificações de alteração de permissões e mensagens de recuperação de senha.

Integrações que o módulo RBAC FORNECE para outros módulos:

  • Integração para Todos os Módulos do Sistema: Fornece API padronizada para validação de autenticação e autorização de usuários, garantindo controle de acesso consistente em todo o sistema.

  • Integração para Aplicações Cliente (Web/Mobile): Fornece serviços de autenticação, controle de sessão e verificação de permissões em contexto online e offline.

  • Integração para Módulo de Dashboards e Relatórios: Disponibiliza informações sobre usuários, perfis e estatistícas de acesso para composição de relatórios administrativos.

Todas as integrações implementam mecanismos de segurança avançados, incluindo proteção contra vazamento de credenciais, tokens seguros e controle granular de escopo de acesso.

Riscos Relacionados a Requisitos

  • Complexidade na definição de permissões finas por perfil
  • Resistência à mudança por usuários de perfil técnico-operacional
  • Dificuldade na recuperação de conta em áreas com baixa conectividade

Funções e Controle de Acesso

O módulo RBAC gerencia permissões granulares para diferentes entidades do sistema, conforme detalhado abaixo:

Níveis de Acesso por Operação

  • nenhuma

Níveis de Acesso por Entidade

  • Usuário: leitura, criação, edição, exclusão
  • Papéis: leitura, criação, edição, exclusão
  • Funções: leitura, criação, edição, exclusão

Ações Críticas do Sistema

Ações que exigem atenção especial, podendo demandar confirmação de identidade adicional ou aprovação:

Aprovação

  • Nenhuma atualmente definida

Confirmação de Identidade

  • Edição de usuários
  • Exclusão de usuários
  • Exclusão de papéis
  • Exclusão de funções

Indicadores Possíveis

Indicadores de Segurança

  • Número de tentativas de acesso negado
  • Tempo médio de concessão/revogação de acessos
  • Taxa de conformidade com políticas de senha
  • Percentual de usuários com 2FA ativado
  • Tempo médio entre detecção e bloqueio de tentativas suspeitas
  • Número de incidentes de segurança por período

Indicadores de Gestão

  • Distribuição de usuários por perfil de acesso
  • Tempo médio de inatividade de contas
  • Taxa de utilização de permissões por perfil

Oportunidades de Escopos Futuros

Considere as oportunidades identificadas apenas como ideias, mas que podem ser distribuídos em outros módulos e em outros domínios.

Gestão de Acesso

  • Automação de provisionamento e revogação de acessos
  • Análise de uso de permissões para otimização de perfis
  • Integração com provedores de identidade externos (SSO)
  • Autenticação biométrica para operações críticas
  • Sistema de delegação temporária de acessos
  • Análise comportamental para detecção de anomalias de acesso
  • Gerenciamento de chaves de API para integrações externas