7

私は、モバイルアプリを作成する開発者が使用するRESTAPIに取り組んでいます。ユーザーはサードパーティのサービス(Google、Twitterなど)を使用して自分自身を認証できます。これは主にOAuthによって処理されます(問題のサービスによって異なります)。クライアントアプリケーションとAPIサーバーの間で2本足のOAuthを使用します(コンシューマーキー/シークレットがアプリ固有である場合、開発者はアプリが登録されたときにサイトから取得します)。

私の問題は、ステートレスな方法でユーザー認証を追跡する方法です。各リクエストで送信するユーザーの資格情報がありません。ユーザーがログインしたときに一意のsession_idを作成し、RESTAPIへの各リクエストでそれを要求することができます。私の問題に対する他の解決策はありますか?一意のsession_idを使用してユーザーを識別すると、ステートレスREST APIの観点から問題が発生しますか?

4

1 に答える 1

10

免責事項:私はとにかくセキュリティの専門家ではありません。

これをsession_Idとは呼ばないでください。これを認証トークンと呼び、独自の認証スキームを使用してAuthorizationHTTPヘッダーを渡します。例については、 GoogleAuthSubを参照してください。

この認証トークンは、ユーザーを識別し、ユーザーが要求の実行を許可されているかどうかを判断する以外の目的には使用しないでください。トークンに状態を関連付けたり、それに基づいてユーザー設定を取得したりしないでください。

于 2010-10-05T16:32:10.410 に答える