passport-openidconnect icon indicating copy to clipboard operation
passport-openidconnect copied to clipboard

Proxy issue on OAuth2 - ENETUNREACH failed to obtain access token

Open rajasekar-mu opened this issue 2 years ago • 2 comments

I have added below proxy options referred at - #https://github.com/jaredhanson/passport-oauth2/issues/59

const agent = new HttpsProxyAgent(process.env.HTTP_PROXY); gStrategy._oauth2.setAgent(agent); passport.use(gStrategy);

but its not working, so directly added proxy on node_modules/oauth/lib/oauth2.js for workaround.

var queryStr= querystring.stringify(parsedUrl.query); if( queryStr ) queryStr= "?" + queryStr; httpsProxyAgent = new HttpsProxyAgent(process.env.HTTP_PROXY) var options = { host:parsedUrl.hostname, port: parsedUrl.port, path: parsedUrl.pathname + queryStr, method: method, headers: realHeaders }; options.agent = httpsProxyAgent; this._executeRequest( http_library, options, post_body, callback ); }

Any permanent fix is available? Every time we cant change the node_modules inside the Docker container. Kindly provide fixes.

rajasekar-mu avatar Aug 11 '22 16:08 rajasekar-mu

have you found a solution to this problem?

david114 avatar Oct 05 '22 14:10 david114

Not get permanent fix, still using workaround method

Add additional (Proxy) options request generation in below path,

node_modules/oauth/lib/oauth2.js

httpsProxyAgent = new HttpsProxyAgent(process.env.HTTP_PROXY) options.agent = httpsProxyAgent; this._executeRequest( http_library, options, post_body, callback );

rajasekar-mu avatar Oct 08 '22 17:10 rajasekar-mu