Desenvolva e implemente um website de doações para desastre com criptografia de ponta a ponta

Resumo

Este padrão de código mostra como desenvolver e implementar um front-end Node.js e um back-end Python para apresentar um website de doações para desastre que armazena dados em um banco de dados MongoDB.

Descrição

Após um desastre natural, as pessoas geralmente desejam doar para a causa. Para isso, eles geralmente desejam fornecer os detalhes de seu cartão de crédito — informação pessoal e sensível. O quão seguras estão essas informações? Onde você deve armazená-las para protegê-las contra invasores, especialmente diante de regulamentos como o Regulamento Geral sobre a Proteção de Dados (GDPR) da UE?

Para começar, eu mostrarei como criar uma instância do MongoDB do IBM Cloud Hyper Protect DBaaS, uma instância gerenciada do MongoDB com conexões criptografadas e armazenamento. Em seguida, você desenvolverá e implementará um aplicativo de back-end Python que converte solicitações JSON RESTful em chamadas Mongo, para facilitar a interface com o banco de dados. Por fim, você desenvolverá e implementará um aplicativo Node.js usando a estrutura Express para servir um website estático que implementa jQuery para fazer solicitações ao aplicativo de back-end Python; ele, por sua vez, pode ser servido sobre HTTPS. O resultado é um website de doações que pode aceitar detalhes de cartão de crédito e enviar algumas dessas informações sensíveis a um banco de dados, assegurando que elas estejam criptografadas o tempo todo. Ao executar os aplicativos em um IBM Cloud Hyper Protect Virtual Server, é possível assegurar que o armazenamento usado pelos aplicativos também esteja criptografado.

Quando você tiver concluído esse padrão de código, entenderá como:

  • Criar e executar containers do Docker
  • Implementar uma interface Python RESTful em um banco de dados MongoDB
  • Implementar um aplicativo Node.js Express para servir um website estático
  • Desenvolver e executar um proxy reverso Nginx no Cloud Foundry para fornecer TLS

Fluxo

fluxo

  1. Usuário solicita website.
  2. Nginx encaminha solicitação para front-end Node.js.
  3. Front-end chama o proxy Nginx, que corresponde a URL para encaminhar ao aplicativo Python de back-end.
  4. Back-end Python converte JSON RESTful em Hyper Protect DBaaS.

Instruções

Localize etapas detalhadas para esse padrão no arquivo README, que se vincula aos arquivos README para os componentes de front-end, back-end e proxy.