|
简介
身份和访问管理,对应的英文全称是Identity and Access Management,简称是IAM。它是信息安全领域(Information Security)的基石,也是CISSP的八个知识域之一。如果一个组织缺少IAM,就意味着任何人都将能够看到、修改和删除其拥有的数据信息。相应的,这个组织也就无法保护其拥有的数据信息的机密性、完整性和可用性。
本文主要针对组织中的权限管理人员、信息安全新手开发人员或想要了解IAM的同学,不是技术层面的深入研究。笔者将通过解释核心概念及其工作流程的方式向您介绍IAM,以期您对IAM获得一个基础的认知。天也不早了,话也不少了,进入正题。
核心概念
在信息安全领域,IAM实际包括两个范畴:身份管理(Identity Management)和访问管理(Access Management)。这两者通常一起出现,互相配合,并且后者需要依赖前者。
我们约定用一些名词来描述IAM工作的一系列过程,它们依次是:标识(Identification)、身份认证(Authentication)和授权(Authorization)。关于这几个概念,不同的图书描述不同,笔者这里给出我最认可的定义。
Identification is an identity flag by which a person can access a software system.
Authentication is the process of verifying the identity of a user—knowing that the user is who they claim to be.
Authorization is the process of verifying that a user has the right to perform some action, such as selecting a course or adding a course. 有些人也习惯把标识叫做账号(Account),大同小异,没有本质区别。更深入的理解这几个概念,可以参考我的这篇回答。
工作流程
IAM实际是是一个或多个系统,它们控制某个主体(subject)能够对某个客体(object)进行某种操作(action)。主体通常是指一个人或者应用,也就是那个想要执行操作的“家伙”。客体就是指主体希望去操作的资源或者数据,那个被执行操作的“家伙”。操作指的是某个行为,比如删除数据、启动应用等等。
在一个组织内部,如果一个人想要操作某个资源,TA得先有个标识。这个标识通常是被HR部门或者IT部门分配的,比如使用这个人的电子邮件、身份证号、工号等等。对于一些互联网应用,这个标识通常是由用户自注册产生的。没错,就是令很多人感到繁琐的注册流程。在一些场景下,为了避免用户有多个标识,也可以使用在其他系统已经存在的标识,这个就是单点登录(SSO)了。但无论如何,这个人需要先获得一个标识,然后在访问目标资源时携带这个标识。
但仅有标识就够了吗?比如我知道了你的银行账号,能去银行取出你的存款吗?答案当然是否定的,我还需要对应的账号密码。这么描述当然没问题,但是不严谨。用信息安全的术语说,我还需要进行身份认证。我得向银行证明这个银行账号就是我的。怎么证明呢?答案是利用共享秘密或者特征识别。
利用共享秘密是什么意思?比如,小明身上有个纹身,这个世界上只有他自己和他女朋友知道纹身代表的含义(PS:这个例子好秀)。那么,可以得出结论,这个世界上知道小明纹身含义的女人就是小明的女朋友。
同样的道理,一个账号的密码只有银行和对应账号的持有人知道(这是基于所有的人都是理性人的原则)。因此,可以得出结论,任何一个人只要TA知道账号密码,TA就是对应账号的持有人。所以,通过向银行出示对应账号的密码,就可以完成身份认证。
不过要注意的是,因为上述的过程是共享秘密,所以前提得是秘密。这也是为什么不能使用身份证号、手机号、生日等作为密码的原因,因此这些已经不是秘密了。
利用特征识别就比较好理解了,比如一个人的指纹、虹膜,这些都被认为是独一无二的特征。因此,只要一个人的指纹是张三的,那这个人就一定是张三。
回到咱们的讲解,如果一个人想要操作某个资源,除了携带一个标识外,还得向要访问的资源证明自己就是持有这个标识的人。这就是认证的过程,主体可以展示关于这个标识的秘密或者干脆利用特征识别。
经过账号标识和身份认证,一个主体已经向被访问的资源证明自己的身份了。但这还不够,还得看资源是否允许该主体访问。因为,在一个组织的内部,并非所有人能够访问所有信息。比如,小明是一个招聘HR,他就只能查看不同候选人的面试数据,但不能查看员工的工资数据。所以,如果一个人想要操作某个资源,除了携带一个标识,并证明自己就是持有这个标识的人之外,还得让组织管理员给自己分配操作这个资源的权限。关于如何管理权限,我们有许多权限模型,本文不去展开讨论。
其他安全防护机制
通常和IAM一起工作的还有其他安全防护机制。它们的目标依次是,防止攻击、检测攻击、及攻击后的恢复和加固。
对于防止攻击的系统,比如、网络防火墙(随着云计算普及,防火墙作用在减弱)、杀毒软件和数据加密。
对于检测攻击的系统、比如SIEM系统。SIEM系统会将日志数据、安全警报和事件聚合到一个集中平台中,为安全监控提供实时分析。
如果不幸攻击发生了,组织需要定位问题并进行针对性的安全加固。
总结
本文中,笔者介绍了IAM的核心概念、工作流程、及组织中配合IAM工作的其他安全防护机制。希望您已经对IAM获得了一个基础的认知。
高质量的写作是最高效的社交,喜欢我的文章就来关注我吧! |
|