具有非互动式服务帐户的OAuth

时间:2020-04-06 20:10:24

标签: oauth-2.0

授权码授予类型仅适用于交互式帐户吗?我正在使用一个似乎不支持客户端凭据授予的API,除非我退回到基本身份验证(用户:令牌),否则我不知道我们如何为(对我们来说)是服务帐户的用户实现此目的

我苦苦挣扎的是授权码的返回。如果我点击生成的URL来请求身份验证代码,则会收到一个对话框,要求我允许/验证访问权限,并通过接受将我返回到带有代码参数的redirect_uri。这需要人与人之间的互动,而在我们的场景中我们是不会有的。身份验证代码不应长期存在,因此我不能仅将其保存以备将来使用。

1 个答案:

答案 0 :(得分:0)

获得授权码的第一部分需要人工完成。

授权码是短暂的,因此您不希望存储授权码供以后使用。

非常感谢,您可以使用该授权码来交换访问令牌和刷新令牌。尽管访问令牌通常在一个小时左右到期,但刷新令牌通常会保持活动状态很长时间(这可能因API而异)。目前正在使用的API不会在过期时记录下来,它可能永远也不会过期。

我们只是要注意,如果刷新代码失败/过期,那么我们应该手动转到授权URL以获取新的身份验证代码,我们可以将其换成 new 访问令牌和刷新令牌。我们将安全地保存刷新令牌,并将其插入自动化中。自动化不会进行authorization_code个授予类型调用(我们仍将继续进行手动操作),并且只会进行refresh_token个授予类型调用(那些可以自动执行)以及实际执行的调用一旦有了新的有效访问令牌,就可以使用API​​。

相关问题