繁体   English   中英

Strongloop Passport.js身份验证-“无法获取访问令牌”

[英]Strongloop Passport.js authentication - “Failed to obtain access token”

我正在尝试编写一个通过Github Enterprise服务器进行身份验证的Express / Passport应用。 这需要手动编辑护照的github策略以指向私有企业API端点。 那里没有大佬。

我正在使用Strongloop来构建应用程序,因此我正在使用strongloop-passport-component集成。

据我所知,该应用程序已正确配置,但是在重定向时,我收到以下错误消息:

环回500 InternalOAuthError:无法在/ Users处的Strategy.OAuth2Strategy._createOAuthError(/Users/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/lib/strategy.js:370:17)获取访问令牌在/Users/Tom/Desktop/soundoff/node_modules/passport-github/lib/strategy.js上的/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/lib/strategy.js:166:45: 75:25,位于ClientRequest的/Users/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:177:18。 (/Users/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:148:5),位于ClientRequest的emitOne(events.js:90:13)。在TLSSocket.emit(events.js:182:7)在emitOne(events.js:90:13)在TLSSocket.socketErrorListener(_http_client.js:262:9)处发出(events.js:182:7)

如果我查看github应用程序设置,则可以验证用户是否已成功通过该应用程序进行身份验证。 似乎无法将用户重定向到重定向URI。 相应地,它找不到访问令牌?

用户最终使用的URL类似于http://0.0.0.0:3000/auth/github/callback?code=dceef2ffe07b5dbfa194但是,我希望他们最终使用http://0.0.0.0:3000/auth/account

是什么原因导致环回找不到访问令牌? 它不是在URL ?code=吗?

不幸的是,解决方案是不使用strongloop-passport-component。 开发人员反应迟钝,看起来不会得到解决。

如果临时令牌(此处为dceef2ffe07b5dbfa194 )无效,则可能无法获取访问令牌。

可能是在您修改的github策略中,未正确配置OAuth流的第二阶段,在该阶段中临时令牌被交换为最终令牌,很可能是请求主github api而不是您的企业github api进行令牌交换

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM