HTML/CSS/JS を使用してハイブリッド モバイル アプリを開発しています。ログイン情報を使用してセキュリティを検討しています。セットアップしたシステムは、ユーザーのログイン後にハッシュを作成します。このハッシュには時間制限があり、ローカルストレージ
基本的に、次のようなものがローカルストレージになります。
hash
5f4a09cfec2a6d8f306eecb3844e33e9
hash_expiration
1373012945
password
*encryted user password*
このハッシュは、すべての AJAX リクエストのヘッダーで検証のためにサーバーに送信されます (データベース マッチング用のユーザー ID が付随します)。
私は主にこのトピックを開いて、ハッシュ キーの再作成に対処する方法のベスト プラクティスについて説明します。ユーザーのハッシュ キーを更新する方法を見つける必要があります。
AJAX と JS の経験がまだかなり限られていることを考慮して、次のように AJAX セットアップを使用して新しいハッシュをチェックすることを考えました。
$.ajaxSetup({
beforeSend: function(xhr, settings) {
var time = new Date().getTime(); //unix time
var hash_time = localStorage.getItem("hash_expiration");
if(time>hash_time){
//ajax request to fetch new hash, async: false to make sure this completes before continuing with other AJAX calls
}
}
});
ユーザー ID と暗号化されたパスワードを送信して彼を確認し、新しいハッシュを返します。
ajaxSetup の beforeSend で AJAX リクエストを送信する必要がありますか? これは、アプリケーション全体で他の beforeSends とどのように競合しますか?