【问题标题】:Long living authentication token for Drive REST APIsDrive REST API 的长期身份验证令牌
【发布时间】:2017-03-16 04:58:05
【问题描述】:

有没有办法为 Drive REST API 生成或获取长期有效的身份验证令牌?

我对纯 REST API 调用(无 SDK)感兴趣,用于与单个驱动器进行通信的服务器到服务器场景(无法访问用户的驱动器)。 如果我没有错过什么,这是支持的: https://developers.google.com/identity/protocols/OAuth2ServiceAccount

但是,生成的访问令牌有效期为一个小时,我认为这是一个相当大的开销。

对于类似的功能,Dropbox 提供了长期访问令牌。 Drive 是否可以实现这一点?

【问题讨论】:

    标签: google-api google-drive-api google-oauth


    【解决方案1】:

    是的。这一切都很简单。一切尽在术语中。

    要访问资源,您的应用需要访问令牌。这些总是在 60 分钟后过期(尽管 Google 保留在未来更改它的权利)。当您获得访问令牌时,它会附带到期时间。

    要获取访问令牌,您的应用可以首先请求一个长期存在的刷新令牌。刷新令牌(几乎)是永久的,尽管用户更改密码等事件会导致它过期。您的应用程序可以将刷新令牌发布到端点,该端点将向您返回访问令牌,而无需任何用户参与。

    我已经在How do I authorise an app (web or installed) without user intervention? (canonical ?)说明了步骤

    另一种方法是创建一个服务帐户,它是您的应用“拥有”的帐户。然后,您的应用程序可以使用两条腿身份验证来提供访问权限。见https://developers.google.com/identity/protocols/OAuth2ServiceAccount

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-10
    • 2014-02-25
    • 1970-01-01
    • 2016-07-16
    • 2018-11-24
    • 2017-11-27
    • 1970-01-01
    • 2013-08-23
    相关资源
    最近更新 更多