猿问

如何验证来自 HTTP 请求的 Google Cloud Task 令牌?

我正在尝试使用 HTTP Target实现Google Cloud Task 队列。我已经使用 App Engine 的队列,但在迁移到 Cloud Run 时,我希望使用相同的队列系统。我已经实现了调度程序代码,但与 App Engine 不同,我不能信任标头,所以我知道我需要使用 auth 令牌验证请求,但我正在努力解决这个问题?我也在做很多假设。我正在尝试用 PHP 构建它,所以如果可能的话,最好在 PHP 中看到一个示例,但即使只是流程的一些 Psuedo 代码也会很有用。

我的第一个假设是最好使用 OIDC 代币?基于:

如果您在目标服务中编写自己的代码来验证令牌,则应使用 OIDC 令牌。有关这意味着什么的更多信息,请参阅 OpenID Connect,尤其是验证 ID 令牌。

我已经阅读了此链接的标题,但老实说,它并没有让我清楚很多。

其次,令牌将在 Authorization 标头中作为Bearer <token>?

第三,我想我应该使用包之类的东西firebase/php-jwt来解码令牌。但是我该如何准确解码呢?我的服务json文件只有私钥,需要去云控制台抓取公钥吗?一旦我这样做了,我需要查看令牌的特定部分来验证请求吗?还是我可以将其解码为有效的 JSON 就足够了?

每次我阅读一些关于如何做到这一点的文档时,我都认为我离答案越来越近了,但我现在所花的时间比我想要的要长得多,而且当谷歌文档似乎很少只是指出我需要做什么。


慕哥9229398
浏览 88回答 0
0回答
随时随地看视频慕课网APP
我要回答