Я пытаюсь получить мою веб-страницу узла для аутентификации против нашей внутренней медиавидеосистемы и не пропустить маршрут использования паспорта-mediawiki- OAuth.Как найти URL-адрес обратного вызова Mediawiki OAUTH (node passport-mediawiki-oauth)
Думайте, что все правильно настроено, я добираюсь до страницы входа в mediawiki, предоставляю данные для входа, а затем получаю «Неизвестный URL-адрес, E003» из mediawiki (на экране, а не на код возврата). Моя проблема в том, что я не могу понять, что может вызвать эту проблему.
Я попытался установить callbackURL (http://127.0.0.1:30005/auth/mediawiki/callback), я попробовал оставить его пустым, чтобы использовать тот, который установлен по умолчанию (тот же, что указан выше в предложении для Oauth на mediawiki).
Я бы исследовал дальше, но я положил на debug mediawiki, никакой информации. Я попытался найти информацию по выпуску E003, никакой информации. Если я, по крайней мере, смогу выяснить, какой URL-адрес он пытается использовать для обратной связи, чтобы убедиться, что это проблема, но я полностью застрял.
Конфигурация для паспорта-Mediawiki-OAuth является (Конфиденциальная информация удалена):
consumerKey: "xxxxxxxxxxxxxxxxxxxxxxxx",
consumerSecret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
callbackURL: "http://127.0.0.1:30005/auth/mediawiki/callback",
requestTokenURL: 'http://192.168.0.51:8081/dbfswiki/index.php?title=Special:OAuth/initiate',
accessTokenURL: 'http://192.168.0.51:8081/dbfswiki/index.php?title=Special%3AOAuth%2Ftoken',
userAuthorizationURL: 'http://192.168.0.51:8081/dbfswiki//wiki/Special:OAuth/authorize',
baseURL: "http://192.168.0.51:8081/dbfswiki/index.php/Special:OAuth/authorize"
И код аутентификации обрабатывается следующим образом:
passport.use('mediawiki', new MediaWikiStrategy({
consumerKey: configAuth.mediawikiAuth.consumerKey,
consumerSecret: configAuth.mediawikiAuth.consumerSecret ,
callbackURL: configAuth.mediawikiAuth.callbackURL,
baseURL: configAuth.mediawikiAuth.baseURL
},
function(token, tokenSecret, profile, done) {
User.findOrCreate({ mediawikiGlobalId: profile.id }, function (err, user) {
return done(err, user);
});
}
));
[Расширение OAuth MediaWiki] (https : //www.mediawiki.org/wiki/Extension: OAuth) требует, чтобы вы указывали URL-адрес обратного вызова или, по крайней мере, префикс его (например, доменное имя) заранее, в качестве меры безопасности. Поэтому вам необходимо зарегистрировать нового пользователя в MediaWiki, установить URL-адрес обратного вызова, а затем убедиться, что ваш модуль узла отправляет соответствующий URL-адрес обратного вызова или ничего. Не стесняйтесь [сообщать об ошибке] (https://phabricator.wikimedia.org/maniphest/task/create/?projects=mediawiki-extensions-oauth), если у вас есть предложения по тому, как сделать сообщение об ошибке более полезным. – Tgr