Python 如何在AppEngine上添加GoogleAppClient的凭据

Python 如何在AppEngine上添加GoogleAppClient的凭据,python,google-app-engine,flask,google-cloud-platform,credentials,Python,Google App Engine,Flask,Google Cloud Platform,Credentials,我通过以下方式使用Python Google API客户端。通过下载凭证JSON并运行export GOOGLE_APPLICATION_CREDENTIALS=[PATH],我可以在本地运行API。现在,我想部署使用API进行AppEngine的应用程序。我怎样才能做到?我是否必须在AppEngine机器上下载JSON并通过app.yaml运行导出 将JSON文件放在应用程序目录中,它将作为应用程序的一部分部署到GAE。然后,您可以在应用程序中仅使用相对于your app.yaml文件的文件路

我通过以下方式使用Python Google API客户端。通过下载凭证JSON并运行export GOOGLE_APPLICATION_CREDENTIALS=[PATH],我可以在本地运行API。现在,我想部署使用API进行AppEngine的应用程序。我怎样才能做到?我是否必须在AppEngine机器上下载JSON并通过app.yaml运行导出

将JSON文件放在应用程序目录中,它将作为应用程序的一部分部署到GAE。然后,您可以在应用程序中仅使用相对于your app.yaml文件的文件路径引用它。最简单的方法是将它放在app.yaml文件旁边,只使用文件名引用它,而不使用文件路径

引用它的确切方式可能取决于应用程序使用的GAE环境和运行时(您没有提到),通过app.yaml导出GOOGLE_应用程序_凭据可能是正确的


您可能希望检查应用程序的处理程序,并确保不会意外地使用JSON文件响应精心编制的外部请求-您可能不希望该文件服务于外部请求:

将JSON与repo一起推送是否太危险?我想你在推GitHub的时候忽略了它?@alpaca-Dan的回答是正确的。但是,我不建议在AppEngine中存储或使用凭据文件。相反,请为App Engine服务帐户分配正确的权限。您编写的代码使用ADC-应用程序默认凭据,如果未使用环境变量GOOGLE_Application_Credentials,该凭据将自动使用App Engine服务帐户。