对于软件系统来说,安全始终是最重要的一个话题,也是用户最为关心的非功能需求之一。
所以,对于一个架构文档来说,安全架构是其最重要的一个部分。
安全的范围也很广,但用户最关心的还是数据安全和通讯安全,常规的安全架构也通常是着重描述这两个方面。
下面给出一个安全架构的例子:
上图中,最重要的安全措施就是“防火墙”了。
有了“防火墙”,就可以帮系统挡住大多数的非法访问。
接着是“代理服务器”,也是一个重要的安全措施,它也把web服务器保护在里面。
然后是各种安全协议:
- HTTPS协议;
- MQTT-SSL协议;
- 等等。
当然了,数据安全也很重要,我们采用重要的数据加密保存到数据库或文件中。
最后,对FTP服务器的访问采用“用户名+密码”的安全形式访问。
以上,就是一个典型系统的安全架构。