Segurança é um item primordial e de extrema importância para qualquer projeto. Mesmo em projetos que muitas vezes pensamos que determinados dados não possuem tanta relevância, eles continuam sendo dados, e se não fossem importantes, por que seu cliente gostaria de obtê-los?
Entenda o cenário: uma simples pergunta dentro de um formulário, como: “Você gosta de chá?” pode desencadear mudanças drásticas de mercado, ações e crescimentos astronômicos incluindo a parte financeira de milhares de empresas.
Como uma pergunta simples pode afetar tanto? Imagine que uma empresa que produz refrigerante e suco faz essa pergunta para todos aqueles que se cadastram ou acessam seu site e a cada mil pessoas, 850 colocam que gostam de chá. Com esse cenário fica nítido que 85% dos consumidores possuem uma probabilidade grande de consumir este possível novo produto da empresa.
Agora pense nos concorrentes dessa empresa e toda indústria produtora de chá, que não sabem sobre esses resultados – quanto eles pagariam para ter acesso a eles? É aí que começa a roubalheira de dados! Se esses dados não forem bem guardados, a empresa que você fez esse simples formulário pode deixar de se tornar a maior nova potência de vendas de Chá de sua região, país ou até mesmo do mundo.
E você, que poderia se tornar um programador de uma das maiores potências do mundo continuará realizando trabalhos para mais uma empresa que pode ter seus dados constantemente roubados ou manipulados e continua sem saber porque suas ações não condizem com seus resultados.
“Dados são a base para gerar resultados.” – Luccas Marra.
Como devo fazer? Descrevi abaixo cinco conceitos de segurança fundamentais para você aplicar em seus projetos e torná-los mais seguros:
- 1 – Identificação: é a forma como um usuário se identifica na aplicação informando campos que foram definidos para que seja entendido quem estará realizando a determinada ação e que os dados enviados foram recepcionados.
- 2 – Autenticação: com os dados obtidos na identificação, é realizada uma verificação e autenticação para saber se os dados estão corretos como, por exemplo, verificar se no campo e-mail foi realmente colocado um e-mail ou se os campos possuem alguma instrução que afetará o funcionamento do seu código de maneira inadequada.
- 3 – Confidencialidade: através do uso da criptografia, dados criptografados são enviados do usuário para o servidor e somente o servidor pode descriptografá-los, pois somente ele possui a inteligência para entender o conteúdo criptografado que acaba sendo protegido por “chaves”, assim gerando a confidencialidade necessária para que no meio do caminho, mesmo que os dados tenham sido “roubados”, não seja possível saber de fato qual conteúdo eles carregam. Pesquise mais sobre criptografia, pois é um assunto que envolve inúmeros fatores que lhe ajudarão a não ter dores de cabeças no futuro.
- 4 – Não repúdio: é ter a confirmação que aquela ação foi feita e os campos de veracidade desse registro não podem ser manipulados uma vez que inseridos . Uma dica/solução é guardar dados que trarão veracidade como: IP, geolocalização, aparelho/browser utilizado, data/hora, hash com chave privada e assim por diante, criando uma assinatura digital.
- 5 – Integridade: garantir que não haja nenhuma alteração do conteúdo no meio do caminho. Isso é feito de forma global como, por exemplo, ter um certificado de segurança (HTTPS) assim tendo uma comunicação segura em criptografia de canal contendo camadas seguras.
Agora você já tem o que procurar e como se aprofundar nos assuntos. Espero que este material tenha lhe ajudado a enxergar que dados são muito importantes e devem ser guardados com segurança.