在Django中验证AWS Lambda

时间:2018-03-07 11:21:23

标签: python django amazon-web-services authentication aws-lambda

问题:我想验证从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中做过这种第三方服务认证,不知道最优雅(+安全和高效)的方法是什么。

感谢您的帮助!

0 个答案:

没有答案