Passport 与 Passport JWT:区别与比较

身份验证是所有 Web 和移动应用程序的主要安全来源。 身份验证非常有助于识别用户的真实性,并且用户有权访问 Web 应用程序。

关键精华

  1. Passport 是 Node.js 应用程序广泛使用的身份验证中间件,而 Passport JWT 是 Passport 中使用 JSON Web Tokens (JWT) 进行身份验证的特定策略。
  2. Passport 为集成不同的身份验证策略提供了一个灵活的框架,而 Passport JWT 是为基于令牌的身份验证而设计的众多可用策略之一。
  3. 护照是管理用户身份验证的基础工具,而 Passport JWT 是一种专注于使用 JWT 进行安全和无状态身份验证的实现。

护照与护照 JWT

Passport 和 Passport-JWT 的区别在于 Passport 没有任何特定的身份验证方法; 相反,许多方法是使用护照作为身份验证策略来实现的,而 Passport-JWT 是一种使用使用护照进行身份验证的网络令牌方法的策略。

护照与护照 JWT

护照是一个 JavaScript的 它通过提供许多身份验证策略来帮助开发人员,并且在集成时将提供安全身份验证。

Passport 是一个中间件,用于 认证 在 Node 中,Passport-JWT 是一种对应用程序进行身份验证的 JWT 策略。 Passport-JWT 是 passport javascript 的子集。 JWT 是一个 JSON 网络令牌,它是使用 passport javascript 实现的。


 

对比表

比较参数护照护照-智威汤逊
宗旨它是节点中用于身份验证的中间件。 它是灵活的和模块化的。它是在护照的帮助下实施的一种特定策略,以提供身份验证。
方法它没有任何特定的实现方法,并使用 oAuth 方法。使用 JSON Web Token 方法实现身份验证。
策略Passport 使用“本地”作为本地系统来验证请求。Passport-JWT 使用以下语法使用 JWT 策略,
新的 JwtStrategy(选项,验证)
脚本passport-local 策略有 return 和 done 脚本。 它期望从该方法返回数据。Passport-JWT 不需要任何返回类型; 它只完成了脚本。
打回来passport-local 策略使用闭包和自定义回调。 在处理用户数据之前,请求。 应该调用 login() 方法。passport-JWT 策略也使用闭包和自定义回调,但这里 JWT 令牌将在用户验证后生成。 Jwt.sign()

 

什么是护照?

护照是用于使用用户名和密码进行身份验证的中间件。 这只是 node.js 应用程序中涉及提供身份验证的一个模块,它是模块化的并且高度灵活。

另请参阅:  Microsoft Forms 与 PowerApps:差异与比较

Passport 可以不引人注意地集成到任何支持“连接”风格中间件的基于 express 的 Web 应用程序中。

它有它的特点,并提供更多的好处。 特点是,

  1. 使用 OpenID 和 OAuth 进行单点登录
  2. 更多号码认证策略,约300+
  3. 选择所需的方法并根据要求选择它们。

本地身份验证策略借助用户名和密码等凭据提供身份验证。 它执行验证回调,接受证书,最后提供用户调用完成。

护照。 Authenticate 使用“本地”作为本地策略来验证请求。

护照
 

什么是护照智威汤逊?

使用 JSON Web Token 提供身份验证也是护照策略之一。 该护照策略也是提供身份验证服务的众多模块之一。

使用 JSON 网络令牌,此模块对端点进行身份验证。 此外,这个没有会话的模块可以保护 RESTful 端点。

句法 安装 passport-jwt,

npm 安装 passport-jwt

认证策略如下,

新的 JwtStrategy(选项,验证)

“选项”只不过是一个对象文字,用于管理从请求中提取的网络令牌。 为了验证传入的通行证,passport-jwt 使用 jsonwebtoken。

有多种方法可以传递 JWT 令牌请求。 它也是模块化和灵活的,添加了使用 jwtFromRequest 参数的功能,该参数是作为请求传递的用户提供的回调 JWT。

上面提到的回调被称为提取器。 Passport-jwt.ExtractJwt 提供了许多提取器工厂函数。

  1. fromHeader(header_name) – 将创建提取器以在标头中查找 JWT
  2. fromBodyField(field_name) – Extractor 将在正文中寻找 JWT
护照jwt

Passport 和 Passport JWT 的主要区别

  1. Passport 和 Passport-JWT 都是使用其策略提供身份验证的模块。 由于各种原因,它们使用起来既简单又方便。 Passport 和 Passport-JWT 的主要区别 是 Passport 没有任何特定的实现方法。 相比之下,Passport-JWT 已经是一种使用JSON Web Token JWT 方式实现认证的策略。
  2. Passport 使用“本地”作为其名为 Passport-local 的策略之一来验证请求,而 Passport-JWT 使用 JWT 策略使用以下语法,new JwtStrategy(options, verify)
另请参阅:  云与服务器:差异与比较

X和Y的区别 2023 04 06T174124.075
参考资料
  1. http://www.passportjs.org/packages/passport-jwt/
  2. https://itnext.io/implementing-json-web-tokens-passport-js-in-a-javascript-application-with-react-b86b1f313436

最后更新时间:11 年 2023 月 XNUMX 日

点1
一个请求?

我付出了很多努力来写这篇博文,为您提供价值。 如果您考虑在社交媒体上或与您的朋友/家人分享,这对我很有帮助。 分享是♥️

关于“Passport 与 Passport JWT:差异与比较”的 22 个想法

发表评论

想保存这篇文章以备后用? 点击右下角的心形收藏到你自己的文章箱!