authentication - 护照和智威汤逊的区别?

标签 authentication express authorization

我对 Express/Node 还很陌生 - 我试图找出 Passport 和 JWT 之间的区别,但找不到明确的答案?我知道您可以在应用程序中使用其中之一来进行身份验证,或者与诸如 Passport-jwt 之类的 npm 包一起使用。

所以我想知道的是:

  1. JWT 能做什么而 Passport 不能(反之亦然)?

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

最佳答案

Passport是Node.JS的身份验证中间件,它不针对任何特定的身份验证方法,像OAuth、JWT这样的身份验证方法在Passport中是通过策略模式实现的,因此这意味着您可以在不影响身份验证机制的情况下交换身份验证机制应用程序的其他部分。

Passport is authentication middleware for Node.js. Extremely flexible and modular, Passport can be unobtrusively dropped in to any Express-based web application. A comprehensive set of strategies support authentication using a username and password, Facebook, Twitter, and more.

http://passportjs.org/

A Passport strategy for authenticating with a JSON Web Token.

此模块允许您使用 JSON Web token 对端点进行身份验证。它旨在用于保护没有 session 的 RESTful 端点。

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

关于authentication - 护照和智威汤逊的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43288328/

相关文章:

Azure管道-terratest-错误: Please run 'az login' to setup account

javascript - 如何在 Node JS 中使用事件?

javascript - 服务器端 React-Redux、Express,无需额外的 ES6 和 JSX 语法

reactjs - 为什么在 React 中,我的 axios API 调用具有包含 Bearer <token> 的授权 header ,但未获得授权并给出 401 错误

使用 Ldap 进行 spring 授权和角色管理

.net - MVVM/ViewModels 和处理授权

java - 如何仅使用Java在vaadin中创建Spring Security登录页面?

spring - Spring Boot 和 RestAssured 中的模拟 session

javascript - 如何从服务器端访问通过 Jquery.getJSON 发送的数据?

symfony - OR 关系中的多个 Guard 身份验证器