diff --git a/src/plugins/elasticsearch/lib/__tests__/call_with_request.js b/src/plugins/elasticsearch/lib/__tests__/call_with_request.js index ac487e91bce0c..cfe9f43da4361 100644 --- a/src/plugins/elasticsearch/lib/__tests__/call_with_request.js +++ b/src/plugins/elasticsearch/lib/__tests__/call_with_request.js @@ -1,4 +1,5 @@ import expect from 'expect.js'; +import { omit } from 'lodash'; import callWithRequest from '../call_with_request'; describe('call_with_request', () => { @@ -13,16 +14,17 @@ describe('call_with_request', () => { }; }); - it ('passes through all headers', () => { + it ('passes through all headers except origin', () => { const mockRequest = { headers: { authorization: 'Basic QWxhZGRpbjpPcGVuU2VzYW1l', - 'kbn-version': '4.6.0' + 'kbn-version': '4.6.0', + origin: 'http://localhost:5601/' } }; return callWithRequest(mockClient)(mockRequest, 'search') .then(() => { - expect(mockClient.params.headers).to.be(mockRequest.headers); + expect(mockClient.params.headers).to.eql(omit(mockRequest.headers, 'origin')); }); }); }); diff --git a/src/plugins/elasticsearch/lib/call_with_request.js b/src/plugins/elasticsearch/lib/call_with_request.js index a2026a86edf83..5171abdff30d9 100644 --- a/src/plugins/elasticsearch/lib/call_with_request.js +++ b/src/plugins/elasticsearch/lib/call_with_request.js @@ -4,9 +4,11 @@ const Boom = require('boom'); const getBasicAuthRealm = require('./get_basic_auth_realm'); const toPath = require('lodash/internal/toPath'); +const PASSTHRU_HEADERS_BLACKLIST = [ 'origin' ]; + module.exports = (client) => { return (req, endpoint, params = {}) => { - _.set(params, 'headers', req.headers); + _.set(params, 'headers', _.omit(req.headers, PASSTHRU_HEADERS_BLACKLIST)); const path = toPath(endpoint); const api = _.get(client, path); let apiContext = _.get(client, path.slice(0, -1));