Remove check table privacy

This commit is contained in:
Raul Ochoa
2015-03-23 19:19:46 +01:00
parent 1d433bf5b2
commit 07bc281e25
+18 -48
View File
@@ -342,34 +342,27 @@ module.exports = function(redisPool) {
// null if the request is not signed by anyone
// or will be a string cartodb username otherwise.
//
me.authorizedBySigner = function(req, callback)
{
if ( ! req.params.token || ! req.params.signer ) {
//console.log("No signature provided"); // debugging
callback(null, null); // no signer requested
return;
}
var signer = req.params.signer;
var layergroup_id = req.params.token;
var auth_token = req.params.auth_token;
//console.log("Checking authorization from signer " + signer + " for resource " + layergroup_id +
// " with auth_token " + auth_token);
var mapStore = req.app.mapStore;
if (!mapStore) {
throw new Error('Unable to retrieve map configuration token');
}
mapStore.load(layergroup_id, function(err, mapConfig) {
if (err) {
throw err;
me.authorizedBySigner = function(req, callback) {
if ( ! req.params.token || ! req.params.signer ) {
return callback(null, null); // no signer requested
}
var authorized = me.templateMaps.isAuthorized(mapConfig.obj().template, auth_token);
callback(null, authorized ? signer : null);
});
var signer = req.params.signer;
var layergroup_id = req.params.token;
var auth_token = req.params.auth_token;
var mapStore = req.app.mapStore;
if (!mapStore) {
throw new Error('Unable to retrieve map configuration token');
}
mapStore.load(layergroup_id, function(err, mapConfig) {
assert.ifError(err);
var authorized = me.templateMaps.isAuthorized(mapConfig.obj().template, auth_token);
return callback(null, authorized ? signer : null);
});
};
// Check if a request is authorized by api_key
@@ -452,11 +445,6 @@ module.exports = function(redisPool) {
if ( ! signed_by ) {
// request not authorized by signer.
// if table was given, continue to check table privacy
if ( req.params.table ) {
return null;
}
// if no signer name was given, let dbparams and
// PostgreSQL do the rest.
@@ -479,24 +467,6 @@ module.exports = function(redisPool) {
}
callback(err, true); // authorized (or error)
});
},
function getDatabase(err){
assert.ifError(err);
// NOTE: only used to get to table privacy
cartoData.getUserDBName(user, this);
},
function getPrivacy(err, dbname){
assert.ifError(err);
if (req.profiler) {
req.profiler.done('tablePrivacy_getUserDBName');
}
cartoData.getTablePrivacy(dbname, req.params.table, this);
},
function(err, privacy){
if (req.profiler) {
req.profiler.done('getTablePrivacy');
}
callback(err, privacy !== "0");
}
);
};