我的团队正在开发一个跨多个 Windows 服务器运行的 .NET Web 应用程序,我们希望使用 RavenDB 来实现持久性。我们的客户要求用户访问 RavenDB 管理页面将要求用户提供有效的客户端证书以进行身份验证。我们计划运行托管在 IIS 上的 RavenDB,并将 IIS配置为需要客户端证书才能访问网站,这需要对 RavenDB 的所有请求都使用有效的客户端证书。
通常在 .NET 中,将客户端证书附加到 http 请求可以使用 HttpClient 完成,只需将 X509Certificate 添加到 WebRequestHandler 并将其传递给 HTTPClient 构造函数,我可以看到 Raven.Client DocumentSession 代码在其代码中使用 HttpClient但是在创建和使用 DocumentStore 或 DocumentSession 将数据保存到 RavenDB 时,我没有看到任何使用 Raven.Client API 将客户端证书附加到我的请求的方法。
有什么好的方法可以使用 RavenDB 客户端 API 代码发送客户端证书来验证我的请求吗?