Azure移动服务与MVC4 SimpleMembership对比

4

在使用ASP.Net MVC4网站时,通过SimpleMembership非常容易添加OAuth身份验证。

OAuthWebSecurity.RegisterTwitterClient(consumerKey,consumerSecret);

在客户端设备上使用Azure移动服务时,添加OAuth身份验证非常简单。

await App.MobileService.LoginAsync(MobileServiceAuthenticationProvider.Twitter);

问题在于这是两个不同的数据存储。我需要用户能够从应用程序或网站注册和/或登录。提供设备和ASP.Net网站集成OAuth身份验证的最佳/最简单方法是什么?是否有可用的示例?

2个回答

3

0
我刚刚发布了一个示例,使用ASP.NET MVC4简单成员身份验证来通过Azure移动服务(通过Facebook,在我的示例中)进行身份验证,链接为http://blogs.msdn.com/b/carlosfigueira/archive/2013/06/25/exposing-authenticated-data-from-azure-mobile-services-via-an-asp-net-mvc-application.aspx。帖子包含很多细节,但是想法是,如果您可以获取提供程序访问令牌(例如来自Facebook或Google),则可以将其格式化并发送到后备移动服务。在下面的代码片段中,Facebook令牌存储在会话状态中,并由确保用户已登录的方法检索。
        if (MobileService.CurrentUser == null)
        {
            var accessToken = Session["facebooktoken"] as string;
            var token = new JObject();
            token.Add("access_token", accessToken);
            return MobileService.LoginAsync(MobileServiceAuthenticationProvider.Facebook, token).ContinueWith<bool>(t =>
            {
                if (t.Exception != null)
                {
                    return true;
                }
                else
                {
                    System.Diagnostics.Trace.WriteLine("Error logging in: " + t.Exception);
                    return false;
                }
            });
        }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接