Diff
checker
Texto
Texto
Imágenes
Documentos
Excel
Carpetas
Legal
Enterprise
Aplicación de escritorio
Precios
Iniciar sesión
Descargar Diffchecker Desktop
Comparar texto
Encuentra la diferencia entre dos archivos de texto
Herramientas
Historial
Editor live
Ocultar sin cambios
Sin ajuste de línea
Vista
Dividido
Unificado
Nivel de detalle
Inteligente
Palabra
Letra
Resaltado de sintaxis
Elegir sintaxis
Ignorar
Transformar texto
Ir al primer cambio
Editar entrada
Diffchecker Desktop
La forma más segura de usar Diffchecker. ¡Obtén la app de Diffchecker Desktop: tus diffs nunca salen de tu computadora!
Obtener Desktop
Untitled diff
Creado
hace 10 años
El diff nunca expira
Borrar
Exportar
Compartir
Explicar
6 eliminaciones
Líneas
Total
Eliminado
Caracteres
Total
Eliminado
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
83 líneas
Copiar todo
113 adiciones
Líneas
Total
Añadido
Caracteres
Total
Añadido
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
191 líneas
Copiar todo
Copiar
Copiado
Copiar
Copiado
ORIGINAL
app.js
at KibanaDir/src/app.js
MODIFIED CUSTOM
app.js
var express = require('express');
var express = require('express');
var path = require('path');
var path = require('path');
var favicon = require('serve-favicon');
var favicon = require('serve-favicon');
var requestLogger = require('./lib/requestLogger');
var requestLogger = require('./lib/requestLogger');
var auth = require('./lib/auth');
var auth = require('./lib/auth');
Copiar
Copiado
Copiar
Copiado
var xsrf = require('./lib/xsrf');
var appHeaders = require('./lib/appHeaders');
var appHeaders = require('./lib/appHeaders');
var cookieParser = require('cookie-parser');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var bodyParser = require('body-parser');
var compression = require('compression');
var compression = require('compression');
var config = require('./config');
var config = require('./config');
Copiar
Copiado
Copiar
Copiado
var xsrf = require('./lib/xsrf');
var request = require('request');
var routes = require('./routes/index');
var routes = require('./routes/index');
var proxy = require('./routes/proxy');
var proxy = require('./routes/proxy');
Copiar
Copiado
Copiar
Copiado
var app = express();
var app = express();
Copiar
Copiado
Copiar
Copiado
var parser = require('./parser.js');
// view engine setup
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.set('view engine', 'jade');
app.set('x-powered-by', false);
app.set('x-powered-by', false);
Copiar
Copiado
Copiar
Copiado
function authMiddleware (req, res, next) {
//check auth token here, if not authorized/authenticated
var subjectToken;
function getAdminToken(){
var adminToken;
request.post({
headers: {'content-type' : 'application/json'},
url: 'keystone_url/v3/auth/tokens',
rejectUnhauthorized : false,
strictSSL: false,
json: {
"auth":
{
"identity":
{
"methods": [
"password"
],
"password": {
"user": {
"domain" : {
"id":"default"
},
"name": "csa",
"password": process.env.CSA_PWD
}
}
},
"scope": {
"domain":{
"id":"default"
}
}
}
}
},
function(error, response, body){
adminToken = response.headers['x-subject-token'];
checkValidToken(adminToken);
});
}
function checkContainsHeader() {
//Check if request has an auth token
var containsHeader = 0;
if (req.headers['cookie']!=undefined) {
var cookie = (req.headers['cookie']);
if(cookie.indexOf('X-Auth-Token')!=-1) {
containsHeader=1;
subjectToken = parser(cookie);
}
}
//Redirect if it does not have an auth token
if(!containsHeader){
return res.send('Your session has timed out.Please login again');
}
else {
getAdminToken();
}
}
//Else check if user is authorized
function checkValidToken(adminToken) {
//Admin Token is not loaded in time, given an error
request.get({
headers: {
'content-type' : 'application/json',
'X-Subject-Token' : subjectToken,
'X-Auth-Token' : adminToken
},
url: 'keystone_url/v3/auth/tokens',
rejectUnhauthorized : false,
strictSSL: false,
},
function(error, response, body){
//Check authorization , admin for now
if (response.statusCode == 200) {
checkAuthorized(body);
}
else {
return res.send('Your session has timed out.Please login again');
}
});
}
function checkAuthorized(responseBody) {
var authorized = 0;
body = JSON.parse(responseBody);
roles = body.token.roles;
for ( i in roles){
if(roles[i].name == 'admin' || roles[i].name == 'monitor'){
authorized=1;
}
}
if(!authorized){
return res.send('Your session has timed out.Please login again');
}
next()
}
checkContainsHeader();
}
app.use(authMiddleware)
app.use(requestLogger());
app.use(requestLogger());
app.use(auth());
app.use(auth());
app.use(xsrf(config.kibana.xsrf_token));
app.use(xsrf(config.kibana.xsrf_token));
app.use(appHeaders());
app.use(appHeaders());
app.use(favicon(path.join(config.public_folder, 'styles', 'theme', 'elk.ico')));
app.use(favicon(path.join(config.public_folder, 'styles', 'theme', 'elk.ico')));
if (app.get('env') === 'development') {
if (app.get('env') === 'development') {
require('./dev')(app);
require('./dev')(app);
}
}
// The proxy must be set up before all the other middleware.
// The proxy must be set up before all the other middleware.
// TODO: WE might want to move the middleware to each of the individual routes
// TODO: WE might want to move the middleware to each of the individual routes
// so we don't have weird conflicts in the future.
// so we don't have weird conflicts in the future.
app.use('/elasticsearch', proxy);
app.use('/elasticsearch', proxy);
app.use(bodyParser.json());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(cookieParser());
app.use(compression());
app.use(compression());
app.use(express.static(config.public_folder));
app.use(express.static(config.public_folder));
if (config.external_plugins_folder) app.use('/plugins', express.static(config.external_plugins_folder));
if (config.external_plugins_folder) app.use('/plugins', express.static(config.external_plugins_folder));
Copiar
Copiado
Copiar
Copiado
app.use('/', routes);
app.use('/', routes);
// catch 404 and forward to error handler
// catch 404 and forward to error handler
app.use(function (req, res, next) {
app.use(function (req, res, next) {
var err = new Error('Not Found');
var err = new Error('Not Found');
err.status = 404;
err.status = 404;
next(err);
next(err);
});
});
// error handlers
// error handlers
// development error handler
// development error handler
// will print stacktrace
// will print stacktrace
if (app.get('env') === 'development') {
if (app.get('env') === 'development') {
app.use(function (err, req, res, next) {
app.use(function (err, req, res, next) {
res.status(err.status || 500);
res.status(err.status || 500);
res.render('error', {
res.render('error', {
message: err.message,
message: err.message,
error: err
error: err
});
});
});
});
}
}
// production error handler
// production error handler
// no stacktraces leaked to user
// no stacktraces leaked to user
app.use(function (err, req, res, next) {
app.use(function (err, req, res, next) {
res.status(err.status || 500);
res.status(err.status || 500);
res.render('error', {
res.render('error', {
message: err.message,
message: err.message,
error: {}
error: {}
});
});
});
});
module.exports = app;
module.exports = app;
Diferencias guardadas
Texto original
Abrir archivo
ORIGINAL app.js at KibanaDir/src/app.js var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var requestLogger = require('./lib/requestLogger'); var auth = require('./lib/auth'); var xsrf = require('./lib/xsrf'); var appHeaders = require('./lib/appHeaders'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var compression = require('compression'); var config = require('./config'); var routes = require('./routes/index'); var proxy = require('./routes/proxy'); var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); app.set('x-powered-by', false); app.use(requestLogger()); app.use(auth()); app.use(xsrf(config.kibana.xsrf_token)); app.use(appHeaders()); app.use(favicon(path.join(config.public_folder, 'styles', 'theme', 'elk.ico'))); if (app.get('env') === 'development') { require('./dev')(app); } // The proxy must be set up before all the other middleware. // TODO: WE might want to move the middleware to each of the individual routes // so we don't have weird conflicts in the future. app.use('/elasticsearch', proxy); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(compression()); app.use(express.static(config.public_folder)); if (config.external_plugins_folder) app.use('/plugins', express.static(config.external_plugins_folder)); app.use('/', routes); // catch 404 and forward to error handler app.use(function (req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); // error handlers // development error handler // will print stacktrace if (app.get('env') === 'development') { app.use(function (err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: err }); }); } // production error handler // no stacktraces leaked to user app.use(function (err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: {} }); }); module.exports = app;
Texto modificado
Abrir archivo
MODIFIED CUSTOM app.js var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var requestLogger = require('./lib/requestLogger'); var auth = require('./lib/auth'); var appHeaders = require('./lib/appHeaders'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var compression = require('compression'); var config = require('./config'); var xsrf = require('./lib/xsrf'); var request = require('request'); var routes = require('./routes/index'); var proxy = require('./routes/proxy'); var app = express(); var parser = require('./parser.js'); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); app.set('x-powered-by', false); function authMiddleware (req, res, next) { //check auth token here, if not authorized/authenticated var subjectToken; function getAdminToken(){ var adminToken; request.post({ headers: {'content-type' : 'application/json'}, url: 'keystone_url/v3/auth/tokens', rejectUnhauthorized : false, strictSSL: false, json: { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "domain" : { "id":"default" }, "name": "csa", "password": process.env.CSA_PWD } } }, "scope": { "domain":{ "id":"default" } } } } }, function(error, response, body){ adminToken = response.headers['x-subject-token']; checkValidToken(adminToken); }); } function checkContainsHeader() { //Check if request has an auth token var containsHeader = 0; if (req.headers['cookie']!=undefined) { var cookie = (req.headers['cookie']); if(cookie.indexOf('X-Auth-Token')!=-1) { containsHeader=1; subjectToken = parser(cookie); } } //Redirect if it does not have an auth token if(!containsHeader){ return res.send('Your session has timed out.Please login again'); } else { getAdminToken(); } } //Else check if user is authorized function checkValidToken(adminToken) { //Admin Token is not loaded in time, given an error request.get({ headers: { 'content-type' : 'application/json', 'X-Subject-Token' : subjectToken, 'X-Auth-Token' : adminToken }, url: 'keystone_url/v3/auth/tokens', rejectUnhauthorized : false, strictSSL: false, }, function(error, response, body){ //Check authorization , admin for now if (response.statusCode == 200) { checkAuthorized(body); } else { return res.send('Your session has timed out.Please login again'); } }); } function checkAuthorized(responseBody) { var authorized = 0; body = JSON.parse(responseBody); roles = body.token.roles; for ( i in roles){ if(roles[i].name == 'admin' || roles[i].name == 'monitor'){ authorized=1; } } if(!authorized){ return res.send('Your session has timed out.Please login again'); } next() } checkContainsHeader(); } app.use(authMiddleware) app.use(requestLogger()); app.use(auth()); app.use(xsrf(config.kibana.xsrf_token)); app.use(appHeaders()); app.use(favicon(path.join(config.public_folder, 'styles', 'theme', 'elk.ico'))); if (app.get('env') === 'development') { require('./dev')(app); } // The proxy must be set up before all the other middleware. // TODO: WE might want to move the middleware to each of the individual routes // so we don't have weird conflicts in the future. app.use('/elasticsearch', proxy); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(compression()); app.use(express.static(config.public_folder)); if (config.external_plugins_folder) app.use('/plugins', express.static(config.external_plugins_folder)); app.use('/', routes); // catch 404 and forward to error handler app.use(function (req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); // error handlers // development error handler // will print stacktrace if (app.get('env') === 'development') { app.use(function (err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: err }); }); } // production error handler // no stacktraces leaked to user app.use(function (err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: {} }); }); module.exports = app;
Encontrar la diferencia