安全で、アプリが起動するたびに認証を求めることでユーザーを悩ませないモバイルアプリの認証を実装する最良の方法は何ですか? つまり、モバイル アプリをインストールした後、ユーザーは初めて登録/ログインする必要があり、その後は常に認証を求めずにアプリが動作します。
ネイティブ モバイル アプリケーションは、アプリを初めて使用するときに資格情報を要求しますが、それ以降はログインを必要としません。アプリが起動し、データ ネットワーク (wifi、3g など) に接続しようとします。データ ネットワークが見つかった場合は、最新のデータを読み込みます。そうでない場合は、最後にアクセスできたときにフェッチできたデータを使用します。データネットワーク。また、アプリはデータ ネットワークが利用可能になると自動的に再接続し、ユーザーの介入なしで最新のデータを取得できます。
meteor モバイル アプリ (accounts-password、useraccounts:core、useraccounts:ionic) を使用して同様の機能を開発しようとしましたが、アプリは頻繁にタイムアウトし、データ ネットワークが失われるたびに再ログインを求められます。ログイン画面でハングアップすることもあり、唯一の解決策はアプリを強制終了することです. この動作は、セッション ID が作成されてアイドル タイムアウトが発生したり、インターネット接続に問題がある場合にログインを強制したりする Web アプリと非常に似ているようです。
最初のログイン時に資格情報を保存し、その後それを使用する方法に関するヒント。また、切断が頻繁に発生する場合にデータネットワークを処理する良い方法はありますか?
フレームワーク: 1. Meteor プラットフォーム 2. AngularJS を使用した Ionic 3. ngCordova
コード構造: 1. すべての meteor メソッド呼び出しとスキーマ定義 (単純なスキーマ) が含まれる共通ディレクトリ。2. アプリケーション ファイルは、ガイドライン (クライアント、サーバー、リソース) に従って編成されます。
stackoverflow で見つけた解決策の 1 つ:
UDID または MAC アドレスと初期ログインの詳細をサーバーに送信します。このユーザー/UDID (または mac) の組み合わせに対して一意のトークンを作成し、ユーザー名/パスが成功した場合はそれを (暗号化して) デバイスに送り返します。その後のアクセスでは、デバイスは再認証のために暗号化されたトークンと UDID/mac (安全な接続を介して) を送信します。
UDID の追跡について偏執狂的な人々を安心させたい場合は、代わりに UDID/mac を使用して暗号化されたトークンをソルトすることができますが、これはそれほど安全ではありませんが、それでも仕事をするはずです.
あなたの助けに感謝します、ありがとう!