| title | Windows Store App in Javascript Tutorial | ||||||
|---|---|---|---|---|---|---|---|
| name | Windows Store (JS) | ||||||
| hybrid | false | ||||||
| alias |
|
||||||
| language |
|
||||||
| image | //auth0.com/lib/platforms-collection/img/windows-8.png | ||||||
| tags |
|
||||||
| snippets |
|
This tutorial explains how to integrate Auth0 with a Windows App Store. Auth0.Windows8.Js helps you authenticate users with any Auth0 supported identity provider.
Use the NuGet Package Manager (Tools -> Library Package Manager -> Package Manager Console) to install the Auth0.Windows8.Js package, running the command:
@@snippet(meta.snippets.dependencies)@@
And add reference to the JavaScript code in the default.html, include the following line in the <head> element:
@@snippet(meta.snippets.setup)@@
Go to the Application Settings section on Auth0 Admin app and make sure that App Callbacks URLs has the following value:
https://@@account.namespace@@/mobileThere are three options to do the integration:
- Using the Auth0 Login Widget inside a Web View (this is the simplest with only a few lines of code required).
- Creating your own UI (more work, but higher control the UI and overall experience).
- Using specific user name and password.
To start with, we'd recommend using the Login Widget. Here is a snippet of code to copy & paste on your project:
@@snippet(meta.snippets.use)@@
If you know which identity provider you want to use, you can add a connection parameter and the user will be sent straight to the specified connection:
auth0.Login({ connection: "auth0waadtests.onmicrosoft.com" }, function (err, result) {
if (err) return err;
/*
Use result to do wonderful things, e.g.:
- get user email => result.Profile.email
- get facebook/google/twitter/etc access token => result.Profile.identities[0].access_token
- get Windows Azure AD groups => result.Profile.groups
- etc.
*/
});connection names can be found on Auth0 dashboard. E.g.:
somegoogleapps.com,saml-protocol-connection, etc.
Option 3: Authentication with specific user name and password (only for providers that support this)
auth0.Login({
connection: "my-db-connection",
username: "username",
password: "password"
},
function (err, result) {
if (err) return err;
/*
Use result to do wonderful things, e.g.:
- get user email => result.Profile.email
- get facebook/google/twitter/etc access token => result.Profile.identities[0].access_token
- get Windows Azure AD groups => result.Profile.groups
- etc.
*/
});Optionally you can specify the scope parameter. There are two possible values for scope today:
- scope: "openid" (default) - It will return, not only the
access_token, but also anid_tokenwhich is a Json Web Token (JWT). The JWT will only contain the user id. - scope: "openid profile" - If you want the entire user profile to be part of the
id_token.
The Auth0User has the following properties:
Profile: returns a JSON object containing all available user attributes (e.g.:user.Profile.email).IdToken: is a Json Web Token (JWT) containing all of the user attributes and it is signed with your client secret. This is useful to call your APIs and flow the user identity.Auth0AccessToken: theaccess_tokenthat can be used to access Auth0's API. You would use this for example to link user accounts.
Congratulations!