0

認証なしでユーザーにデータを提供するWeb APIがあります(Webサイトでは、ユーザーが従来のCookieとセッションを使用してログインした後、データを投稿できます)。誰かが私のデータベースに何かを追加する iPhone アプリを開発したいと考えているので、iPhone でユーザーを認証する必要があり、API は投稿を許可します。

では、これを簡単に行うには何を調べる必要がありますか? 現状の API は RESTful です。そのままにしておくとよいでしょう。明らかに私はこれに慣れていませんが、基準が多すぎてどこから始めればよいかわかりません。1 時間以内にコーディングできれば理想的です。

とても有難い!

4

2 に答える 2

1

これを実装する適切な方法は、アプリの作成者にトークンとアプリ ID を提供し、そのトークンを合意された暗号化方法のソルトとして使用して、ユーザー名とパスワード (およびアプリ ID) を新しいサーバーに送信することです。新しいセッションの API 呼び出し。

新しいセッションのリクエストを受け取ったら、提供された appid に基づいてトークンを検索し、トークンを使用してユーザー/パスの復号化を試みます。

ユーザー/パスが受け入れられた場合は、新しいセッションを作成し、セッション ID をユーザーに返します。これは、新しい要求と共に送信できます。

これにより、アプリがリクエストごとに認証を送信する必要がなくなり、特定の時間にセッションを期限切れにすることができます。

于 2010-06-22T02:41:35.447 に答える
0

WebSecurity は ASP.NET MVC 4 で導入されました。SimpleMembershipProvider に依存しています。FormsAuthentication を使用して Cookie を管理します

WebMatrix.WebData.WebSecurityこれは、ユーザー アカウントの作成、ユーザーのログインとログアウト、パスワードのリセットまたは変更、関連タスクの実行など、ASP.NET Web ページ アプリケーションのセキュリティおよび認証機能を提供します。

コードで WebSecurity オブジェクトを使用する前に、WebSecurity データベースを作成または初期化する必要があります。

Web のルートで、_AppStart.cshtml という名前のページを作成 (またはページを編集) します。

  _AppStart.cshtml

    @{
    WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true);
    }

次のコードでリクエストを認証できます。

WebSecurity.Login(LoginName, Password, true)

認証が成功すると、WebSecurity.IsAuthenticated の値が true になり、ユーザーの ID が取得されます。

SimpleRoleProviderアプリケーションでロールを管理するために" " を使用することもできます

于 2014-05-20T05:27:12.747 に答える