安全基础

176 阅读2分钟

「这是我参与2022首次更文挑战的第28天,活动详情查看:2022首次更文挑战」。

什么是安全?

要回答这个问题,我们先来了解下安全领域最为基础的三个原则:机密性(Confidentiality)、完整性(Integrity)、可用性(Availability)。 这三个原则可以简称CIA,一套完整的安全体系,需要充分考虑这三个原则。

机密性

机密性就是确保数据只被经授权的主体访问,即不可见。 为了实现这一目标,我们提出了很多访问控制模型;也在数据的存储、传输和处理的过程中进行保护。

完整性

完整性就是保证数据只能被经授权的主体进行修改,即不可改。 完整性和机密性是紧密相连的,经常被放在一起考虑,它们共同保证了数据是安全的。

可用性

可用性就是确保数据能被经授权的主体访问到,即可读。 可用性很多时候也被当作一个工程问题,比如双11大促,ddos攻击,如何保证数据能被正常地访问。因此可用性往往更多地被划分到开发的职责当中。

在实际项目中,我们往往需要对CIA进行取舍,需要按实际情况去排列优先级。比如项目初期可能关注的更多是可用性,但是随着数据的增多,完整性及机密性的重要性会不断提高。

按么如何去解决安全问题?

这里我们需要黄金法则:认证(Authentication)、授权(Authorization)、审计(Audit),都是以Au开头,所以叫黄金法则。概括来说,就是先登录并经过授权,再进行操作,然后留下操作记录。

认证

认证包括两部分,身份识别和认证,身份识别强调主体对身份的声明,认证强调主体如何证明身份是合法的。比如账号就是身份识别,密码就是认证。 可信的身份认证是建立安全保障的第一步。

授权

授权就是明确你能做什么

审计问责

完成操作后,我们需要知道你做了什么,这就是审计;如果出了问题,还需要提供你做了这些操作的证据,这一切的来源都是日志,这就是问责。

大部分情况下,事前防御属于认证,事中防御属于授权,事后防御属于审计。