isolated certificate related logic from public cloud server
This commit is contained in:
@@ -40,7 +40,7 @@ exports.setupEnvironment = function () {
|
|||||||
REDIS_HOST = "localhost";
|
REDIS_HOST = "localhost";
|
||||||
REDIS_PORT = "6379";
|
REDIS_PORT = "6379";
|
||||||
REDIS_PASSWORD = "";
|
REDIS_PASSWORD = "";
|
||||||
EXTERNAL_SERVER_ADDRESS = "www.strawmanbobi.com";
|
EXTERNAL_SERVER_ADDRESS = "192.168.137.128";
|
||||||
EXTERNAL_SERVER_PORT = "8300"
|
EXTERNAL_SERVER_PORT = "8300"
|
||||||
} else if (enums.APP_USERDEBUG_MODE == env) {
|
} else if (enums.APP_USERDEBUG_MODE == env) {
|
||||||
MYSQL_DB_SERVER_ADDRESS = "localhost";
|
MYSQL_DB_SERVER_ADDRESS = "localhost";
|
||||||
|
|||||||
@@ -1,87 +0,0 @@
|
|||||||
/**
|
|
||||||
* Created by strawmanbobi
|
|
||||||
* 2016-11-12
|
|
||||||
*/
|
|
||||||
|
|
||||||
// global inclusion
|
|
||||||
var orm = require('orm');
|
|
||||||
var dbOrm = require('../mini_poem/db/mysql/mysql_connection').mysqlDB;
|
|
||||||
var logger = require('../mini_poem/logging/logger4js').helper;
|
|
||||||
|
|
||||||
// local inclusion
|
|
||||||
var ErrorCode = require('../constants/error_code');
|
|
||||||
var errorCode = new ErrorCode();
|
|
||||||
|
|
||||||
var Admin = dbOrm.define('admin',
|
|
||||||
{
|
|
||||||
id: Number,
|
|
||||||
user_name: String,
|
|
||||||
password: String,
|
|
||||||
permissions: String,
|
|
||||||
admin_type: String
|
|
||||||
},
|
|
||||||
{
|
|
||||||
cache: false
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
Admin.findAdminsByConditions = function(conditions, from, count, sortField, callback) {
|
|
||||||
if("id" == sortField && 0 != from) {
|
|
||||||
conditions.id = orm.lt(from);
|
|
||||||
Admin.find(conditions).limit(parseInt(count)).orderRaw("?? ASC", [sortField])
|
|
||||||
.run(function (error, admins) {
|
|
||||||
if (error) {
|
|
||||||
logger.error("find admin error : " + error);
|
|
||||||
callback(errorCode.FAILED, null);
|
|
||||||
} else {
|
|
||||||
logger.info("find admin successfully, length of admins = " + admins.length);
|
|
||||||
callback(errorCode.SUCCESS, admins);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
Admin.find(conditions).limit(parseInt(count)).offset(parseInt(from)).orderRaw("?? ASC", [sortField])
|
|
||||||
.run(function (error, admins) {
|
|
||||||
if (error) {
|
|
||||||
logger.error("find admin error : " + error);
|
|
||||||
callback(errorCode.FAILED, null);
|
|
||||||
} else {
|
|
||||||
logger.info("find admin successfully, length of admins = " + admins.length);
|
|
||||||
callback(errorCode.SUCCESS, admins);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Admin.updatePasswordByID = function(adminID, password, callback) {
|
|
||||||
Admin.get(adminID, function(error, admin) {
|
|
||||||
if (error) {
|
|
||||||
logger.error("get admin failed in update password : " + error);
|
|
||||||
callback(errorCode.SUCCESS, null);
|
|
||||||
} else {
|
|
||||||
admin.password = password;
|
|
||||||
admin.save(function(error, savedAdmin) {
|
|
||||||
if (error) {
|
|
||||||
logger.error("save admin failed in update password : " + error);
|
|
||||||
callback(errorCode.SUCCESS, null);
|
|
||||||
} else {
|
|
||||||
logger.info("save admin successfully in update password");
|
|
||||||
callback(errorCode.SUCCESS, savedAdmin);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
Admin.getAdminByID = function(adminID, callback) {
|
|
||||||
Admin.get(adminID, function(error, admin) {
|
|
||||||
if (error) {
|
|
||||||
logger.error("get admin failed : " + error);
|
|
||||||
callback(errorCode.FAILED, null);
|
|
||||||
} else {
|
|
||||||
logger.info("get admin successfully");
|
|
||||||
callback(errorCode.SUCCESS, admin);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
module.exports = Admin;
|
|
||||||
@@ -6,8 +6,6 @@
|
|||||||
var app = require('../irext_console.js');
|
var app = require('../irext_console.js');
|
||||||
var certificateService = require('../services/certificate_service.js');
|
var certificateService = require('../services/certificate_service.js');
|
||||||
|
|
||||||
app.get('/irext/certificate/confirm_pw', certificateService.confirmPassword);
|
|
||||||
|
|
||||||
app.post('/irext/certificate/admin_login', certificateService.adminLogin);
|
app.post('/irext/certificate/admin_login', certificateService.adminLogin);
|
||||||
app.post('/irext/certificate/token_verify', certificateService.verifyToken);
|
app.post('/irext/certificate/token_verify', certificateService.verifyToken);
|
||||||
app.post('/irext/certificate/change_pw', certificateService.changePassword);
|
app.post('/irext/certificate/change_pw', certificateService.changePassword);
|
||||||
@@ -69,33 +69,12 @@ exports.verifyToken = function (req, res) {
|
|||||||
exports.changePassword = function (req, res) {
|
exports.changePassword = function (req, res) {
|
||||||
var bodyParam = req.body;
|
var bodyParam = req.body;
|
||||||
var userName = bodyParam.user_name;
|
var userName = bodyParam.user_name;
|
||||||
|
var callbackURL = bodyParam.callback_url;
|
||||||
|
|
||||||
var serviceResponse = new ServiceResponse();
|
var serviceResponse = new ServiceResponse();
|
||||||
certificateLogic.sendChangePwMailWorkUnit(userName, function (changePWErr) {
|
certificateLogic.sendChangePwMailWorkUnit(userName, callbackURL, function (changePWErr) {
|
||||||
serviceResponse.status = changePWErr;
|
serviceResponse.status = changePWErr;
|
||||||
res.send(serviceResponse);
|
res.send(serviceResponse);
|
||||||
res.end();
|
res.end();
|
||||||
});
|
});
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
* function : Confirm password change
|
|
||||||
* parameter : id of Adminstrator
|
|
||||||
* new password fetch ID
|
|
||||||
* return : redirection to irext data center
|
|
||||||
*/
|
|
||||||
exports.confirmPassword = function (req, res) {
|
|
||||||
var id = req.query.id;
|
|
||||||
var fetchKey = req.query.key;
|
|
||||||
var password = req.query.password;
|
|
||||||
|
|
||||||
var serviceResponse = new ServiceResponse();
|
|
||||||
certificateLogic.confirmPasswordWorkUnit(id, fetchKey, function (confirmPWErr) {
|
|
||||||
if (errorCode.SUCCESS.code == confirmPWErr.code) {
|
|
||||||
res.redirect("http://"+MAIN_SERVER_ADDRESS+":"+MAIN_SERVER_PORT+"/error/confirm_pw.html?password="+
|
|
||||||
password+"&result=1");
|
|
||||||
} else {
|
|
||||||
res.redirect("http://"+MAIN_SERVER_ADDRESS+":"+MAIN_SERVER_PORT+"/error/confirm_pw.html?result=0");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
@@ -69,7 +69,8 @@ function changePassword() {
|
|||||||
url: "/irext/certificate/change_pw",
|
url: "/irext/certificate/change_pw",
|
||||||
type: "POST",
|
type: "POST",
|
||||||
data: {
|
data: {
|
||||||
user_name : userName
|
user_name : userName,
|
||||||
|
callback_url : window.location.hostname
|
||||||
},
|
},
|
||||||
timeout: 20000,
|
timeout: 20000,
|
||||||
success: function (response) {
|
success: function (response) {
|
||||||
|
|||||||
@@ -3,12 +3,10 @@
|
|||||||
* 2016-11-27
|
* 2016-11-27
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var Constants = require('../mini_poem/configuration/constants');
|
require('../mini_poem/configuration/constants');
|
||||||
|
|
||||||
var Admin = require('../model/admin_dao.js');
|
|
||||||
var AdminAuth = require('../authority/admin_auth.js');
|
var AdminAuth = require('../authority/admin_auth.js');
|
||||||
var MD5 = require('../mini_poem/crypto/md5.js');
|
var MD5 = require('../mini_poem/crypto/md5.js');
|
||||||
var StringUtils = require('../mini_poem/utils/string_utils.js');
|
|
||||||
var RequestSender = require('../mini_poem/http/request.js');
|
var RequestSender = require('../mini_poem/http/request.js');
|
||||||
|
|
||||||
var Enums = require('../constants/enums.js');
|
var Enums = require('../constants/enums.js');
|
||||||
@@ -98,7 +96,7 @@ exports.verifyTokenWithPermissionWorkUnit = function (id, token, permissions, ca
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
exports.sendChangePwMailWorkUnit = function (userName, callback) {
|
exports.sendChangePwMailWorkUnit = function (userName, callbackURL, callback) {
|
||||||
var queryParams = new Map();
|
var queryParams = new Map();
|
||||||
|
|
||||||
var requestSender =
|
var requestSender =
|
||||||
@@ -108,7 +106,8 @@ exports.sendChangePwMailWorkUnit = function (userName, callback) {
|
|||||||
queryParams);
|
queryParams);
|
||||||
|
|
||||||
var userInfo = {
|
var userInfo = {
|
||||||
user_name : userName
|
user_name : userName,
|
||||||
|
callback_url :callbackURL
|
||||||
};
|
};
|
||||||
requestSender.sendPostRequest(userInfo,
|
requestSender.sendPostRequest(userInfo,
|
||||||
function(changePwRequestErr, changePwResponse) {
|
function(changePwRequestErr, changePwResponse) {
|
||||||
@@ -123,18 +122,4 @@ exports.sendChangePwMailWorkUnit = function (userName, callback) {
|
|||||||
callback(errorCode.FAILED);
|
callback(errorCode.FAILED);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
|
||||||
|
|
||||||
exports.confirmPasswordWorkUnit = function(id, fetchKey, callback) {
|
|
||||||
adminAuth.getAuthInfo(fetchKey, function(getAuthInfoErr, result) {
|
|
||||||
if (errorCode.SUCCESS.code == getAuthInfoErr.code) {
|
|
||||||
logger.info("succeeded to fetch ciphered password value " + result);
|
|
||||||
Admin.updatePasswordByID(id, result, function(updateAdminErr, updatedAdmin) {
|
|
||||||
callback(updateAdminErr);
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
logger.info("failed to fetch ciphered password value");
|
|
||||||
callback(errorCode.FAILED);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
@@ -18,7 +18,6 @@ var IRProtocol = require('../model/ir_protocol_dao.js');
|
|||||||
var City = require('../model/city_dao.js');
|
var City = require('../model/city_dao.js');
|
||||||
var RemoteIndex = require('../model/remote_index_dao.js');
|
var RemoteIndex = require('../model/remote_index_dao.js');
|
||||||
var StbOperator = require('../model/stb_operator_dao.js');
|
var StbOperator = require('../model/stb_operator_dao.js');
|
||||||
var Admin = require('../model/admin_dao.js');
|
|
||||||
|
|
||||||
var RequestSender = require('../mini_poem/http/request.js');
|
var RequestSender = require('../mini_poem/http/request.js');
|
||||||
var Map = require('../mini_poem/mem/map.js');
|
var Map = require('../mini_poem/mem/map.js');
|
||||||
|
|||||||
Reference in New Issue
Block a user