如何以与我使用gcloud CLI验证相同的方式从Java验证google云API



使用gcloud命令行,我可以执行以下操作

gcloud builds describe 74f859e9-d621-4632-b6dd-XXXXXXXX

然而,我希望使用Java中的Google Cloud API,现在我知道GCloud CLI不是使用服务帐户,而是使用用户帐户。我如何使用Google Cloud Java API的相同身份验证来执行相同的操作来描述构建?

Google提供了不错的文档,解释了如何在其所有服务中使用其SDK(客户端库(。

以下是Cloud Build客户端库文档。选择你喜欢的语言,然后出发。

如果你不能使用Google的SDK,那么你可以直接针对底层API编写代码。谷歌的API资源管理器是导航谷歌所有服务的绝佳工具。这里是Cloud Build和projects.builds.get,我认为(!?(映射到gcloud build describe。您可以通过运行gcloud builds describe --log-http来确认进行了哪些底层调用。

不访问用户数据(用户帐户拥有的数据(的代码应作为服务帐户运行。访问用户数据或代表用户操作的代码应该为用户使用OAuth流,并使用OAuthClient ID。这就是gcloud所做的。作为一个代表用户运行的程序,它使用常规的OAuth流对用户进行身份验证,但它使用OAuth客户端ID对隐藏的支持项目进行操作。您的代码可能只应作为服务帐户运行。

最新更新