2012-08-23 4 views
0

Nous avons une application qui fonctionne hors ligne que les données sont stockées localement en utilisant le stockage local et les capacités hors connexion HTML5.authentifier l'utilisateur en mode hors connexion

Nous voulons un moyen d'authentifier l'utilisateur lorsque l'utilisateur essaie de lancer l'application hors ligne (à des fins de sécurité si l'ipad est volé).

Nous avons déjà le mécanisme d'authentification lorsque l'utilisateur tente d'accéder à l'application en ligne

+0

Quelques détails supplémentaires seraient utiles. Authentifier uniquement l'utilisateur unique dont les données sont stockées hors connexion? – jebar8

+0

Étant donné que les données stockées localement sont confidentielles, nous devons authentifier l'utilisateur lorsqu'il tente de lancer l'application hors ligne à partir d'un ipad. – dazzle

Répondre

3

Grossièrement, vous pouvez utiliser le mot de passe de la personne comme le nom de la base de données de stockage local. Pas de mot de passe, pas d'accès à la base de données

+0

désolé, je n'ai pas compris ce que vous vouliez dire – dazzle

+0

Je suppose que vous utilisez l'API de base de données HTML5? La base de données a besoin d'un nom de base de données 'window.openDatabase (" cool-name ", ...'. Je suppose que vous pouvez utiliser le nom d'utilisateur + mot de passe et le hacher pour générer un nom unique pour la base de données. nom d'utilisateur ou mot de passe, il ne sera pas mappé à la base de données correcte et ne pourra pas afficher leurs données –

+2

Notez que dans Chrome, cela ne serait pas sécurisé.Le DevTools répertorie tous les db disponibles –

0

Une solution consiste à enregistrer la dernière connexion en ligne de connexion dans un stockage local. Maintenant, lorsque l'utilisateur est en déconnecté -mode puis comparez avec la valeur stockée dans le stockage local.

Voici l'extrait de l'échantillon pour le stockage local en HTML 5:

if (window.localStorage.getItem('value')) { 
    dummy = window.localStorage.getItem('value'); 
} 

Espérons que cela pourrait résoudre le problème.

Questions connexes