Web应用程序的上下文有何不同?我看到很多缩写“auth”。它代表身份验证 - 身份验证还是身份验证 -orization?或者两者兼而有之?
答案 0 :(得分:777)
身份验证是确定某人确实是他们声称的人的过程。
授权是指确定允许执行哪些操作的规则。例如。 Adam可能被授权创建和删除数据库, 而Usama只被授权阅读。
这两个概念是完全正交且独立的,但两者都是安全设计的核心,如果不能正确使用这两个概念,就会开辟妥协的途径。
就网络应用程序而言,非常粗略地说,身份验证是指您检查登录凭据以查看您是否将用户识别为已登录,并且授权是指您在访问控制中查看是否允许用户查看,编辑,删除或创建内容。
答案 1 :(得分:617)
总之,请。 : - )
身份验证 =登录+密码(您是谁)
授权 =权限(您可以做的事情)
短" auth"最有可能是指第一个或两个。
答案 2 :(得分:77)
正如Authentication vs Authorization所说:
身份验证是一种机制 系统可以安全地识别 他们的用户。认证系统 提供问题的答案:
相比之下,
- 谁是用户?
- 用户真的是他/她代表自己的人吗?
授权就是 系统确定的机制 什么级别的访问特定 经过身份验证的用户应该 由...控制的安全资源 系统。例如,一个数据库 管理系统可能是这样设计的 至于提供某些指定的 有能力的人 从数据库中检索信息 但不是改变数据的能力 存放在数据库中,同时给予 其他人的能力 改变数据。授权系统 提供问题的答案:
- 用户X是否有权访问 资源R?
- 是否授权用户X. 执行操作P?
- 是用户X. 授权执行操作P 资源R?
答案 3 :(得分:29)
我更喜欢验证和权限进行身份验证和授权。
在我的脑海和代码中更容易想到“验证”和“权限”,因为这两个词
身份验证是验证,授权是检查权限。 Auth可以指,但更常用作“用户身份验证”,即“用户身份验证”
答案 4 :(得分:9)
混淆是可以理解的,因为这两个词听起来很相似,并且因为这些概念通常密切相关并且一起使用。另外,如上所述,缩写 Auth 并没有帮助。
其他人已经很好地描述了身份验证和授权的含义。这是一个简单的规则,可以帮助两者明确分开:
- 验证 enti 阳离子验证您的Id enti ty(或真实性,如果您愿意的话)
- 作者会验证您的作者,即您有权访问并可能更改内容。
答案 5 :(得分:8)
我试图创建一个图像,用最简单的单词解释这个
1)认证意味着"你是说你是谁?"
2)授权意味着"你是否能够做你想做的事情?"。
这也在下图中描述。
我试图以最好的方式解释它,并创建了相同的图像。
答案 6 :(得分:3)
身份验证是验证声明身份的过程。
通常后跟授权,这是您可以执行此操作的批准。
答案 7 :(得分:2)
添加到@ Kerrek的回答;
身份验证是通用格式(所有员工都可以登录计算机)
授权是专业表格(但管理员只能在机器中安装/卸载应用程序)
答案 8 :(得分:2)
身份验证是验证登录用户名和密码的过程。
授权是验证您是否可以访问某些内容的过程。
答案 9 :(得分:1)
Authentication
是一个验证过程:
digital signature
的电子邮件检查 Authorization
是Authentication
之后的下一步。它与资源的权限/角色/特权有关。 OAuth(开放式授权)是授权的示例
答案 10 :(得分:0)
Authentication
表示确认您的身份。身份验证是关于验证您的凭据(例如用户名/用户ID和密码)以验证您的身份。然后,系统将检查您是否正在使用您的凭据。无论在公共网络还是专用网络中,系统都通过登录密码对用户身份进行身份验证。通常,身份验证是通过用户名和密码完成的,尽管还有其他多种身份验证方法。
Authorization
意味着被允许访问系统。授权是确定经过身份验证的用户是否有权访问特定资源的过程。
了解更多here
答案 11 :(得分:0)
身份验证-您是自称的人吗?
授权-您是否有权执行您要尝试执行的操作?
一个网络应用使用Google Sign-In。用户成功登录后,Google会发回邮件:
另外:
公司可能有一个管理仪表板,允许客户支持来管理公司的用户。该公司没有提供允许客户支持访问此仪表板的自定义注册解决方案,而是使用Google登录。
JWT令牌(从Google登录过程中接收到)被发送到公司的授权服务器,以确定用户是否拥有组织的托管域(email@company.com)的G Suite帐户?如果愿意,他们是否是为客户支持而创建的公司Google小组的成员?如果以上所有条件都是肯定的,我们可以考虑对它们进行认证。
然后,公司的授权服务器向仪表板应用程序发送访问令牌。此访问令牌可用于向公司的资源服务器发出授权请求(例如,向向回发送公司所有用户的端点发出GET请求的功能)。
答案 12 :(得分:0)
我发现this article的类比确实帮助了我。
考虑一个人走到上锁的门为宠物提供照料 一家人度假时。该人需要:
- 身份验证采用密钥形式。门上的锁只允许以正确的方式访问具有正确钥匙的人 系统仅向具有正确权限的用户授予访问权限 凭据。
- 授权采用权限形式。进入室内后,该人有权进入厨房并打开橱柜 持有宠物食品。 该人可能无权进入 卧室小睡。
因此,简而言之,身份验证与用户身份有关,而授权则与用户权限有关。
答案 13 :(得分:0)
想象一下您已经注册了一次技术会议。您到达并走到外面的登记表以获取会议徽章。您必须首先出示某种形式的身份证明,例如驾驶执照。您的驾驶执照可识别您(例如带有您的照片),并由受信任实体(DMV)分发。这是身份验证。
此人将红色,蓝色或绿色的徽章交给您。在会议内部走来走去,一些展览用颜色编码。使用绿色徽章,您可以输入绿色展品,但不能输入蓝色或红色展品。徽章不是由DMV分发的,而是由会议本身分发的,以访问会议厅内的会议资源。
关于徽章的信息并不一定能识别您的身份(可以在上面印上您的名字,但是您可以轻松借用您朋友的蓝色徽章参观一个蓝色展览)-没有人会检查您的名字,只有颜色为蓝色)。徽章的颜色可让您访问展览。这是授权。
答案 14 :(得分:0)
身份验证是识别有效用户的过程。
授权是验证用户访问级别的过程。
应用示例 用户 A、B 都是 Inventory 应用程序的验证用户。 两个用户都可以访问 Stock,但 B 对问题项目有更多的授权。