2016-05-12 10 views
2

私のチームは、いくつかのWindowsサーバー上で実行される.NET Webアプリケーションを開発しており、RavenDBを永続性に使用したいと考えています。クライアントからRavenDB管理ページへのアクセスには、認証される有効なクライアント証明書を提示する必要があるという要件があります。私たちはIIS上でホストされたRavenDBと、有効なクライアント証明書を使用するためのRavenDBへのすべての要求を要求するconfigure IIS to require a client certificate for access to the websiteを実行する予定です。RavenDBクライアントAPIを使用したクライアント証明書の送信

通常、クライアント証明書をhttp要求can be done with HttpClient simply by adding an X509Certificate to a WebRequestHandler and passing that to the HTTPClient constructorに添付すると、Raven.Client DocumentSessionコードuses HttpClient in its codeが表示されますが、Raven.Client APIを使用する方法はありませんでした。 DocumentStoreやDocumentSessionを作成して使用してRavenDBにデータを保存する際の私の要求。

RavenDB Client APIコードを使用してリクエストを認証するクライアント証明書を送信する良い方法はありますか?

答えて

2

はい、あなたが見る、ConfigureRequestイベントを使用していることを行うことができます。 https://github.com/ayende/ravendb/blob/v3.5/Raven.Client.WinRT/Connection/HttpJsonRequestFactory.cs#L28

するとこれは私がJsonRequesrFactoryは私が考えていなかったことだけを取得していることに気を取られてしまっていたdocuemntStore.JsonRequestFactory.ConfigureRequest

+0

からアクセス可能ですその中のオブジェクトが変更できるという事実。これはうまくいくように見えますが、私は試してみるつもりです。 – Tyler

+0

DocumentStoreのJsonRequestFactoryは、httpリクエストがサーバーに対して行われる唯一の場所ではないようです。私はDocumentConventionから "新しい複製情報のためのマスターを契約できませんでした"というエラーが出ていますので、最初にその要求でクライアント証明書を送信する方法を見つける必要があると思います。 – Tyler

+0

'Initialize'メソッドがドキュメントストアで呼び出された後でこれをしていますか? –

関連する問題