我有一个网站,它使用 Safari 浏览器的推送通知。它工作得很好,直到最近我开始收到一条消息说
推送包签名验证失败
我相信这与最近的 Apple WWDRCA 证书到期有关,现在正在尝试将新证书安装到系统中。他们的文档说
如果您使用 openssl_pkcs7_sign 函数仅使用 Web 推送证书对推送包进行签名,则应将额外证书参数的路径传递给更新的中间体。
所以我的问题是如何告诉这个函数使用这个新证书,另一个问题是我应该将它们的证书安装到运行 Apache 的 Linux 系统中。我不确定其中是否安装了以前的证书。
谢谢
感谢大家,
通过将 Apple WWDRCA 新证书添加为 openssl_pkcs7_sign 的最后一个参数,设法解决了该问题
openssl_pkcs7_sign("$package_dir/manifest.json", $signature_path, $cert_data, $private_key, array(), PKCS7_BINARY | PKCS7_DETACHED,"/path/to/certificate/AppleWWDRCA.pem");
不需要额外的工作。请注意,必须手动将文件从 .cer 转换为 .pem。
我认为应该在文档中更清楚地指出这一点。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)