Cómo configurar el mecanismo de autorización en línea con boto3
Estoy usando boto3 en aws lambda para fecth objeto en S3 ubicado en la región de Frankfurt.
v4 es necesario. de lo contrario, se devolverá el siguiente error
"errorMessage": "An error occurred (InvalidRequest) when calling
the GetObject operation: The authorization mechanism you have
provided is not supported. Please use AWS4-HMAC-SHA256."
Formas conocidas de configurar signature_versionhttp://boto3.readthedocs.org/en/latest/guide/configuration.html
Pero como estoy usando AWS lambda, no tengo acceso a los perfiles de configuración subyacentes
El código de mi función lambda de AWS
from __future__ import print_function
import boto3
def lambda_handler (event, context):
input_file_bucket = event["Records"][0]["s3"]["bucket"]["name"]
input_file_key = event["Records"][0]["s3"]["object"]["key"]
input_file_name = input_file_bucket+"/"+input_file_key
s3=boto3.resource("s3")
obj = s3.Object(bucket_name=input_file_bucket, key=input_file_key)
response = obj.get()
return event #echo first key valuesdf
¿Es posible configurar signature_version dentro de este código? use Session por ejemplo. ¿O hay alguna solución al respecto?