0

apiデータの受信/設定のために.Netに接続するAndroidアプリがあり ます。私が持っている混乱は、ユーザーを初めてサインアップ/ログインし、API にリクエストを行うたびに認証する方法に関するものです。

  • ベース認証を使用するusername/passwordだけで十分安全でしょうか? そして、サーバーへのリクエストusername/passwordごとにそれをデバイスに保存して、api彼を認証してからリクエストを処理する必要がありますか?
  • サインアップ時にすべてのユーザーに対して発行し、デバイスに保存して、リクエストGUID中に毎回取得する必要がありますか?api

他に利用可能なパターンと、最も効率的で安全なパターン。

4

1 に答える 1

0

最初の重要な注意 - パスワードをどこにも保存しないでください - DB ストアでは、平文ではなくハッシュ化されます。

一般に、ユーザーのセッションを作成し、それを後続のリクエストで使用するフローが必要です。したがって、ユーザーがログインするときに、ユーザーとパスワードのハッシュの組み合わせを検証し、ユーザーのセッションを発行します。アプリケーションでは、ユーザーがログアウトするかセッションの有効期限が切れるまで (通常はセッションに有効期限を設定します)、セッションを保存して将来のリクエストで使用します。

oauth2など、参照できる一般的な認証フローもいくつかあります。

また、認証フローのベスト プラクティスに関するドキュメントを公開することを強くお勧めします。
これらから始めることができます:

https://www.owasp.org/index.php/Authentication_Cheat_Sheet
http://codingkilledthecat.wordpress.com/2012/09/04/some-best-practices-for-web-app-authentication/

于 2013-10-27T10:01:51.953 に答える