Identifying users across Windows 8 devices

103 views Asked by At

I have an app that runs over multiple Windows 8 devices, such as phones and tablets. I need a fluent (not necessarily secure) way of identifying users across apps. For Windows Phone 8, ANID2 is an option. For Windows 8, I used a hardware token from HardwareIdentification previously, but this doesn't necessarily identify the user if there are multiple users on the same machine.

Live authentication is not an option for me and I want to be able to identify the same user in two apps. Is there any way around this or am I forced to create my own account management system ?

2

There are 2 answers

0
Peter Torr On

Unfortunately there is no such API for Windows 8 (or 8.1). The hardware token (aka ASHWID) is specific to the app/device combo. Different apps and different devices get different values (not what you want) and different users on the same device get the same value (also not what you want).

The EAS Client ID is similarly salted per-app so it's not useful.

Windows 8.1 introduced the Advertising ID but this value is also not suitable (it is the same for all apps for the same user on the device, but it doesn't roam to other devices and can be disabled / reset by the user).

You can create a random identifier and place it in roaming storage so you can identify the same user across different devices (deeiip's suggestion), but that doesn't work across apps.

Having the user login to another service (Live, Facebook, Google, whatever) is your only real choice if you don't want to stand up your own service.

2
deeiip On

If you don't want to use any third party service. To identify users you've to mark them first i.e. you've to assign an id to each user (maybe a guid) and store it in client side. When you want to know the user you just have to send this id. The exact same thing (nearly) is done when you store a cookie in browser.

But if you really want to use a simple solution I'd suggest Amazon Cognito