Я, должно быть, упускаю что-то очень очевидное в этом.
Я пытался доверять / следовать официальным документам по этому документу, но я замечаю, что на самом деле я не использую всю «bearerStrategy», которую я определяю где-либо. Если я попытаюсь заменить oauth-bearer на bearerStrategy, я получу точно такой же результат.
Установка:
const passport = require('passport');
const BearerStrategy = require('passport-azure-ad').BearerStrategy
Конечная точка в index.js:
app.use("/andon", passport.authenticate('oauth-bearer', { session: false }), andon);
Конфигурация из файлов документации:
let options = {
identityMetadata: appconfig.get("creds.identityMetadata"),
clientID: appconfig.get("creds.clientID"),
passReqToCallback: appconfig.get("creds.passReqToCallback")
}
let bearerStrategy = new BearerStrategy(options,
function(token, done) {
log.info('verifying the user');
log.info(token, 'was the token retreived');
findById(token.oid, function(err, user) {
if (err) {
return done(err);
}
if (!user) {
// "Auto-registration"
log.info('User was added automatically as they were new. Their oid is: ', token.oid);
users.push(token);
owner = token.oid;
return done(null, token);
}
owner = token.oid;
return done(null, user, token);
});
}
);