[英]Passport-cas2 always redirecting to failureRedirect
我對Node.js還是很陌生,我正在嘗試通過外部CAS服務器實現身份驗證系統。 我正在使用Passport.js + Passport-cas2,但是即使CAS正確地對我進行了身份驗證,它也始終將我重定向到failureRedirect頁面。 這是我的代碼:
var SocketIOFileUpload = require('socketio-file-upload'),
socketio = require('socket.io'),
express = require('express'),
path = require('path'),
express = require('express'),
passport = require('passport'),
session = require('express-session'),
bodyParser = require('body-parser');
var CasStrategy = require('passport-cas2').Strategy;
var cas = new CasStrategy({
casURL: 'https://my.cas.server'
},
function(username, profile, done) {
console.log("authenticating");
done(null, new User());
});
var app = express()
.use(bodyParser.urlencoded({ extended: true }))
.use(SocketIOFileUpload.router)
.use(passport.initialize());
passport.use(cas);
app.use(session({ secret: 'my secret phrase' }))
.use(passport.session())
.get('/', function(req, res){
res.redirect('/auth/cas');
})
.get('/auth/cas',
passport.authenticate('cas', { failureRedirect: '/error', successRedirect: '/upload' }),
function(req, res) {
// Successful.
res.redirect('/upload');
})
.use('/upload', function(req, res, next){
if (req.user)
return express.static(path.join(__dirname, 'html'));
else
res.redirect('/auth/cas');
})
.get('/error', function(req, res) {
res.send('Error in authentication. Please <a href="/auth/cas">Try Again</a>.');
})
.listen(8080, function () {
console.log('Upload Server started on http://localhost:8080');
});
console.log("authenticating")
甚至根本沒有執行!
謝謝你的幫助。
好的,我已修復它,我的CAS服務器證書是自簽名的,我必須編輯passport-cas2源才能使其接受證書。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.