Python AWS Lambda 证书
问题描述
如何向 Python3 AWS Lambda 函数使用的信任库添加额外的 CA(证书颁发机构)?
How do I add an additional CA (certificate authority) to the trust store used by my Python3 AWS Lambda function?
解决方案
如果你只需要一个CA,那么在linux中使用以下命令获取你的crt文件并将其编码为pem:
If you only need a single CA, then get your crt file and encode it into a pem using the following command in linux:
openssl x509 -text -in "{your CA}.crt" > cacert.pem
openssl x509 -text -in "{your CA}.crt" > cacert.pem
如果您需要将 CA 添加到默认 CA 包,请将 python3.8/site-packages/certifi/cacert.pem 复制到您的 lambda 文件夹.然后为每个 crt 运行这个命令:
If you need to add CA's to the default CA bundle, then copy python3.8/site-packages/certifi/cacert.pem to your lambda folder. Then run this command for each crt:
openssl x509 -text -in "{your CA}.crt" >> cacert.pem
openssl x509 -text -in "{your CA}.crt" >> cacert.pem
创建 pem 文件后,部署您的 lambda,并将 REQUESTS_CA_BUNDLE 环境变量设置为 /var/task/cacert.pem.
After creating the pem file, deploy your lambda with the REQUESTS_CA_BUNDLE environment variable set to /var/task/cacert.pem.
/var/task 是 AWS Lambda 将压缩代码提取到的位置.
/var/task is where AWS Lambda extracts your zipped up code to.
相关文章