Skip to content

计算机系统安全中的认证与授权

计算机中的访问控制分为两个阶段:1、授权访问的策略定义阶段 2、批准或拒绝访问请求的策略实施阶段。

第1步需要在认证之前完成,第2步会在授权时执行。

认证(Authentication)

认证就是我们验证尝试访问系统特定资源的用户的身份的过程。一个常见的认证用户的方法就是通过验证用户输入的用户名和口令(Passcode)来获取用户身份。

口令(Passcode)和密码(Password)的区别。

在日常生活中,是混用的;在计算机术语里面,是有区别的:

口令通常是一个用于身份认证的保密的字符串,用以保护不想被别人看到的隐私以及防止未经授权的操作,达到保护隐私以及防止未经授权的操作的目的。

密码,加密后的编码,通常是指用一定规则算法将明文编码后的东西,也就是密文。

一旦完成认证过程,便可以执行授权过程。

授权(Authorization)

授权就是决定“哪个用户能访问哪些资源”。

基于角色的访问控制(RBAC)

在完成用户认证之后,系统便会获得访问用户的身份。如果系统中需要使不同用户拥有不同的权限,一个方法便是使用基于角色的访问控制(RBAC)。

RBAC并不使用直接对用户赋予权限(用户-权限),而是通过“定义不同的角色,每种角色有不同权限”(用户-角色-权限)来限定用户的权限。如下图:

role-based-access-control-rbac-example

从理论上讲,基于角色的访问控制方法使管理用户权限变得相对简单,因为权限不是针对单个用户量身定制的。但是,在具有许多角色和许多应用程序的大型企业中,RBAC 有时会变得复杂且难以跟踪,并且最终用户可能会获得超出其需求的权限。

一个学习网站:https://www.cloudflare.com/zh-cn/learning/