从User对象获取外部登录信息

时间:2015-03-05 07:36:49

标签: asp.net-mvc asp.net-identity owin claims-based-identity

环境:使用VS2013标准网页模板的MVC项目

当用户通过外部登录(例如Google)登录时,是否可以从Controller的User对象(系统)检索有关外部登录的信息,例如LoginProvider,DefaultUserName等。 .Security.Claims.ClaimsPrincipal)?

如果不是这个对象,还有其他方法可以将它们放在MVC控制器中吗?

1 个答案:

答案 0 :(得分:2)

AcountsController中查找名为ExternalLoginCallback的操作。这样有一行代码

var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync();

loginInfo实例仅包含应用程序验证您所需的基本信息。但是如果你打电话

var detailedLoginInfo = AuthenticationManager.AuthenticateAsync(DefaultAuthenticationTypes.ExternalCookie);

此实例应包含您要求的所有信息。

相关问题