我正在尝试通过节点JS中的kerberos使用身份验证登录,但是它只是显示错误。
这是错误:提供了无效的令牌:未知错误
如何使用带有节点JS的kerberos获得有效的令牌?
app.get('/', (req, res) => {
var auth = req.headers['authorization'];
if(auth) {
var token = auth.replace("Basic ", "").trim();
kbServer.step(token).then(serverResponse => {
res.setHeader('WWW-Authenticate', 'Negotiate ' + kbServer.response);
if(kbServer.contextComplete && kbServer.username){
return res.end(`Hello ${kbServer.username}!`);
} else {
res.statusCode = 401;
return res.end(' ');
}
}).catch(err => {
res.statusCode = 500;
res.end(err.message);
});
} else {
res.statusCode = 401;
res.setHeader('WWW-Authenticate', 'Negotiate');
res.setHeader('WWW-Authenticate', 'Basic realm="REALM.COM"');
return res.end('ERROR');
}
});