Asp.net web api 如何验证GCP发布/订阅推送订阅令牌?
我们是新加入GCP的。我们已经设置了一个发布/子队列,该队列具有对外部webhook(ASP.NET Web API)的推送订阅,并启用了身份验证。这在HTTP post调用中为我们提供了一个承载令牌 我不清楚是否:Asp.net web api 如何验证GCP发布/订阅推送订阅令牌?,asp.net-web-api,google-cloud-platform,jwt,openid-connect,google-cloud-pubsub,Asp.net Web Api,Google Cloud Platform,Jwt,Openid Connect,Google Cloud Pubsub,我们是新加入GCP的。我们已经设置了一个发布/子队列,该队列具有对外部webhook(ASP.NET Web API)的推送订阅,并启用了身份验证。这在HTTP post调用中为我们提供了一个承载令牌 我不清楚是否: A.我需要首先使用服务帐户.json文件请求令牌,并将其与发布/订阅在webhook中发送的承载令牌进行比较 B.我只需要使用GoogleJsonWebSignature验证来自pubsub的令牌。ValidateAsync(令牌,设置) 无论哪种可能性都有效,我只是不确定其安
- A.我需要首先使用服务帐户
文件请求令牌,并将其与发布/订阅在webhook中发送的承载令牌进行比较李>.json
- B.我只需要使用
GoogleJsonWebSignature验证来自pubsub的令牌。ValidateAsync(令牌,设置)
无论哪种可能性都有效,我只是不确定其安全含义。选项B很简单,但它真的安全吗?无法对此进行篡改吗?您甚至可以使用Microsoft的库来验证令牌。在给定的情况下,请使用以下代码:
app.UseJwtBearerAuthentication(new JwtBearerOptions()
{
Audience = "", // The audience you configured the token to have
Authority = "https://accounts.google.com",
AutomaticAuthenticate = true
});
Authorization:Bearer
是Google OAuth(OIDC)身份令牌。这个链接向您展示了如何验证:谷歌在这个主题上有更多的页面、示例代码等。实际上我就是这么做的,并遇到了一个新问题。见: