本文主要是介绍一个正经开发人员的安全意识,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Claude Shannon: The enemy knows the system
在任何的开发过程中,只要设计到安全的问题,我们都需要牢记Shannon的这句话,虽然是与密码学相关,但是也可以应用到服务的安全,也就是说,我们应该假定攻击者最终将完全熟悉这个系统。
作为交付业务的开发人员来说,安全从来都是一个重要的话题,并且如果是从事健康、金融等相关领域,在北美的合规性上更是尤甚。除了从业务上对安全做的一些考虑,比如密码强度,Multi-Factor Authentication(MFA),更多的安全相关性可能对于一个正经开发人员来说,可能很难面面俱到的考虑周全。在此,想借用一个和健康医疗相关的项目来对项目上所面临的安全需求以及实践进行介绍。
背景
除了在业务上我们满足用户的安全需求,以及一些对常规的离散的安全了解(TLS,injection,DoS等),我们没有一个全局的系统的安全方面的考虑,再加上客户也提出了一条条没有组织没有结构的安全需求,在与客户对话之前需要做大量的讨论和研究。
对于计算机安全的定义来说,机密性、隐私性和完整性是三个关键目标,如果从计算机安全模型来说,又包括硬件、软件和通信等。对于这样的分类和定义,如果我们能很好的做出威胁建模,那么结果可能是比较全面,但是问题又来了,在组内大多数成员没有威胁建模的经验下,我们又很难做好一个威胁建模,这样我们的结论也可能达不到我们想要的目标。
那么这样的话,从一个比较直观并且概括的层面,能让大家了解我们可能面对的保护和攻击,可以在最基本的面上有个大概了解。
应用 Application
认证授权
这篇关于一个正经开发人员的安全意识的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!