RESTful API に対して認証したいモバイル iOS アプリケーションがあります。すべてのユーザーは、同じアカウントにリンクされた複数のデバイスを持っている可能性があります。
これまでのところ、次のことを思いつきました。
クライアント側
- ユーザーがユーザー名/パスワードでログインできるようにする
- ユーザー名/パスワードと一意のデバイス ID をサーバーに送信する
- サーバーから authToken を取得し、各 API 呼び出しの HTTP 認証ヘッダーに設定します
- ログアウト時に、authToken を削除します
サーバ側
- APIはSSLを使用
- ユーザーには多くの関連付けられたデバイスがあります
- デバイスは一意のデバイス ID と authToken で表されます
- ユーザーがパスワードを変更するたびに、すべての authToken を再生成する
- デバイスが削除された場合、そのデバイスの authToken を削除します
API にアクセスし、手動でデバイスを追加/削除するための安全な方法でしょうか?