问题:我想验证从lambda到Django的响应
总结:我的Django应用程序使用一些url调用AWS Lambda,lambda执行处理,几秒钟后应该将结果返回给Django。现在,我如何确保lambda的响应是有效的,并且不是有人试图调用我的django端点?
设定:
Django在nginx + uwsgi背后的EC2机器上运行
Lambda使用
从Django调用boto3.client('lambda').invoke(
FunctionName="my-lambda-name",
InvocationType='Event',
Payload=json.dumps(payload)
))
Lambda代码:
def handler(event, context):
data = event['data']
result = get_my_result(data)
requests.post('https://www.example.com/foo/bar', data=json.dumps(result))
我正在考虑使用Django REST框架,但这并不像我有一个特定的用户调用lambda,所以我认为它并不完全符合目的。
我从来没有在Django中做过这种第三方服务认证,不知道最优雅(+安全和高效)的方法是什么。
感谢您的帮助!