web-dev-qa-db-fra.com

est-il possible d'obtenir un numéro d'identification unique à partir d'un appareil mobile?

Je travaille actuellement sur des applications Web pour appareils mobiles et je me demandais s'il existait une sorte de numéro d'identification unique par appareil pouvant être détecté via le navigateur.

Le but serait de stocker ce numéro afin de reconnaître les personnes ayant déjà visité le site.

Je travaillais beaucoup avec Bluetooth, et il y a une sorte d’adresse Mac que vous pouvez stocker lorsque vous détectez un appareil, et je l’utilisais comme numéro d’identification. navigateur...?

Merci.

24
Pierre

Après d’autres recherches, la réponse est: non, il n’est pas possible pour le moment d’obtenir un identifiant de périphérique mobile à partir de son navigateur ...

Une solution que j’ai trouvée est de générer un nombre "unique" (dans mon cas, j’ai travaillé avec php, j’ai donc utilisé le numéro session_id () mélangé à un numéro généré avec la fonction Rand (); à peine deux fois ...) puis stockez-le dans un cookie qui n’expire jamais.

Ce n'est pas une solution parfaite, car cela ne fonctionnera pas si les cookies sont désactivés ou si l'utilisateur efface ses cookies, mais après l'avoir utilisé pendant un certain temps, il s'avère que cela fonctionne très bien, que les cookies sont généralement activés sur les appareils mobiles. les utilisateurs ne semblent pas les effacer souvent ...

De plus (selon votre application), si vous stockez un email ou un nom d'utilisateur puis l'associez à ce numéro "unique" dans une base de données, vous pouvez même récupérer l'identité de quelqu'un et stocker un nouveau cookie en lui demandant à nouveau son nom d'utilisateur ou son email. .

J'espère que cela aidera certaines personnes!

27
Pierre

Sam Greenhalgh vient de trouver un moyen de définir un identifiant d'appareil via "Super Cookie":

http://www.radicalresearch.co.uk/lab/hstssupercookies

4
chickenchilli

Je sais que c'est vieux - mais je l'ai trouvé et je voulais partager mes pensées sur la prochaine meilleure chose du PO en utilisant des numéros de type GUID.

À moins que vous n'ayez besoin de la sécurité d'un énorme identifiant non devinable - il est plus logique que le serveur crée un simple compteur - par exemple, commencez à ~ 100 et pour chaque visiteur n'ayant pas déjà votre cookie, utilisez max (counter) + 1 pour créer leur nouveau cookie.

Vous avez maintenant un identifiant très court et unique à 100% que vous pouvez stocker pour le client et le serveur.

En outre, comme vous avez mentionné le fait de stocker une adresse e-mail est également utile, en principe, cette adresse e-mail doit être unique, et pas seulement, car elle est compatible avec tous les navigateurs. c'est-à-dire que leur cookie existe sur un navigateur - mais lorsqu'ils accèdent à un nouveau navigateur, s'ils saisissent la même adresse électronique, vous pouvez les mapper sur leur profil de connexion d'origine.

Bien que vous mentionniez cela et sa véracité, il est également important de noter que toute personne qui entre des données douteuses, par exemple [email protected] sera probablement chargé avec l'historique des autres utilisateurs. C'est-à-dire dans votre cas, un tout nouvel utilisateur insérant [email protected] ne verra pas les pages d'introduction.

2
Aaron

Je fais quelque chose de similaire, mais pour une page HTML locale pour stocker les identifiants dans le stockage local et mettre à jour le serveur: pour limiter la taille du nombre) D'une certaine manière, je pense que les mobiles sont plus susceptibles d'être à l'heure.

0
leDamien

Dans certains pays, les opérateurs incluent des identifiants dans les en-têtes http lorsque le consommateur navigue sur les passerelles WAP. Il existe certains agrégateurs avec des API pour l'identification des consommateurs. Normalement, cela ne fonctionne que lorsque les utilisateurs parcourent également des passerelles WAP.

0
fravelgue