一文读懂「认证」与「授权」

随着现代 IT 的不断发展,身份已无处不在。它是用户进入所有服务的入口,管理这些身份的能力是企业成功的关键因素,其中,「认证」和「授权」则是身份管理中不可缺少的重要部分。 在开发或者管理一个应用程序的时候,我们往往会看到两个名词—— 认证授权 ,在英文中,这两个词语更为相近 —— authenticationauthorization 。尽管这两个术语经常出现在相同的上下文中,但两者在概念上却有很大差别。 认证,意味着确认用户或使用者的身份,而授权,则意味着授予对系统的访问权限。简单来说,认证是验证用户身份的过程,而授权是验证用户有权访问的过程。

什么是认证

认证,是关于验证「你」的凭据,如用户名/邮箱和密码,以验证访问者的身份。在公共和专用网络中,系统通过登录密码验证用户身份,身份认证通常通过用户名和密码完成。认证不只是通过密码的形式,也可以通过手机验证码或者生物特征等其他因素完成。 在某些应用系统中,为了追求更高的安全性,往往会要求多种认证因素叠加使用,这就是我们经常说的多因素认证。

常见的认证方式有:

  • 用户名密码认证

  • 手机和短信验证码认证

  • 邮箱和邮件验证码认证

  • 人脸识别/指纹识别的生物因素认证

  • OTP 认证

  • Radius 网络认证

什么是授权

授权,是确定经过身份验证的用户是否可以访问特定资源的过程。它验证你是否有权授予你访问信息,数据库,文件等资源的权限。 授权发生在系统完成身份认证之后,简单来说, 授权决定了你访问系统的能力以及达到的程度 。 例如,验证和确认组织中的邮箱、密码的过程称为认证,但确定哪个员工可以访问哪个楼层则称为授权。假设你正在旅行,而且即将登机。当你在登机前出示机票和身份证明时,你将会收到一张登机牌,登机牌则证明了机场管理局已对你的身份进行了验证。当检查完登机牌后,乘务员引导你登上应该乘坐的航班,并允许你进入飞机内部并查看、使用相关资源,则这代表着你已获得授权。

认证与授权的对比

企业数据安全,也是 Authing 关注的企业级服务目标之一。通过本文认证与授权的技术论述,Authing 力图为我国开发者朋友们带来一些思考。最近,一些 CTO 朋友们和我们留言,想了解近期 Okta 收购 Auth0 背后的故事,以及 Auth0 有哪些技术被 Okta 青睐?为了让广大开发者朋友们,更好的理解身份云领域的动态,和 Auth0 的价值所在, 下周二 3 月 16 日晚 20 点,我们为大家邀请了 Authing 创始团队成员、CMO 许子强,为开发者朋友们分析 Okta 并购 Auth0 的原因,讲述身份云领域有哪些技术架构,以及企业如何拥抱身份云,实现降低成本,生产力翻倍增长,欢迎开发者朋友们添加 Authing 小助手(微信号:authing2021) 进群聆听。