0

すべてのアプリケーションサーバーで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からコピーされて貼り付けられるため、タイプミスはありません。

4

1 に答える 1

2

NServiceBusv3.3.5はまだRavenDbv1を使用していますが、残念ながらRaven v1でのAPIKeyの使用に関するドコはあまり見つかりません。私が見つけたのは、http: //ravendb.net/docs/1.0/server/bundles/authenticationだけです。

上記のリンクには、「認証バンドル」が必要であると記載されていますが、これはインストールされていますか?

一方、NServiceBusv4はRavenDBv2を使用しているため、このページを読むと簡単に設定できるはずです。NServiceBusv4ベータ版がリリースされました。http://nservicebus.com/を参照してください。

于 2013-03-26T02:35:19.880 に答える