我在Windows 10上使用marklogic 9.0-8。在marklogic中,我需要设置webdav,以便操作员可以看到所有文档。但我只想给webdav readonly权限,这是为了避免意外。
step1:我创建了一个名为“readonly”的角色(不是隔间),赋予此角色以下权限:
a. execute privileges: any-uri, rest-reader, role-exists, role-get-description, role-get-external-names
b. uri-previleges: view-uri
c. role name (capability): readonly (read)
第2步:然后我创建了一个名为“test-user”的用户,为该用户分配“readonly”角色
步骤3:使用DMSDK异步,我将文档加载到marklogic,具有元数据权限:role“readonly”。这里我没有指定角色在加载数据时的能力,所以我假设它将默认权限分配给角色“readonly”
第4步:现在我设置了名为webdav-appserver的webdav应用服务器。对于此服务器,默认用户是“test-user”; root是“/”。数据库指向我的数据库,端口10001.其他是默认值。
STEP5。现在在Windows上,我使用“http:localhost:10001”创建webdav以连接到数据库。它会要求输入用户名和密码。当我提供用户“测试用户”和密码时,它会抱怨“windows无法访问http://localhost:10001/”。但如果我使用“admin”用户连接,那么我可以连接。
问题1:我希望我可以使用用户“test-user”将webdav连接到marklogic,并且一旦连接,在windows上,即使操作员可以看到文件,文件只读,也不能修改或删除。但问题是我无法使用“测试用户”进行连接。
关于这个的问题2:如果我使用admin用户连接webdav,webdav可以连接,我可以从windows系统看到文件。但是当我从webdav打开pdf文件时,它会询问我的用户名/密码。在我提供“测试用户”和密码后,我可以看到pdf文件。它会每次都询问用户名和密码。但对于xml文件,它不会询问用户ID /密码。
我的期望是:一旦我使用webdav与我的“测试用户”连接到marklogic,我应该能够看到pdf文件,我不应该被要求每次都提供用户名/密码。
谁可以帮我这个事?
谢谢,海伦
这很可能是Windows资源管理器WebDAV问题,而不是MarkLogic问题。在另一个WebDAV客户端上测试。
在Windows资源管理器中,当连接到WebDAV服务器的根目录时,必须用/
替换根/DavWWWRoot/
。这可能与您的问题有关,也可能与您无关。
最后,阅读the documentation on URI privileges。如果您打算创建只读用户,则不要为其提供任何URI权限,这允许在权限指定的URI路径上创建文档。