Asp.Net MVC 5 Owin Twitter Auth throwing 401 Exception

oauth, twitter, twitter-oauth

Solution

You need to go into the Twitter Dev App and add a website address. I know it seem silly but this will solve your problem.

- https://apps.twitter.com/

- Go to the Settings Tab

- Set a CallBack URL to any website. Even if it is not real.

This should solve you problem.

Problem

I have set up OAuth authentication using the Owin middleware based off the default project that gets created when starting a new Web project using "Individual accounts" authentication. I've tweaked it a bit, but Facebook and Google are working great, however, when I click on the "twitter" button to issue the challenge, it's throwing a 500 http exception with the error message: Response status code does not indicate success: 401 (Unauthorized). This only comes up with Twitter. Here is my auth config: ``` // Just a configuration section that reads from the web.config var configuration = new OwinCookieConfigurationSection("owinCookieConfiguration"); app.UseCookieAuthentication(GetCookieAuthenticationOptions(configuration)); app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie); app.UseTwitterAuthentication( consumerKey: "XXX", consumerSecret: "XXX" ); app.UseFacebookAuthentication( appId: "XXX", appSecret: "XXX" ); app.UseGoogleAuthentication(); ``` It's definitely a 500 error, not a 401 error as it indicates and I have confirmed it never makes it passed the original post challenge to Twitter. The stack trace appears to show Twitter is not returning a success code from the ObtainRequestToken call: Any ideas?

Original source