Отправка сертификата клиента с помощью RavenDB Client API

Моя команда разрабатывает веб-приложение.NET, которое будет работать на нескольких серверах Windows, и мы хотели бы использовать RavenDB для постоянного хранения. У нас есть требование от нашего клиента, чтобы пользовательский доступ к странице администратора RavenDB потребовал от пользователя предоставить действительный сертификат клиента для аутентификации. Мы планируем запустить RavenDB, размещенный на IIS, и настроить IIS так, чтобы требовался сертификат клиента для доступа к веб-сайту, который требует, чтобы все запросы к RavenDB использовали действительный сертификат клиента.

Обычно в.NET присоединение сертификата клиента к запросу http можно выполнить с помощью HttpClient, просто добавив X509Certificate в WebRequestHandler и передав его в конструктор HTTPClient, и я вижу, что код DocumentSession Raven.Client использует HttpClient в своем коде, но Я не видел способа использовать API Raven.Client для присоединения сертификата клиента к моему запросу при создании и использовании DocumentStore или DocumentSession для сохранения данных в RavenDB.

Есть ли хорошие способы использовать код API клиента RavenDB для отправки сертификата клиента для проверки подлинности моего запроса?

1 ответ

Да, вы можете сделать это с помощью события ConfigureRequest, см.: https://github.com/ayende/ravendb/blob/v3.5/Raven.Client.WinRT/Connection/HttpJsonRequestFactory.cs#L28

Это доступно из docuemntStore.JsonRequestFactory.ConfigureRequest

Другие вопросы по тегам