2011-12-17 11 views
1

私は、ユーザーの認証と識別の手段としてTwitterを使用するiOSアプリケーションを構築し始めています。 OAuthが提供するバレーキー/アクセストークンのアイデアは理解していますが、状態保持に使用するアーキテクチャーは理解できません。つまり、アプリケーションの機能にユーザー固有の情報を追加する必要があります。ユーザからのこの情報の検証を設計する。OAuth使用時のログイン情報の保持

ユーザーがデバイスのアプリケーションにログインした場合、そのデバイスを認証してから、サーバーにトークンを送信する必要がありますか?後で使用するためにこれらのトークンをmy dbに格納することは容認できますか?

また、この情報の通信を安全に処理するにはどうすればよいですか?

アプリのアーキテクチャを扱う方法を詳述している記事や話は、非常に役に立ちます。

答えて

0
  1. サーバーにトークンなどの情報を送信しないようにしてください。あなたがしなければそれをしないでください。その場合は、常に転送用のセキュアな(HTTPS)接続を使用してください。トークンはそれ自身では無意味ですが、アプリケーションコード(消費者トークン)に格納されているトークンと組み合わせることができ、ハッカーがユーザーのアカウントをほぼ完全に制御できるようになります。
  2. サーバーに送信しない場合は、iOSキーチェーンを使用してトークンを保存します。

トークンを保存できないというTwitter APIルールはありませんが、「ユーザーに驚かないでください」というメッセージがあります。基本的にこれは、ユーザーがそれを期待していない可能性があるため、サーバーからつぶれないことを意味します。ユーザーのデータ分析を行っている場合は、おそらく問題ありませんが、読み取り専用にしておき、分析が完了したらプッシュ通知をユーザーに通知します。再び、は、ユーザーが期待していないことはしません。

ユーザーの情報をキャッシュする場合:画面名や氏名だけを話している場合は、実際にはあまり頻繁に変更されません。これらを24時間キャッシュに保管することは安全です。もちろん、これほど長いタイムラインは保存しないでください。時には少し妥協しなければならないかもしれません。ユーザーがバッテリーやネットワークの使用量を節約しようとしている間は、おそらくライブデータが必要になります。

更新:どのようなユーザーが最も高く評価するとあなたは、単に彼らが唯一OKをクリックする必要が意味内蔵のTwitterの機能を使用することです。主要なOAuthプロシージャはなく、自分でトークンを制御することはできません(ユーザーはそれを好むでしょう)。

関連する問題