Webhook 的 Spring Boot 身份验证 post
Springboot authentication for a webhook post
我需要在我的后端 api 服务器上对来自第三方集成的 Webhook post 进行身份验证。我唯一可以定义的是他们将调用的端点 url。一旦他们必须注册并且该过程需要 3 天,它就不能是动态的。而且我们使用多租户解决方案,所以我们必须在每次调用时使用不同的模式进行身份验证。
所以问题是我必须为此 webhook 创建一个过滤器,这样我就可以通过 post 正文的 json 中包含的值对其进行身份验证。
所以我定义了一个 WebSecurityConfigurerAdapter 并添加了一个 AbstractPreAuthenticatedProcessingFilter,这样我就可以拦截请求,读取 json 正文中的值并使用适当的凭据进行身份验证。
我按照本教程进行操作 Reading HttpServletRequest Multiple Times in Spring 因此我可以从请求中读取 InputStream 而无需删除它。
所以我的问题有两个。
1:是否有 better/easy 方法可以存档此结果?
2:我猜本教程遗漏了一些东西,因为我在尝试读取请求时在 servlet 中得到了空指针(同样,在我已经读取了过滤器之后)。
任何猜测将不胜感激,提前致谢。
我们可以知道哪个第 3 方服务吗?
PayPal/Stripe 例如已经有文档解释如何验证数据。
如果您可以将 metadata/custom 字段添加到 webhook,例如您可以对其进行签名。
就检查 signature/verifying 而言,为什么不在 @Contoller=>@Service 中执行此操作?
我需要在我的后端 api 服务器上对来自第三方集成的 Webhook post 进行身份验证。我唯一可以定义的是他们将调用的端点 url。一旦他们必须注册并且该过程需要 3 天,它就不能是动态的。而且我们使用多租户解决方案,所以我们必须在每次调用时使用不同的模式进行身份验证。
所以问题是我必须为此 webhook 创建一个过滤器,这样我就可以通过 post 正文的 json 中包含的值对其进行身份验证。
所以我定义了一个 WebSecurityConfigurerAdapter 并添加了一个 AbstractPreAuthenticatedProcessingFilter,这样我就可以拦截请求,读取 json 正文中的值并使用适当的凭据进行身份验证。
我按照本教程进行操作 Reading HttpServletRequest Multiple Times in Spring 因此我可以从请求中读取 InputStream 而无需删除它。
所以我的问题有两个。
1:是否有 better/easy 方法可以存档此结果? 2:我猜本教程遗漏了一些东西,因为我在尝试读取请求时在 servlet 中得到了空指针(同样,在我已经读取了过滤器之后)。
任何猜测将不胜感激,提前致谢。
我们可以知道哪个第 3 方服务吗? PayPal/Stripe 例如已经有文档解释如何验证数据。
如果您可以将 metadata/custom 字段添加到 webhook,例如您可以对其进行签名。
就检查 signature/verifying 而言,为什么不在 @Contoller=>@Service 中执行此操作?