我正在尝试从 Server1 连接到 Server2 上的RavenDB。
在 Server2 上,我创建了一个新用户“RavenDBUser”,并授予他们对RavenDB安装中的Database目录的读/写访问权限。
我在端口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键1 getResponse) +805
2 operation,String operationUrl,Boolean avoidThrowing,T&结果)+194 Raven.Client.Connection.ReplicationInformer.ExecuteWithReplication(字符串 method,String primaryUrl,Int32 currentRequest,Int32 currentReadStripingBase,Func
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(Func2 operation) +526
2操作)+138
Raven.Client.Connection.ServerClient.ExecuteWithReplication(String method, Func
Raven.Client.Indexes.AbstractIndexCreationTask.Execute(IDatabaseCommands databaseCommands,DocumentConvention documentConvention)+86
Raven.Client.Indexes.IndexCreation.CreateIndexes(ExportProvider catalogToGetnIndexingTasksFrom,IDatabaseCommands databaseCommands, DocumentConvention惯例)+108
MyApp.CMSRegistry.InitializeStore()+ 380 MyApp.CMSRegistry..ctor() 66
答案 0 :(得分:1)
似乎缺少的是你必须在RavenDB系统数据库配置中明确启用windows用户/组。
在http://ravendb.net/docs/studio/multi-database大约3/4的页面上可以找到不那么容易找到的文档。