Web应用程序上下文有什么区别?我经常看到缩写“ auth”。它代表auth -entication还是auth -orization?还是两者?
authn
用于身份验证和authz
授权的缩写
Web应用程序上下文有什么区别?我经常看到缩写“ auth”。它代表auth -entication还是auth -orization?还是两者?
authn
用于身份验证和authz
授权的缩写
Answers:
身份验证是确定某人确实是他们声称的身份的过程。
授权是指确定允许谁执行操作的规则。例如,亚当可能被授权创建和删除数据库,而乌萨玛人仅被授权读取。
这两个概念是完全正交的,独立的,但两者是中央的安全设计,以及未能获得任何一个正确开辟了途径妥协。
就网络应用而言,很粗略地说,身份验证是指检查登录凭据以查看是否将用户识别为已登录,而授权是指在访问控制中查找是否允许用户查看,编辑,删除。或创建内容。
简而言之,请。:-)
身份验证 =登录名+密码(您是谁)
授权 =权限(您可以执行的操作)
简短的“ auth”最有可能指第一个或两者。
我更喜欢验证和许可而不是认证和授权。
在我的脑海和代码中,更容易想到“验证”和“许可”,因为这两个词
身份验证是验证,授权是检查权限。身份验证既可以表示,也可以用作“用户身份验证”,即“用户身份验证”
我试图创建一个图像来用最简单的词来解释
1)身份验证的意思是“您说的是您吗?”
2)授权的意思是“您应该能够做自己想做的事吗?”。
下图也对此进行了描述。
我试图用最好的术语来解释它,并创建了相同的图像。
添加到@Kerrek的答案;
身份验证采用通用形式(所有员工均可登录计算机)
授权是专用形式(但管理员只能在Machine中安装/卸载应用程序)
身份验证 -您是自称的人吗?
授权 -您是否有权做您想做的事?
网路应用程式使用Google登入。用户成功登录后,Google会发回邮件:
另外:
公司可能有一个管理仪表板,允许客户支持来管理公司的用户。该公司没有提供允许客户支持访问此仪表板的自定义注册解决方案,而是使用Google登录。
JWT令牌(从Google登录过程中接收到)被发送到公司的授权服务器,以确定用户是否具有该组织的托管域(email@company.com)的G Suite帐户?如果愿意,他们是否是为客户支持而创建的公司Google小组的成员?如果以上所有条件为是,我们可以认为它们已通过身份验证。
然后,公司的授权服务器向仪表板应用程序发送访问令牌。该访问令牌可用于向公司的资源服务器发出授权请求(例如,向向回发送公司所有用户的端点发出GET请求的功能)。