wechatpay-apiv3 / wechatpay-java

微信支付 APIv3 的官方 Java Library
Apache License 2.0
978 stars 214 forks source link

使用RSAAutoCertificateConfig自动更新获取证书时,当支付成功回调时, #101

Closed Error-NotFound closed 1 year ago

Error-NotFound commented 1 year ago

您的功能请求与问题有关吗? 请描述您遇到的问题

多租户下,当支付成功回调时,只能根据header里的Serial去找是哪个租户,使用RSAAutoCertificateConfig自动更新微信支付证书,怎么拿到RSAAutoCertificateConfig里存放的certificateMap 他是private修饰的

描述您想要的解决方案

1、把AbstractAutoCertificateProvider类中private final Map<String, Map<String, X509Certificate>> certificateMap; ”private“改成public 2、微信支付证书序列号作为key

您还有其他的方案吗?

No response

其他信息

No response

xy-peng commented 1 year ago

建议是针对不同的租户使用不同的回调地址。多租户的身份是希望商户系统自己能区分的。

通过证书序列号识别租户身份,是不严谨的。它依赖微信支付对每个商户的平台证书是不一样的,这一点并不能保证。

如果回调要提供租户身份标识,回调的报文或者HTTP头部就直接提供商户号了。