我一直在努力寻找一种与Google的API(特别是Compute Engine API)进行互动的方法,而无需在每次我需要重新授权Google时通过同意屏幕进行用户授权。
请求将在没有用户在场时进行,因此无需通过同意屏幕进行授权是必须的。
我正在使用Go和Go API客户端库。
任何人都可以解释一种实现我需要的方法吗?
答案 0 :(得分:2)
您应该查看服务帐户。他们利用公钥/私钥对授权调用Google API。
Google Developers有一个非常好的文档,解释了服务帐户的工作原理:
https://developers.google.com/accounts/docs/OAuth2ServiceAccount
以下是如何生成服务帐户:
https://developers.google.com/console/help/new/#serviceaccounts
您还可以在第一个文档中找到代码示例,但遗憾的是不在Go中。 但是,我在这里发现了一些评论:
https://code.google.com/p/google-api-go-client/wiki/GettingStarted
希望它有所帮助。