logo

Questionamentos de TI

As informações abaixo foram geradas pelas questões levantadas pela TI do Magazine Luiza. O objetivo é que isso possa servir de apoio em casos semelhantes!

 

=====
1. Política de senhas;
O Holmes tem uma política de senha default que consiste da seguinte regra:
Número mínimo de caracteres: 8
Número mínimo de caracteres especiais: 0
Número mínimo de letras minúsculas: 1
Número mínimo de letras maiúsculas: 1
Número mínimo de caracteres numéricos: 1
Número máximo de tentativa de acesso inválido até o usuário ser bloqueado: 5

Todos esses valores podem ser alterado para um número que seja adequado para o cliente.

2. Gestão de mudanças em produção;
O Holmes adota uma política de continuous delivery. Toda alteração no sistema faz com que os testes unitários e os testes de integração do sistema sejam rodados, e somente gera um versão válida caso todos os testes estejam OK. Para minor features e correções, os testes unitários e de integração contemplam a cobertura necessária e uma vez que a versão é gerada ela é colocada em produção, esse ciclo é infinito e por muitas vezes paralelo, podendo chegar até dezenas de deploys diários. Para major features, ou features que afetam o funcionamento prévio de uma feature do sistema, a versão passa por um servidor de qa/stage antes de chegar em produção, onde uma rotina de testes manuais são efetuadas.

3. Teste de qualidade do software;

O Holmes hoje conta com mais de 1000 testes unitários e de integração, além de uma equipe capaz de fazer testes manuais no sistema para buscar eventuais falhas em novas features. Por se tratar de uma arquitetura de microserviço, o sistema se torna muito mais sólido em sua qualidade, pois há pequenos sistemas que cuidam de áreas específicas e trabalham de forma isolada a ponto de garantir o funcionamento previsto e em uma eventual falha, prejudicar apenas requisições específicas e não todo o sistema.

4. Proteção dos dados confidenciais;
O Holmes possuí alguns mecanismos de proteção aos dados, entre eles:

1. Todos os funcionários que acessam dados do sistema possuem um NDA com o Holmes.
2. Log de auditoria de TODAS as chamadas do sistema, contendo o usuário, data/hora e a chamada efetuada.
3. Os arquivos são armazenados no S3 sobre um criptografia server-side AES-256. O Holmes por sua vez só tem acesso para adicionar e ler arquivos nesse serviço e apenas o CEO da empresa é capaz de gerar chaves de acesso que permite a exclusão definitiva dos arquivos, como por exemplo, no caso de encerramento de serviço.

5. Segurança do datacenter (Ex: Relatório ISAE3402);
O Holmes está com todos os seus serviços na AWS (Amazon Web Services). É possível ver todos os certificados de segurança, assim como suas políticas através do link: https://aws.amazon.com/compliance/.

6. Criptografia dos dados em trânsito e armazenados;
Todo o acesso ao Holmes é feito via TLS/SSL, garantindo a comunicação cliente-servidor. O Holmes possui dados armazenados em 3 diferentes estados: Banco de Dados, Índice de Busca e Sistema de arquivos.
Para o Banco de dados e Índice não há criptografia dos dados, porém esses servidores não possuem acesso externo direto, estando apenas visível na rede local da aplicação.
Para o Sistema de arquivos usamos o S3 que, além dos dados serem trafegados via TLS/SSL, os arquivos são armazendos com criptografia server-side AES 256.

7. Gestão de vulnerabilidades e patches;
Todos os servidores do Holmes utilizando o Amazon Linux AMI, e sua gestão de vulnerabilidades e patches é monitorada pela própria Amazon que nos prove de soluções e avisos importantes como o “bulletins for security or privacy events” https://alas.aws.amazon.com/. Os servidores do Holmes por sua vez não possuem acesso externo, todo o tráfego é feito por um serviço de loadbalancer que tem acesso limitado aos nossos servidores.

8. Monitoramento e resposta a incidentes de segurança;
Todo monitoramento do Holmes é feito pela plataforma newrelic. Com ela conseguimos monitorar todos os recursos de todas as aplicações, além de chamadas com tempo de resposta inadequado, SLA, e gestão de erros da API.
Qualquer incidente de segurança é possível avaliar toda e qualquer chamada ocorrida pelos logs de auditoria do sistema, onde é mapeado todo usuário que efetuou a ação, a data e hora, e a ação efetuada no sistema.

9. Gestão de acesso aos sistemas.
O Holmes possui uma interface gráfica específica para limitar o acesso ao sistema, sendo possível:

1. Determinar se um usuário está ativo ou inativo no sistema.
2. Determinar se um usuário tem ou não acesso à interface administrativa do sistema.
3. Determinar por Tipo de Documento se um grupo de usuário possui acesso para VER, BAIXAR, CLASSIFICAR, EDITAR ou REMOVER esses documentos. Ex: O Grupo Financeiro pode VER, BAIXAR, CLASSIFICAR e EDITAR todas as Folhas de Pagamento.
4. Determinar no nível de campo do Tipo de Documento o acesso do usuário. Ex: O usuário X pode VER, BAIXAR, CLASSIFICAR e EDITAR todas as Folhas de Pagamento quando essas forem da FILIAL São Paulo.

10.Plano de Continuidade do Negócio;
A Redspark tem mais de 10 anos no mercado de desenvolvimento de software e a quatro anos criou o Holmes, produto para gestão de documentos e processos. Nestes 10 anos, a Redspark atende e atendeu grandes clientes destacando-se Petrobras, Banco Mercedes Benz, Sesc-SP, Hospital Albert Einstein, Odebrecht entre outros. Hoje, a Redspark possui uma sólida carteira de clientes em duas duas áreas de negócio: Projetos e Business Design.

A empresa tem seu plano estratégico desenhado até 2021 e faz anualmente revisões estratégicas e de negócio e cada revisão aumenta sua projeção para sempre ter 5 anos de planejamento.

Falando de Holmes, a empresa investe constantemente na evolução do produto com equipes dedicadas de desenvolvimento, implantação, suporte, customer success e vendas. Especificamente este ano, fizemos um projeto para a capitação de recursos junto à Desenvolve-SP para realização de 20 projetos de evolução do Holmes para ser entregue em 2017. Este projeto está em fase de aprovação neste momento.

O Holmes como sistema busca incansavelmente três características para fornecer um software de qualidade para todos os clientes: alta disponibilidade, durabilidade e segurança.

Todos os componentes do Holmes são qualificados dentro do plano de alta disponibilidade e durabilidade desenhado pela equipe responsável, nesse plano, todos os componentes possuem um serviço de replicação ou paralelismo, feito para manter sempre a aplicação funcionando em caso de qualquer falha. Esse plano inicia na redundância dos servidores de DNS utilizando o Godaddy e AWS Route 53, passando em seguida ao nosso serviço de Load Balancer, presentes em 3 diferentes data centers, e por sua vez chegando aos nossos servidores, onde no mínimo existem 2 servidores para cada componentes da aplicação, sempre em data centers diferentes, garantindo que qualquer falha, seja ela na aplicação ou infraestrutura, não cause nenhum indisponibilidade no sistema. Para o armazenamento de dados, ainda contamos com servidores de réplicas em real time, além de backups com restauração de “point-in-time” dos últimos 7 dias. Os arquivos enviados ao sistema são armazenados em 3 datacenters diferentes, utilizando no mínimo 6 cópias de cada arquivos, com um sistema de verificação de CRC contínuo para verificar falhas de hardware e garantir uma nova cópia do arquivo caso haja alguma falha no armazenamento. A durabilidade do serviço de armazenamento de arquivos é de 99.999999999%.

Para a segurança, toda a nossa rede de servidores não possuem acesso inbound à internet, sendo o serviço de Load Balancer o único serviço exposto a internet e com permissão de acesso aos servidores de aplicação, e consequentemente os servidores de aplicação são os únicos com permissão de acesso aos servidores e serviços que contém os dados dos clientes. Dessa forma conseguimos minimizar os pontos de risco da aplicação.

Com as informações detalhadas acima, podemos concluir que o sistema Holmes conta com um plano de Contingência em tempo real, garantindo que seu serviço se mantenha funcionando mesmo quando 2 dos 3 datacenters onde a aplicação é distribuída fiquem fora do ar.

=====

1 found this helpful