Tag: 护照

谷歌oauth不返回电子邮件通行证authentication

我正在尝试使用节点js的护照模块使用Googlebutton进行login。 我想获得人员的电子邮件ID,名称,个人资料图片。 我正试图下载图片到本地服务器。 即使向作用域添加“电子邮件”,Google也不会返回电子邮件地址,也不会返回用于个人资料图片的链接。 我已经看了这个问题的各种答案,但都说包括userinfo.email。现在已被弃用。 根据谷歌文档新的范围参数是电子邮件下面是我的代码任何帮助赞赏护照 passport.use(new GoogleStrategy({ clientID : configAuth.googleAuth.clientID, clientSecret : configAuth.googleAuth.clientSecret, callbackURL : configAuth.googleAuth.callbackURL, }, function(token, refreshToken, profile, done) { // make the code asynchronous // User.findOne won't fire until we have all our data back from Google process.nextTick(function() { // try to find the user based on their google id User.findOne({ […]

护照 – dynamic覆盖策略

我有一个护照库的节点应用程序。 我使用这样的护照策略: passport.use(someStrategy) 以后可以dynamic地覆盖该策略吗? 在应用程序运行期间,我想在某个时候使用不同的策略。 实际上是一样的策略,但configuration不同。 如果我只是做另一个passport.use(someOtherStrategy),那么是不是只是添加另一个“中间件”护照? 那么这不会删除旧的,只需添加一个。 我想要删除旧的。 所以要么覆盖,要么删除并添加一个新的。

会话不能正确地从存储中获得,使用express-session和passportjs

我正在使用passport , express-session和connect-pg-simple 。 问题是会话不能正确地从存储中获得 ,在哪里得到正确的(我希望,但怀疑)保存。 我的设置是一样的,就像我在许多教程中find的一样。 server.js: import express from 'express'; import next from 'next'; import bodyParser from 'body-parser'; import session from 'express-session'; import connectPgSimple from 'connect-pg-simple'; const sessionStorage = connectPgSimple(session); import initAuthentication from '!/server/authentication'; const dev = process.env.NODE_ENV !== 'production'; // eslint-disable-line const port = process.env.PORT || 3000; // eslint-disable-line const app = […]

使用JWT进行环回authentication

我想了解如何将自定义JWT路由安装到loopbacks安全模型中。 我的应用程序有一个涉及SMS的身份validation“跳舞”,这个身份validation会使用出色的描述来生成有效的JWT令牌。 我使用jsonwebtoken ,事情按预期工作。 在获得令牌后,我的angular.js客户端会发送带有Authorisation: JWT ..token..标头中的每个请求的标识(发现有冲突的文档,一个说JWT,一个承载者,但是我可以弄清楚)。 现在我想在循环应用程序中使用令牌。 我想使用ACL系统环回提供的。 我读过以下资源: 使用JSON Web令牌validationNode.js API 环回,在用户login 第三方login(护照) 环回,进行authentication的请求 智威汤逊的护照策略 环回OAuth2.0源 环回卫星 我不清楚我的下一步是什么。 我有工作: 用户“login” – 生成JWT 用户login使用用户名/密码(将退休) 在环回中使用ACL实现(当我访问ACL受保护的资源时,正如我们所期望的那样,发生4xx错误) 我的JWT令牌正确(?)在请求的头部 我需要: 基于JWT令牌的angular色兼容环回ACL的有效用户 非常感谢帮助

对象对象在快递注册护照中的错误

我有一个用户模型,身份证,密码和电子邮件。 当我尝试注册时,它会在窗体中显示[object Object]错误,并且不会在数据库中发布用户数据。 在控制台中,它显示POST /注册302 -58。 这里是整个passport.js文件: var LocalStrategy = require('passport-local').Strategy; // load up the user model var configDB = require('./database.js'); var Sequelize = require('sequelize'); var sequelize = new Sequelize(configDB.url); var User = sequelize.import('../app/models/users'); User.sync(); // load the auth variables var configAuth = require('./auth'); // use this one for testing module.exports = function(passport) { ========================================================================= […]

TypeError:req.flash不是一个函数

当我尝试从页面login,我得到错误return done(null, false, req.flash('loginMessage', 'User does not exist')); TypeError: req.flash is not a function 。 以下是我的server.js和passport.jsconfiguration: server.js: var express = require('express'); var app = express(); var bodyParser = require('body-parser'); var methodOverride = require('method-override'); var session = require('express-session'); var ejs = require('ejs'); var mongoose = require('mongoose'); var passport = require('passport'); var flash = require('connect-flash'); mongoose.connect('mongodb://localhost:mydb'); require('./config/passport')(passport); […]

护照Facebookvalidationcallback没有被调用

我正在做一个节点的应用程序,当我尝试使用与Facebook的护照,validationcallback不运行(没有logging)。 任何帮助,将不胜感激。 var express = require('express'); var routes = require('./routes/routes.js'); var layout = require('./routes/layout.js'); var facebook = require('./routes/facebook.js'); var editprof = require('./routes/editprof.js'); var app = express(); var vogels = require('vogels'); var passport = require('passport'); var FacebookStrategy = require('passport-facebook').Strategy; var configAuth = require('./config/auth'); app.use(passport.initialize()); app.use(passport.session()); … passport.use(new FacebookStrategy({ // pull in our app id and secret […]

Express-mysql-session阻止passport deserializeUser运行

我有一个应用程序使用passport.js通过Facebooklogin用户,并试图使用express-mysql-session来保持其login状态。 如果我不包含express-mysql-session代码,那么护照serializeUser和deserializeUser函数就可以正常工作了…但是当我试图用express-mysql-session存储会话的代码时,deserializeUser函数不会不会受到打击,用户永远不会正确login。 server.js文件 var express = require('express'); var mysql = require('mysql'); var passport = require('passport'); var session = require('express-session'); var MySQLStore = require('express-mysql-session')(session); if (typeof process.env.OPENSHIFT_MYSQL_DB_HOST === "undefined"){ var options = { host : 'localhost', port : '3307', user : 'user', password : 'password', database : 'database', socketpath: '/var/run/mysqld/mysqld.sock' } } else { var options […]