UNPKG

serverless-fix-apigw-int

Version:

Fix to remove header mapping in integration request with Authorization header validation

35 lines (28 loc) 1.13 kB
'use strict'; const _ = require('lodash'); const Class = require('class.extend'); module.exports = Class.extend({ init: function(serverless, opts) { this._serverless = serverless; this._opts = opts; this.hooks = { 'after:package:compileEvents': this.removeAuthHeaders.bind(this), }; }, removeAuthHeaders: function() { const template = this._serverless.service.provider.compiledCloudFormationTemplate; let self = this; Object.keys(template.Resources).forEach(function(key){ if (template.Resources[key]['Type'] == 'AWS::ApiGateway::Method') { let method = template.Resources[key]; if(method.Properties && method.Properties.Integration && method.Properties.Integration.RequestParameters){ let requestParams = method.Properties.Integration.RequestParameters; if(requestParams['integration.request.header.Authorization']){ delete requestParams['integration.request.header.Authorization']; self._serverless.cli.log('Removed Authorization header from integration request'); } } } }) }, });