🔐🔴 2025 年三大身份验证策略 📖🔑

在 Web 开发中,**身份验证** 是最难实现的方面之一。许多 Web 应用程序将身份验证委托给第三方身份验证服务(如 **Auth0**),或依赖于内置于其所用**框架**或工具中的身份验证。

**身份验证策略**是用于验证用户或系统身份以授予对受保护资源的访问权限的方法或技术。可以使用多种不同的身份验证策略,包括:

1. SSO(单点登录)💻

单点登录 (SSO) 是一种身份验证工具,使用户能够使用一组凭证安全地访问多个应用程序和服务,而无需记住每个服务的不同密码。

Image description

SSO 让您不再需要记住并输入多个密码,也消除了忘记密码后必须重置的烦恼。用户还可以访问各种平台和应用程序,而无需每次都登录。

单点登录简化了用户身份验证,改善了用户体验,如果正确实施,还可以提高安全性。它通常用于管理身份验证和安全访问公司内联网或外联网、学生门户、公共云服务以及其他用户需要在不同应用程序之间移动以完成工作的环境。

2. JWT 身份验证

JSON Web Token (JWT) 是一项开放标准 (RFC 7519),它定义了一种紧凑且自包含的方式,用于以 JSON 对象的形式在各​​方之间安全地传输信息。由于此信息经过数字签名,因此可以验证和信任。

Image description

JWT 是 JSON Web Token 的缩写,是一种常用的无状态用户身份验证标准,用于以 JSON 格式在客户端和服务器之间安全地传输信息。

这是令牌的结构:

`(标题)。(有效负载)。(签名)`

3. OAuth 🍚

开放授权 (OAuth) 是一种开放标准授权框架,它授予应用程序访问最终用户受保护资源(例如他们的照片、日历或社交媒体帖子)的权限,而无需用户帐户的登录名或密码。

OAuth 是一种技术标准,它允许您授权一个应用或服务登录另一个应用或服务,而无需泄露密码等私人信息。如果您曾经收到过“使用 Facebook 登录?”或“允许此应用访问您的帐户?”这样的消息,您就见证了 OAuth 的运作。

要求用户“使用 Google 登录?”或“允许访问您的帐户信息?”的网站和第三方应用程序是 OAuth 的常见用例。OAuth 协议使用户能够轻松授予这些应用程序访问其帐户数据的权限,而无需共享其用户凭据。

最后的话

您不一定需要从一开始就了解所有这些、如何实施以及来龙去脉。但了解它们是什么以及它们如何工作很重要。这将帮助您在为应用程序选择身份验证策略时做出更好的决策。

重要!🫵

https://dev.to/martygo/top-3-best-authentication-frameworks-for-2025-51ej

资源📖

https://roadmap.sh/guides/jwt-authentication

https://www.ibm.com/think/topics/oauth

https://www.okta.com/blog/2021/02/single-sign-on-sso/