I built a lambda@edge that I use to authenticate calls on viewer request. If a request is rejected I want to play back as few information as possible to the caller and therefore want to remove some headers indicating I am using AWS.
I found a way to override headers simply by returning a new value for that header, see server in the example.
But how can I remove the x-amz-cf-id or x-cache headers to not indicate the backend is running on AWS?
import json
def lambda_handler(event, context):
response = event["Records"][0]["cf"]["request"]
headers = response["headers"]
#check authentication... omitted
#....
response = {
'status': status,
'statusDescription': status_desc,
'headers': {
'server': [
{
'key': 'server',
'value': 'x'
}
]
}
}
return response