Institucional Tecnologia

De Gennera Wiki
Ir para: navegação, pesquisa

A plataforma da Gennera, que combina tecnologia de última geração e estratégia de independência entre módulos, proporciona um processo sustentável de desenvolvimento com alta produtividade, permitindo realizar manutenções e lançar novos módulos ou funcionalidades em um ritmo constante, ágil e seguro.

Arquitetura

Os módulos estão desenvolvidos, em sua maioria, na linguagem JavaScript. No front-end é utilizado o framework AngularJS enquanto o back-end é desenvolvido utilizando Node.js, ambos de código aberto e com um grande número de contribuidores ao redor do mundo.

O banco de dados adotado é o PostgreSQL, também de código aberto e um dos mais estáveis e conhecidos do mercado. A técnica de segmentação dos bancos de dados para leituras e gravações, com balanceamento de carga na leitura, aumenta consideravelmente a performance do sistema. Por exemplo, os relatórios, que geralmente exigem mais processamento para serem emitidos, não causam impacto em nenhuma outra funcionalidade ou módulo do sistema, já que acessam somente as bases de leitura, sincronizadas em tempo real.

Além da tecnologia e de seguir critérios estritos de qualidade, a maior parte do código produzido é garantido por um conjunto de testes automatizados, evitando assim defeitos e regressões enquanto o sistema é desenvolvido.

Políticas de Segurança e Privacidade

Da Infraestrutura

A infraestrutura interna possui:

  • Portaria 24 horas com porta eletrônica;
  • Dispositivos encriptados que criam uma barreira lógica ao acesso indesejado;
  • Estações de trabalho, equipamentos e rede, homologados pela equipe de segurança de dados, protegidos por antivírus e mecanismos contra intrusão.

A infraestrutura externa, que abrange todo o ambiente de produção e os servidores que armazenam os dados das aplicações, possui:

  • Alto nível de maturidade tecnológica, está localizada no Brasil e foi contratada na empresa AWS (Amazon Web Service);
  • Capacidade de crescimento dinâmico (elasticidade), configurada no AWS auto scaling group, para absorver a carga de requisições concorrentes e manter os serviços estáveis;
  • Serviço AWS Lambda para processar funções importantes em containers efêmeros, com escalabilidade elástica;
  • Monitoramento constante através do CloudWatch e Grafana, com visão em tempo real de todos os processamentos realizados nos servidores e, consequentemente, favorecendo análises mais rápidas e precisas;
  • Serviço CDN (Content Delivery Network) do Amazon S3, sem limite de armazenamento, para uso do aplicativo Arquivos;
  • Camada de criptografia de ponta a ponta, por onde passa todo o tráfego de dados, dificultando o vazamento de informações;
  • Planos de resposta a incidentes com IAC (Infrastructure as Code) que permitem restaurar máquinas virtuais de forma automática;
  • Firewall de Aplicação;

A AWS (Amazon Web Service) disponibiliza uma página em seu site com a visão de alguns de seus controles físicos e ambientais, que recomendamos a consulta para mais detalhes sobre a capacidade e a estabilidade da energia elétrica, a segurança da informação, o plano de contingência para funcionamento 24 horas por dia e 7 dias por semana, redundância e expansão praticados em seus datacenters:

Da Aplicação

Os desenvolvedores e analistas de segurança das aplicações:

  • Garantem que a senha dos usuários (combinação de letras, números e símbolos de, no mínimo, 8 caracteres - senha forte) fica gravada de forma segura, por meio da utilização de algoritmos de dispersão criptográfica associada a dados randômicos, garantindo a privacidade dos usuários;
  • Seguem práticas de OWASP e de Pentest;
  • Criam planos de resposta para rastreamento da origem dos dados, através do sistema de logs, que inclui análises de impacto e de ações relacionadas à comunicação dos clientes;
  • Programam as aplicações de modo que as operações importantes sejam devidamente registradas (logs), indicando os usuários e também o endereço IP;
  • Revisam constantemente o código-fonte em termos de segurança;
  • Mantêm os testes e o deployment em produção de forma automatizada;
  • Monitoram as aplicações com Naggios e ElasticStack para garantir uma resposta efetiva/assertiva em ocasiões de incidentes de segurança;
  • Participam da gestão de vulnerabilidade da companhia;
  • Analisam os ativos de infraestrutura que suportam a aplicação;
  • Realizam testes de carga;
  • Dispõem de mecanismos/recursos/soluções que permitem anonimizar e/ou pseudo-anonimizar os dados das aplicações que não necessitam de tratamento e manutenção específicas (ambientes segmentados).

Os controladores de dados podem:

  • Estabelecer restrições de acesso para que usuários (alunos e responsáveis) consultem ou atualizem seus dados nas aplicações;
  • Pré definir, de acordo com as restrições, formatos de exportação de dados através de relatórios dinâmicos;
  • Configurar perfis de usuários para acesso às aplicações e funcionalidades;
  • Autorizar agentes externos a realizarem integração através de acesso à APIs com protocolos e mecanismos de criptografia HTTPS;
  • Conceder, revisar ou revogar os privilégios de acesso às aplicações, a qualquer momento;
  • Solicitar a exclusão definitiva e irremediável de dados armazenados nas aplicações.

Backup

A infraestrutura, desde a imagem das máquinas virtuais até a base de dados, possui um processo avançado e constante de backup. Além disso, as bases de dados possuem replicação física, ou seja, os dados de todos os clientes ficam disponíveis em mais de um lugar ao mesmo tempo, garantindo alta disponibilidade, segurança e redundância.

Recomendações de uso

O cliente deve manter infraestrutura local adequada para o acesso à solução via internet, com:

  • Um computador para cada usuário - tipo 1GB de RAM;
  • Processador Celeron, Intel ou equivalente;
  • Resolução 1024 X 768 ou superior;
  • Impressoras a Laser ou Jato de Tinta.
É desejável ter uma internet exclusiva para utilização da solução.

Navegadores

Recomendamos a utilização dos navegadores abaixo, sempre mantendo as versões mais recentes e suportadas pelo fornecedor/provedor:

  • Chrome
  • Firefox
  • Safari
  • Opera
Veja aqui os principais browsers utilizados no Brasil.