有没有办法为Drive REST API生成或获取长期生存身份验证令牌?
我对用于与单个驱动器通信的服务器到服务器方案的纯REST API调用(无SDK)感兴趣(无法访问用户的驱动器)。 如果我没有遗漏某些内容,则支持: https://developers.google.com/identity/protocols/OAuth2ServiceAccount
但是,生成的访问令牌有效一小时,我认为这是一个很大的开销。
对于类似功能,Dropbox提供长期访问令牌。 这有可能在Drive?
答案 0 :(得分:1)
是。这一切都很简单。这一切都在术语中。
要访问资源,您的应用需要访问令牌。它们总是在60分钟后过期(尽管Google保留在未来更改它的权利)。当您获得访问令牌时,它将带有到期时间。
要获取访问令牌,您的应用可以首先请求长期刷新令牌。刷新令牌(几乎)是永久性的,但是诸如用户更改其密码之类的事件将导致其过期。您的应用可以将刷新令牌发布到端点,该端点将返回您的访问令牌而无需任何用户参与。
我已在How do I authorise an app (web or installed) without user intervention? (canonical ?)
详细说明了这些步骤另一种方法是创建一个服务帐户,这是一个帐户"拥有"通过您的应用程序然后,您的应用可以使用双腿身份验证来提供访问权限。见https://developers.google.com/identity/protocols/OAuth2ServiceAccount