【翻译】基于令牌的身份验证如何工作?

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 【翻译】基于令牌的身份验证如何工作?

一、背景

数字化转型给用户带来了安全问题,以保护他们的身份免受假冒。据美国诺顿称,平均每年有 80 万个帐户被黑客入侵。需要用于身份验证的高安全性系统和网络安全法规。  

传统方法依赖于使用用户名和密码的单级身份验证来授予对 Web 资源的访问权限。为了方便起见,用户倾向于保留简单的密码或在多个平台上重复使用相同的密码。事实是,您的网络活动总是有错误的眼光,以便在未来利用不公平的优势。

由于安全负载不断增加,双因素身份验证 (2FA) 应运而生,并引入了基于令牌的身份验证。此过程减少了对密码系统的依赖,并增加了第二层安全性。让我们直接跳到机制上。

但首先,让我们认识一下这个过程的主要驱动力:一个令牌!!!

二、什么是身份验证令牌

令牌是计算机生成的代码,充当用户的数字编码签名。它们用于验证用户的身份以访问任何网站或应用程序网络。

令牌分为两种类型:物理令牌和网络令牌。让我们了解它们以及它们如何在安全中发挥重要作用。

  • 物理令牌:物理令牌使用有形设备来存储用户的信息。在这里,密钥是一种物理设备,可以用来证明用户的身份。物理令牌的两个元素是硬令牌和软令牌。硬令牌使用智能卡和 USB 授予对受限网络的访问权限,就像公司办公室用来访问员工的网络一样。软令牌使用手机或计算机通过授权的应用程序或短信发送加密代码(如 OTP)。
  • Web 令牌:通过 Web 令牌进行的身份验证是一个完全数字化的过程。在这里,服务器和客户端界面根据用户的请求进行交互。客户端将用户凭据发送给服务器,服务器对其进行验证,生成数字签名,并将其发送回客户端。Web 令牌通常称为 JSON Web 令牌 (JWT),这是一种用于创建数字签名令牌的标准。

令牌是当今数字环境中使用的流行词。它基于去中心化密码学。其他一些与代币相关的术语是 Defi 代币、治理代币、不可替代代币和安全代币。令牌完全基于难以破解的加密。  

三、什么是基于令牌的身份验证?

基于令牌的认证是一种两步认证策略,用于增强用户访问网络的安全机制。用户一旦注册了他们的凭据,就会收到一个在指定会话时间内有效的唯一加密令牌。在此会话期间,用户无需登录即可直接访问网站或应用程序。它通过在密码系统中添加一层来节省时间和安全性,从而增强用户体验。

令牌是无状态的,因为它不会在数据库中保存有关用户的信息。该系统基于密码学,一旦会话完成,令牌就会被销毁。因此,它具有防止黑客使用密码访问资源的优势。  

最友好的令牌示例是 OTP(一次性密码),用于验证正确用户的身份以获取网络入口,有效期为 30-60 秒。在会话期间,令牌存储在组织的数据库中,并在会话过期时消失。  

让我们了解一些基于令牌的身份验证的重要驱动因素-

  • 用户:打算访问带有他/她的用户名和密码的网络的人。
  • 客户端-服务器:客户端是前端登录界面,用户首先在其中进行交互以注册受限资源。
  • 授权服务器:处理验证凭据、生成令牌并发送给用户的任务的后端单元。
  • 资源服务器:它是用户输入访问令牌的入口点。如果通过验证,网络会向用户发送欢迎信息。

四、基于令牌的身份验证如何工作?

基于令牌的身份验证已成为 Internet 服务提供商广泛使用的安全机制,用于为用户提供快速体验,同时不损害其数据的安全性。让我们通过易于掌握的 4 个步骤来了解此机制的工作原理。

2Zmh5D.gif

基于令牌的身份验证如何工作?

1.请求: 用户有意在应用程序或网站界面上使用登录凭据进入服务。凭据涉及用户名、密码、智能卡或生物特征

2. 验证: 客户端将登录信息发送给验证服务器,用于验证试图进入受限资源的有效用户。如果凭据通过验证,服务器会通过 HTTP 以代码的形式向用户生成一个秘密数字密钥。令牌以 JWT 开放标准格式发送,其中包括 -

  • 标头:它指定令牌的类型和签名算法。
  • 有效载荷:它包含有关用户和其他数据的信息
  • 签名:它验证用户和传输消息的真实性。

3.令牌验证: 用户收到令牌代码并将其输入资源服务器以授予对网络的访问权限。访问令牌的有效期为 30-60 秒,如果用户申请失败,可以向身份验证服务器请求刷新令牌。用户尝试获取访问权限的次数是有限制的。这可以防止基于试错法的暴力攻击。  

4. 存储: 资源服务器验证令牌并授予用户访问权限后,它会在您定义的会话时间内将令牌存储在数据库中。每个网站或应用程序的会话时间都不同。例如,银行应用程序的会话时间最短,大约只有几分钟。

因此,这里的步骤清楚地解释了基于令牌的身份验证的工作原理以及驱动整个安全过程的主要驱动因素是什么。

五、注意

今天,随着创新的不断发展,安全法规将变得更加严格,以确保只有合适的人才能访问他们的资源。因此,由于令牌能够以加密形式处理商店信息并在网站和应用程序上工作以维护和扩展用户体验,因此令牌在安全过程中占据了更多空间。希望本文为您提供了基于令牌的身份验证的所有专业知识,以及它如何帮助确保关键数据被滥用。

六、最后说一句

我是石页兄,如果这篇文章对您有帮助,或者有所启发的话,欢迎关注笔者的微信公众号【 架构染色 】进行交流和学习。您的支持是我坚持写作最大的动力。

欢迎点击链接扫马儿关注、交流。


其他高质资料推荐:

  1. www.coinbase.com/learn/crypt…
  2. developer.aliyun.com/article/341…



相关文章
|
7月前
|
存储 JSON 算法
无懈可击的身份验证:深入了解JWT的工作原理
无懈可击的身份验证:深入了解JWT的工作原理
1070 0
|
存储 安全 API
深入了解OAuth 2.0:探究身份验证与授权的新标准
OAuth 2.0是一种开放标准的协议,用于安全地授权第三方应用程序访问用户的资源,而无需共享用户的凭据。这一协议在互联网上广泛应用,为许多应用和服务提供了强大的身份验证和授权机制。本文将深入介绍OAuth 2.0,探讨其工作原理、关键概念和常见用途。
|
JSON API 数据安全/隐私保护
|
3月前
|
JSON 安全 数据安全/隐私保护
Python 安全性大揭秘:OAuth 与 JWT,不只是认证,更是信任的传递
【9月更文挑战第4天】在数字化时代,确保应用安全至关重要。Python 作为广泛使用的编程语言,提供了强大的安全认证工具,如 OAuth 和 JWT。OAuth 是一种授权框架,允许第三方应用在有限权限下访问用户资源;JWT 则是一种自包含的数据传输格式,用于安全地传递声明。通过合理配置和使用这些技术,可以有效提升应用安全性,保障用户数据安全。正确管理和定期更新密钥、严格测试 JWT 的生成与验证等最佳实践,对于构建安全可靠的应用至关重要。不断学习新威胁,是维护应用安全的永恒课题。
59 2
|
3月前
|
JSON 安全 API
Python开发者必看:OAuth与JWT授权机制的惊天秘密😱
【9月更文挑战第9天】在现代软件开发中,尤其在Web和移动应用领域,用户认证与授权至关重要。对Python开发者而言,OAuth和JWT是提升应用安全性与用户体验的关键技术。OAuth通过“授权而不认证”的理念保障用户数据安全,JWT则利用JSON Web Tokens实现无缝的信息传递。两者结合可构建高效且安全的认证体系。掌握这些技术,将使你的应用更加出色。
28 0
|
4月前
|
JSON 安全 API
|
6月前
|
JSON 监控 安全
构建安全的用户身份验证系统
【6月更文挑战第21天】 本文介绍了如何使用Flask和JWT构建安全的用户身份验证系统。JWT是一种流行的网络身份验证标准,由头部、载荷和签名三部分组成。在Flask中,通过安装`Flask`和`PyJWT`库,可以创建一个简单的身份验证系统,包括登录路由和受保护的资源路由。文章提供了示例代码,展示如何实现登录、验证JWT令牌、用户注册和令牌刷新。同时,强调了使用HTTPS、日志记录和安全性增强措施的重要性,以确保应用程序的安全性。文章结尾提醒开发者持续改进和评估安全性,遵循最佳实践。
|
7月前
|
机器学习/深度学习 人工智能 安全
【亮剑】无密码身份验证的概念,它通过生物识别、安全令牌等替代技术验证身份,旨在提高安全性和用户体验。
【4月更文挑战第30天】本文探讨了无密码身份验证的概念,它通过生物识别、安全令牌等替代技术验证身份,旨在提高安全性和用户体验。无密码验证简化登录、增强安全性,但也面临实施成本、技术兼容性和用户适应性的挑战。随着技术发展,无密码验证有望成为更广泛的安全认证方式,但实施时需综合考虑多种因素。
130 0
|
存储 安全 前端开发
深入探讨安全验证:OAuth2.0、Cookie与Session、JWT令牌、SSO与开放授权平台设计
这篇文章讨论了认证和授权的概念,并探讨了设计权限认证框架的原则。它还比较了Cookie和Session的区别,并探讨了处理分布式部署时的Session保存问题。此外,文章还介绍了CSRF攻击及其防范方法,以及OAuth2.0、JWT令牌和SSO的概念。最后,文章提出了设计开放授权平台时需要考虑的因素。
230 0
深入探讨安全验证:OAuth2.0、Cookie与Session、JWT令牌、SSO与开放授权平台设计
|
安全 Java 数据库
SecurityOauth2密码模式/oauth/token探究
SecurityOauth2密码模式/oauth/token探究
406 0