Skip to content

Instantly share code, notes, and snippets.

@Ozerich
Created April 29, 2016 15:30
Show Gist options
  • Save Ozerich/599bc41efb3a1a0d35a380f6c31e7a48 to your computer and use it in GitHub Desktop.
Save Ozerich/599bc41efb3a1a0d35a380f6c31e7a48 to your computer and use it in GitHub Desktop.
//console.log('Loading event');
var AWS = require('aws-sdk');
var dynamodb = new AWS.DynamoDB();
exports.handler = function(event, context) {
var data = 'body' in event ? event.body : null;
data = data.split('&');
var params = {};
for(var i = 0; i < data.length; i++){
var row = data[i].split('=');
params[row[0]] = row[1];
}
var login = 'login' in params ? params.login : null;
var password = 'password' in params ? params.password : null;
if(login != 'admin' || password != 'admin'){
context.fail('Forbidden');
return;
}
dynamodb.scan({
'TableName' : 'users'
}, function(err, data){
if (err) {
context.fail('Forbidden: Dynamo failed: ' + err);
} else {
var result = [['Email', 'Login', 'Is New User'].join(',')];
for(var i = 0; i < data.Items.length; i++){
var item = data.Items[i];
result.push([item.email.S, item.login.S, item.count.N == 1 ? 'YES' : 'NO'].map(function(a){return '"' + a + '"';}).join(','));
}
context.succeed(result.join("\n"));
}
});
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment