Skip to content

Instantly share code, notes, and snippets.

@tthew
Last active December 18, 2015 10:59
Show Gist options
  • Select an option

  • Save tthew/5772899 to your computer and use it in GitHub Desktop.

Select an option

Save tthew/5772899 to your computer and use it in GitHub Desktop.
// Check whether user is Authenticated
var _verifyAuthToken = function (authToken) {
var deferred = require('q').defer()
, usersService = require(__dirname + '/../services/users.js');
// Check we have an authToken object
if (authToken) {
// Check for relevent properties
if ( authToken.username && authToken.key ) {
// Check key against HMAC
if (_generateHMAC(authToken.username) === authToken.key) {
// Ok, we got a valid token, let's grab the user
usersService.find({username: authToken.username})
.then(function (user) {
if (user) {
// We have a user, let's resolve
deferred.resolve(user);
} else {
// No user? Reject.
deferred.reject();
}
}, function () {
// Something went wrong, reject
deferred.reject();
});
} else {
// Something went wrong, reject
deferred.reject();
}
} else {
// Something went wrong, reject
deferred.reject();
}
} else {
// Something went wrong, reject
deferred.reject();
}
// Return the promsie
return deferred.promise;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment