Hostwinds 博客
寻找结果为:
尽管它们看起来相似,但身份验证和授权在保护数字资产方面的目的非常不同。
身份验证(authn) 是验证某人是谁的过程。它回答了一个问题:"你是谁吗?"
每当您使用用户名和密码登录应用程序或网站时,您都将通过身份验证过程。该系统对数据库检查您的凭据,以确保它们匹配其存储的内容。如果详细信息匹配,则系统假设您是您声称自己是的人,并授予了访问权限。
身份验证是确保您的数字身份安全的第一道防线。但是,仅仅因为您经过身份验证并不意味着您拥有无限的访问。
一旦系统知道您是谁, 授权(authz) 发挥作用。授权就是确定您允许做什么。它回答了一个问题:"您可以访问什么?"
假设您已登录公司的内部网络(身份验证)。仅仅因为您登录并不意味着您可以访问所有内容。例如,初级员工只能被授权访问基本文件,而经理可能可以访问更敏感的信息。
授权在身份验证后进行。确认身份后,系统将根据分配给您的规则或角色来检查您授权执行的操作。
尽管这两个过程对安全至关重要,但它们的功能不同:
认证方式 | 授权 |
验证你是谁 | 确定您可以访问什么 |
发生在授权之前 | 在身份验证后发生 |
涉及凭据(例如,密码) | 涉及权限(例如角色) |
由OIDC等协议管理 | 由Oauth 2.0等框架管理 |
例如,在工作场所中,您通过登录计算机系统(身份验证)来验证。经过身份验证后,您将有权根据您在公司中的角色访问某些文件或系统。
为了更清楚,请想象一下通过机场安全:
验证方式: 您在登机柜台显示您的ID以证明您的身份。
授权: 一旦您进入登机门,您的登机通行证会决定您是否允许登机。即使您在没有授权的情况下进行了安全验证(登机通过),您也不会上飞
这两个过程都齐头并进,以保护系统和数据。身份验证确保用户是合法的,而授权则确保他们仅访问其应有的内容。
没有两者,安全系统很容易被破坏:
未经授权的身份验证: 用户可能会访问系统,但是如果没有适当的限制,他们可能会看到他们不应该的敏感数据。
没有身份验证的授权: 该系统可能会执行权限,但是如果有人可以登录,权限是毫无意义的
撰写者 Hostwinds Team / 十月 9, 2024