Skip to content

Instantly share code, notes, and snippets.

@gregfroese
Created August 12, 2014 14:17
Show Gist options
  • Save gregfroese/1f92f898e68bef0a2551 to your computer and use it in GitHub Desktop.
Save gregfroese/1f92f898e68bef0a2551 to your computer and use it in GitHub Desktop.
var jwt = require('jwt-simple');
var config = require('yaml-config');
var settings = config.readConfig('./config/app.yaml');
var username = settings.rabbitmq.username;
var password = settings.rabbitmq.password;
var url = settings.rabbitmq.url;
var port = settings.rabbitmq.port;
var rpc = require('amqp-rpc').factory({
url: "amqp://" + username + ":" + password + "@" + url + ":" + port
});
rpc.on('profile.confirmToken', function(params, callback) {
var token = params.token;
if(token) {
try {
var decoded = jwt.decode(token, app.get('jwtTokenSecret'));
if (decoded.exp <= Date.now()) {
callback(false, {}, {error: "Token is expired"});
}
user = {
username: decoded.username,
mail: decoded.mail,
groups: decoded.groups
}
callback(true, user, {});
} catch (err) {
//error decoding
callback(false, {}, {error: err});
}
} else {
callback(false, {}, {error: "No token resceived"});
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment