4

ASP.Net MVC4 サイトを使用する場合、SimpleMembership を使用して OAuth 認証を追加するのは非常に簡単です。

OAuthWebSecurity.RegisterTwitterClient(consumerKey,consumerSecret);

クライアント デバイスで Azure Mobile Services を使用する場合、OAuth 認証を追加するのは非常に簡単です。

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

問題は、これらが 2 つの異なるデータ ストアであることです。ユーザーがアプリまたはサイトから登録および/またはログインできるようにする必要があります。デバイスと ASP.Net サイトから統合された OAuth 認証を提供するための最良/最も簡単な方法は何ですか? サンプルはありますか?

4

2 に答える 2

3

これは、Azure Mobile Services と MVC SimpleMembership が機能していたときに、Twitter と Facebook のログインでのみ実現できました。確かに目を通すべきことがたくさんあるこのスレッドを見てください。しかし、それは私の調査結果をかなり詳細に説明しています。

http://social.msdn.microsoft.com/Forums/en-US/azuremobile/thread/d54d28c6-6941-4af5-b116-dc8c51820498

申し訳ありませんが、コードを提供できませんでした。私の目標は、この統合のための認証/セキュリティ コードを記述しないことだったからです。

ネイト

于 2013-05-13T17:48:27.410 に答える
0

ASP.NET MVC4 シンプル メンバーシップを使用して (この例では Facebook 経由で) Azure Mobile Service への認証を行うサンプルをhttp://blogs.msdn.com/b/carlosfigueira/archive/2013/06/に投稿し終えました。 25/exposed-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;
                }
            });
        }
于 2013-06-25T09:02:58.820 に答える