Passport和JWT之间的区别?

时间:2017-04-07 23:10:47

标签: authentication express authorization

我对Express / Node很陌生 - 我试图找出Passport和JWT之间的区别但是找不到明确的答案?我知道您可以在应用程序中使用其中一个用于auth目的,或者与passport-jwt之类的npm包一起使用。

所以我想知道的是:

  1. JWT对Passport没有做什么(反之亦然)?

  2. 认证/授权的首选方法是什么?为什么?

2 个答案:

答案 0 :(得分:29)

Passport是Node.JS的身份验证中间件,它不适用于任何特定的身份验证方法,OAuth,JWT等身份验证方法是通过策略模式在Passport中实现的,这意味着您可以在不影响的情况下交换身份验证机制你申请的其他部分。

  

Passport是Node.js的身份验证中间件。 Passport非常灵活和模块化,可以不受干扰地放入任何基于Express的Web应用程序中。一套全面的策略支持使用用户名和密码,Facebook,Twitter等进行身份验证。

http://passportjs.org/

  

使用JSON Web令牌进行身份验证的Passport策略。

此模块允许您使用JSON Web令牌验证端点。它旨在用于在没有会话的情况下保护RESTful端点。

https://www.npmjs.com/package/passport-jwt

答案 1 :(得分:4)

Passport只是Node.JS的中间件。

JSON Web令牌可以在护照的“内部”使用。 Passport还提供其他功能。