ASP.NET MVC中的OAuth/OpenID
前端时间学了MVC3,今天准备自己做个东东,反正最近没事,兼失业中~~
建了MVC 4项目,无聊更新Nuget Packages,发现OAuth 的dll,还有Knockout.js,顿时发现沧海桑田,世事变迁呐。
赶紧查了下OAuth,发现是使用OpenID,想起有些论坛可以用QQ登录,是一样的,可以让网站支持Google、Microsoft、Twitter、Facebook这些登录方式,后两样在天朝是不存在,大家自动无视吧。
已经有OAuth引用,微软定然把一切该做的都做了,http://blogs.msdn.com/b/webdev/archive/2012/08/15/oauth-openid-supbpages.aspx这里详细说明,在MVC中,取消注释App_Start\AuthConfig.cs中的
OAuthWebSecurity.RegisterMicrosoftClient(
clientId: "your Microsoft app id",
clientSecret: "your Microsoft app secret");
OAuthWebSecurity.RegisterTwitterClient(
consumerKey: "your Twitter app id",
consumerSecret: "your Twitter app secret");
OAuthWebSecurity.RegisterFacebookClient(
appId: "your Facebook app id",
appSecret: "your Facebook app secret");
Google略有不同,取消注释App_Start\AuthConfig.cs中的
OAuthWebSecurity.RegisterGoogleClient();
不必惊讶,这就搞定了,我试了下,Microsoft 的方式提示错误,提示需要绝对路径。
另外,Extra Information from OAuth/OpenId Provider 这篇说明了OAuth 从Google、Facebook、Twitter获取的OpenID 信息内容,值得了解。
Customizing the login UI when using OAuth/OpenID 说明了怎么使用图片作为提交登录UI。

浙公网安备 33010602011771号