2

我正在尝试从Server1连接到Server2上的 RavenDB 。

Server2上,我创建了一个新用户“RavenDBUser”,并授予他们对 RavenDB 安装中数据库目录的读/写访问权限。

我在端口 8080 上将 RavenDB 作为 Windows 服务运行。

Server1上,我已将应用程序的连接字符串设置为:

Url=http://server2:8080;Database=MyDatabase;Domain=server2;user=RavenDBUser;password=mypassword;

当我运行我的应用程序时,我得到一个 403,禁止错误。

但是,我可以Server1连接到 RavenDB Studio,并在以“RavenDBUser”身份验证后查看“MyDatabase”。

错误详情如下:

[WebException:远程服务器返回错误:(403) Forbidden.] System.Net.HttpWebRequest.GetResponse() +8522396
Raven.Client.Connection.HttpJsonRequest.ReadJsonInternal(Func 2 operation, String operationUrl, Boolean AvoidThrowing, T& result) +194 Raven.Client.Connection.ReplicationInformer.ExecuteWithReplication(String 方法,String primaryUrl,Int32 currentRequest,Int32 currentReadStripingBase,Func 2 操作)+138 Raven.Client.Indexes.AbstractIndexCreationTask.Execute(IDatabaseCommands databaseCommands,DocumentConvention documentConvention)+86 Raven。 Client.Indexes.IndexCreation.CreateIndexes(ExportProvider catalogToGetnIndexingTasksFrom,IDatabaseCommands databaseCommands,DocumentConvention 约定)+1081 getResponse) +805
Raven.Client.Connection.HttpJsonRequest.ReadResponseJson() +587
Raven.Client.Connection.ServerClient.DirectPutIndex(String name, String operationUrl, Boolean overwrite, IndexDefinition definition) +774 Raven.Client.Connection.<>c__DisplayClass50.<PutIndex>b__4f(String operationUrl) +36
Raven.Client.Connection.ReplicationInformer.TryOperation(Func
2 operation) +526
Raven.Client.Connection.ServerClient.ExecuteWithReplication(String method, Func



MyApp.CMSRegistry.InitializeStore() +380 MyApp.CMSRegistry..ctor() +66

4

1 回答 1

1

似乎缺少的部分是您必须在 RavenDB 系统数据库配置中显式启用 Windows 用户/组。

可以在页面下方约 3/4处的http://ravendb.net/docs/studio/multi-database找到不太容易找到的文档。

于 2013-01-09T23:23:16.960 回答