Hostwinds 博客

寻找结果为:


身份验证与授权 特色图片

身份验证与授权

通过: Hostwinds Team  /  十月 9, 2024


尽管它们看起来相似,但身份验证和授权在保护数字资产方面的目的非常不同。

什么是身份验证?

身份验证(authn) 是验证某人是谁的过程。它回答了一个问题:"你是谁吗?"

每当您使用用户名和密码登录应用程序或网站时,您都将通过身份验证过程。该系统对数据库检查您的凭据,以确保它们匹配其存储的内容。如果详细信息匹配,则系统假设您是您声称自己是的人,并授予了访问权限。

常见的身份验证方法:

  • 密码: 最古老的方法之一,仅使用个人的用户名秘密代码。
  • 生物识别技术: 指纹扫描或面部识别 - 您所独有的。
  • 多因素身份验证(MFA): 方法的组合,例如输入密码,然后一次发送到手机的一次性PIN

身份验证是确保您的数字身份安全的第一道防线。但是,仅仅因为您经过身份验证并不意味着您拥有无限的访问。

什么是授权?

一旦系统知道您是谁, 授权(authz) 发挥作用。授权就是确定您允许做什么。它回答了一个问题:"您可以访问什么?"

假设您已登录公司的内部网络(身份验证)。仅仅因为您登录并不意味着您可以访问所有内容。例如,初级员工只能被授权访问基本文件,而经理可能可以访问更敏感的信息。

通用授权方法:

  • 基于角色的访问控制(RBAC): 用户被分配角色,每个角色都带有某些权限。例如,管理员比普通用户更有访问。
  • 访问控制列表(ACL): 指定用户或系统流程可以访问特定资源的列表
  • 基于属性的访问控制(ABAC): ABAC根据用户属性,资源属性和环境条件的组合授予访问权限。例如,公司仅允许持有特定证书的员工在一天中的特定时间访问某些数据。
  • 酌处访问控制(DAC): DAC允许资源所有者确定谁可以访问他们的资源,通过使个人控制权限来提供灵活但潜在的安全模型。
  • 强制性访问控制(MAC): MAC执行了中央权威制定的严格访问策略,在该策略中,用户无法更改权限,从而使其成为高度安全但灵活的方法。

授权在身份验证后进行。确认身份后,系统将根据分配给您的规则或角色来检查您授权执行的操作。

身份验证与授权:关键差异

尽管这两个过程对安全至关重要,但它们的功能不同:

认证方式

授权

验证你是谁

确定您可以访问什么

发生在授权之前

在身份验证后发生

涉及凭据(例如,密码)

涉及权限(例如角色)

由OIDC等协议管理

由Oauth 2.0等框架管理

例如,在工作场所中,您通过登录计算机系统(身份验证)来验证。经过身份验证后,您将有权根据您在公司中的角色访问某些文件或系统。

现实世界示例:机场安全

为了更清楚,请想象一下通过机场安全:

  • 验证方式: 您在登机柜台显示您的ID以证明您的身份。

  • 授权: 一旦您进入登机门,您的登机通行证会决定您是否允许登机。即使您在没有授权的情况下进行了安全验证(登机通过),您也不会上飞

认证和授权一起工作

这两个过程都齐头并进,以保护系统和数据。身份验证确保用户是合法的,而授权则确保他们仅访问其应有的内容。

没有两者,安全系统很容易被破坏:

未经授权的身份验证: 用户可能会访问系统,但是如果没有适当的限制,他们可能会看到他们不应该的敏感数据。

没有身份验证的授权: 该系统可能会执行权限,但是如果有人可以登录,权限是毫无意义的

撰写者 Hostwinds Team  /  十月 9, 2024