すべてのアプリケーションサーバーでRavenDBを実行する代わりに、集中化されたRavenDBを使用するようにNServiceBus3.3.5をセットアップしようとしています。NServiceBus.PersistenceをWindowsのユーザー名/パスワードで使用できますが、機能します。ただし、可能であればAPIKeysを使用したいと思います。
作品:
<add name="NServiceBus.Persistence"
connectionString="Url=http://DBServerName:8080;Database=DBName;User=Domain\RavenDBTestUser;Password=**********;" />
動作しません:
<add name="NServiceBus.Persistence"
connectionString="Url = http://DBServerName:8080/; ApiKey = NServiceBusClients/SecretKey; Database = DBName" />
サービスを開始すると、次のエラーが発生します(RavenDBは403を返します)...
FATAL 06:32:23 Autofac.Core.DependencyResolutionException: An exception was thrown while invoking the constructor 'Void .ctor(Raven.Client.IDocumentStore)' on type 'RavenTimeoutPersistence'. ---> System.InvalidOperationException ---> System.Net.WebException: The remote server returned an error: (403) Forbidden.
at System.Net.HttpWebRequest.GetResponse()
at Raven.Client.Connection.HttpJsonRequest.ReadStringInternal(Func`1 getResponse) in c:\Builds\RavenDB-Stable\Raven.Client.Lightweight\Connection\HttpJsonRequest.cs:line 279
ユーザーDomain\RavenDBTestUserとapi-keyは、RavenDBで同じアクセス権を持っています。私はこれとこれを通り抜けましたが、それらは昨年半ばからのもので、バージョン3.2.3についてです。3.3.5でも同じですか、それとも何か間違ったことをしていますか?
PS接続文字列はRavenStudioからコピーされて貼り付けられるため、タイプミスはありません。