构建安全的应用程序以确保在部署到公有云环境时的数据隐私性和安全性,这对于收集客户数据的企业来说至关重要,尤其是对于金融、零售、银行等受监管行业而言。在本文中,我将向您介绍我的团队构建的一个示例银行应用程序,以便探索和分享在 IBM Cloud 上使用 Red Hat OpenShift 4.3 创建基于云的安全应用程序的方法。
示例银行应用程序概览
下图显示了我们构建的示例安全云应用程序的前端视图。JavaScript 模拟器应用程序显示了一个基于 Web 的移动应用程序视图,该应用程序是由在 OpenShift 集群中运行的 Node.js 服务来运行。我们仅使用几个简单的微服务就构建了示例银行应用程序的后端,这些微服务将动态的用户交易数据记录在 PostgreSQL 数据库中。
了解应用的工作原理
使用应用程序下拉列表中生成的名称来创建帐户(通过IBM App ID)。当您点击应用程序的主页按钮时,您可以单击那里的各种应用图标来创建信用卡交易。
安全的微服务应用程序架构
在构建示例银行应用程序时,我们必须首先考虑公有云的安全性。该应用程序通过 HTTPS 进行保护,微服务之间的交互通过 OpenShift 服务网格并使用 TLS 进行了加密。为了安全起见,甚至连应用程序的构建管道也包含对代码库的扫描。
下图概述了该软件的架构:
示例银行应用的后端由几个微服务组成,包括分别跟踪事件和用户的两个 Java 服务,一个用于删除用户数据的夜间服务,一个 Node.js 前端和一个 PostgresSQL 实例来跟踪所有这些服务。Java 服务与 JavaScript 前端进行通信,以向用户显示该应用程序。
我们如何构建信用卡应用程序
以下内容将通过开源代码和操作说明来了解我们使用 OpenShift 4.3 构建安全的云应用程序的步骤:
- 文章:OpenShift 4 简介。
- 文章:微服务架构环境中的威胁建模。
- 教程:玩转 OperatorHub。
- Code Pattern:通过移动银行应用的后端来关注数据隐私。
- Code Pattern:使用 OpenShift 服务网格的微服务。
- 教程:使用 OpenShift Serverless Operator 构建无服务器 Node.js 应用程序。
- 教程:构建 Tekton Pipeline 以将移动应用后端部署到 OpenShift 4。
结束语
构建安全的私有云应用程序比以往任何时候都更加重要。我们构建的示例信用卡应用程序可用于:
- 共享 OpenShift 4 最新功能的有效集成
- 探索有关公有云安全性的概念和创建云原生应用程序的方法
IBM Developer 将利用这个示例来更深入地讲解 OpenShift 的新功能,并希望与新的 IBM Cloud for Financial Services 集成。敬请关注我们在 GitHub 中的工作成果。
本文翻译自:Build secure applications with OpenShift 4.3 on public cloud(2020-08-04)