【发布时间】:2013-10-05 06:17:34
【问题描述】:
在单独的服务器上验证 Windows 8 应用内购买收据时,我对 Microsoft 推荐的做法有点困惑。
This 文档页面显示了验证收据时的方法。我发现令人困惑的是获取和存储用于验证收据的证书。在某些时候,在检索用于验证的 SSL 证书时,文档会说明以下内容:
// Retrieve the certificate from the official site.
// NOTE: For sake of performance, you would want to cache this certificate locally.
// Otherwise, every single call will incur the delay of certificate retrieval.
这个缓存建议让我感到困惑。证书是从使用来自收据本身的参数构建的 URL 中检索的,看起来像这样:
https://go.microsoft.com/fwlink/?LinkId=246509&cid={0},
其中{0} 代表直接取自收据的证书ID。但如果我应该缓存它,那么任何后续收据验证都会忽略新收据中所述的证书 ID。这使我认为 Windows 8 上的所有收据必须根据相同的证书进行验证,具有相同的、永不更改的 ID(它似乎是 b809e47cd0110a4db043b3f73e83acd917fe1336)。这个假设正确吗?我是否可以在第一次请求后安全地缓存证书,然后忽略收据中的所有后续证书 ID?
【问题讨论】:
标签: .net windows-8 in-app-purchase certificate windows-store-apps