owin google auth with mvc5

时间:2016-01-05 12:55:02

标签: asp.net-mvc api owin google-plus-signin

我创建了一个新的mvc5标准项目。 我编辑了Startup.Auth.cs添加:

 app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions()
 {
      ClientId = "myClientCode.apps.googleusercontent.com",
      ClientSecret = "myClientSecret"
 });

和web.config添加:

 <location path="signin-google">
     <system.web>
          <authorization>
               <allow users="*" />
          </authorization>
     </system.web>
</location>

我在google开发者控制台上设置了自动化的javascript来源为http://localhost:58053,并将授权的重定向URI设置为http://localhost:58053/signin-google

并启用以下google API

  • BigQuery API
  • Debuglet Controller API
  • Google Cloud SQL
  • Google云端存储
  • Google云端存储JSON API
  • Google+ API停用
  • Identity Toolkit API

但是当我选择我的谷歌帐户时,在回调中

public async Task<ActionResult> ExternalLoginCallback(string returnUrl)

的值
HttpContext.GetOwinContext().Authentication.GetExternalLoginInfoAsync();

为空

accounts.google.com生成的回调类似于:

 http://localhost:58053/signin-google?state=K0Q6LHytGsRTpArK9TruwwzurLNbS4JeK30LEYhMmuaH9vmh3zQslFUA0dqByxftJlCBd6NhxyK12Co-2rKjBX711-WTfUNXKajPSKmpc7PiwwqBFwrnhMvUFh6f0b9iHTO4DU0EwBBBiYEDPkpvGsc--oTjTzzqf2qcpNLjScj9Hg6Obxm8tbHBcbO5CJcDxQtMWf8bOJ6bjVihqJwJ270Ps5SGfB9IRdxqJbVlIrM&code=4/tnXrYTNPuoTdZZmT29fWCWoE63_1HEa9g0lCrOi_vo8&authuser=1&session_state=3a5578d289d23d09dac97e705ebc613f4599f92b..d2d9&prompt=none

似乎没问题

关于我可以使用owin检索帐户数据的任何想法吗?

0 个答案:

没有答案