Django是安全关键应用程序的不错选择吗?
我问这个是因为大多数在线银行软件都是用Java构建的.这有什么真正的原因吗?
实际上,Java和Python中的安全性是相同的.仅摘要密码处理,快速超时的cookie,小心删除会话,多因素身份验证.这些都不是Java框架或像Django这样的Python框架所特有的.
实际上,Django有一个安全后端架构,允许您添加自己的LDAP(或AD)连接,可能会改变使用的摘要技术.
Django有一个Profile模型,您可以在其中保留其他身份验证因素.
Django为视图功能授权检查提供了一些标准装饰器.由于Python非常灵活,您可以轻松地编写自己的装饰器函数,以便在不同的或额外的身份验证检查中进行分层.
安全性是Django中许多一流的功能.
可能Java背后的原因并不在于安全性.我认为Java更多地用于大型开发公司,银行通常会依赖它们来满足它们的开发需求(这可能不仅与网站有关,而且在后端更加深入).
所以,我认为没有安全理由,主要是文化原因.
用Java构建银行应用程序的原因与安全无关,至少是恕我直言.它们与:
Java是21世纪的COBOL,因此有许多遗留代码需要重写并且需要时间.基本上银行应用程序是旧的应用程序,大约十年前它们是用java构建的,没有人想要抛弃所有旧代码(BTW几乎总是一个错误的决定),
有些人认为静态类型语言比动态类型语言更"安全".恕我直言,这不是真的(以Java 5之前的集合为例).