如何解决AWS SAM Lambda授权者互联网访问
只需添加到aws sam cli hello世界示例,然后尝试添加lambda授权者:
MyAuthFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: ./python
Handler: auth/authorizer.lambda_handler
Runtime: python3.8
我的lambda需要从租户那里获取公钥,因此我需要外部的get呼叫来获取它:
def lambda_handler(event,context):
...
print("getting pub key from",'https://%s/pem' % os.environ['AUTH_DOMAIN'])
pub_key = requests.get('https://%s/pem' % os.environ['AUTH_DOMAIN'])
...
每次我碰到lambda都会超时:
Function 'MyAuthFunction' timed out after 3 seconds
我在这里想念什么吗?我觉得自己的Lambda无法访问互联网
解决方法
您应该将Timeout的时间从默认3秒增加到函数正常运行所需的时间(最多15分钟)。
例如:
MyAuthFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: ./python
Handler: auth/authorizer.lambda_handler
Runtime: python3.8
Timeout: 60 # one minute
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。