Google Compute Engine和默认应用程序凭据

时间:2018-12-24 21:24:07

标签: google-cloud-platform google-compute-engine

在Google Compute Engine上,是否已经存在Google应用程序默认凭据?还是有必要将它们添加为环境变量?

1 个答案:

答案 0 :(得分:2)

对于Compute Engine,如果未指定环境变量GOOGLE_APPLICATION_CREDENTIALS,则默认服务帐户将提供凭据。

Google云应用程序默认凭据(ADC)不是凭据。 ADC是一种定位Google Cloud Service帐户凭据的策略。

如果设置了环境变量GOOGLE_APPLICATION_CREDENTIALS,则ADC将使用该变量指向的文件名来获得服务帐户凭据。此文件是Json格式的Google Cloud Service帐户凭据文件。以前的P12(PFX)证书已弃用。

如果未设置环境变量,则当应用程序在Compute Engine,App Engine,Kubernetes Engine或Cloud Functions上运行时,将使用默认服务帐户作为凭据。

如果前两个步骤未能找到有效的凭据,ADC将失败,并发生错误。

这里是Python中的一个示例,它将为Compute Engine上的Google Cloud Storage创建(定位)凭据。首先,将检查环境变量,如果未设置,将使用默认的Compute Engine服务帐户凭据。

from google.auth import compute_engine
from google.cloud import storage

credentials = compute_engine.Credentials()
client = storage.Client(credentials=credentials, project=project)

我写了几本articles,涵盖了Google Cloud凭据。