在 AWS Lambda Chalice 中为 JSON 个文件设置环境变量
Setting environment variable for JSON files in AWS Lambda Chalice
我正在通过环境变量 GOOGLE_APPLICATION_CREDENTIALS
使用一些 Kaggle project. Using Python library for BigQuery on my laptop, I can successfully download the dataset after passing the authentication credential。如文档所述,此环境变量指向包含凭据的 JSON 文件的位置。
现在我想 运行 在 Chalice Amazon Lambda using Chalice. I know there's an option for environment variable 上使用此代码,但我不知道如何在 Chalice 应用程序中包含 JSON 文件并传递其位置作为环境变量。此外,我不确定在 Chalice 中将凭据作为 JSON 文件传递是否安全。
有没有人知道如何将 Google 凭据作为环境变量传递给 Chalice 应用程序?
您可以将 JSON 文件的内容作为环境变量嵌入到 Chalice 中,然后使用 GCP Client.from_service_account_info()
方法从内存而非文件中加载凭据。不建议这样做,因为您的私人 GCP 凭据可能会提交给源代码管理。
我可以建议您采用除环境变量之外的其他方法来传递您的 GCP 凭据。您可以在需要时将此 JSON 对象存储在 AWS System Manager Parameter Store as a secure parameter. Your AWS Lambda function could then use the boto3 ssm.get_parameter()
方法中。
您也可以考虑将 AWS Secrets Manager 作为另一个类似的替代方案。
我正在通过环境变量 GOOGLE_APPLICATION_CREDENTIALS
使用一些 Kaggle project. Using Python library for BigQuery on my laptop, I can successfully download the dataset after passing the authentication credential。如文档所述,此环境变量指向包含凭据的 JSON 文件的位置。
现在我想 运行 在 Chalice Amazon Lambda using Chalice. I know there's an option for environment variable 上使用此代码,但我不知道如何在 Chalice 应用程序中包含 JSON 文件并传递其位置作为环境变量。此外,我不确定在 Chalice 中将凭据作为 JSON 文件传递是否安全。
有没有人知道如何将 Google 凭据作为环境变量传递给 Chalice 应用程序?
您可以将 JSON 文件的内容作为环境变量嵌入到 Chalice 中,然后使用 GCP Client.from_service_account_info()
方法从内存而非文件中加载凭据。不建议这样做,因为您的私人 GCP 凭据可能会提交给源代码管理。
我可以建议您采用除环境变量之外的其他方法来传递您的 GCP 凭据。您可以在需要时将此 JSON 对象存储在 AWS System Manager Parameter Store as a secure parameter. Your AWS Lambda function could then use the boto3 ssm.get_parameter()
方法中。
您也可以考虑将 AWS Secrets Manager 作为另一个类似的替代方案。