0

我正在尝试将访问我们的 RavenDB 的权限仅限于一个用户。更改设置以保护数据库后,我仍然可以访问 RavenDB 管理工作室,但我不知道为什么。我将 RavenDB 作为 Windows 服务运行,并且使用的是 build 573。

这是我的 Raven.Server.exe.config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="Raven/Port" value="*"/>
    <add key="Raven/DataDir" value="~\Data"/>
    <add key="Raven/AnonymousAccess" value="None"/>  <!-- Settings are Get, All, None -->
    <add key="Raven/Authorization/Windows/RequiredUsers" value="FS-6103\PrestoDatabaseUser"/>
    <add key="Raven/MaxPageSize" value="2147483647"/>
  </appSettings>

    <runtime>
        <loadFromRemoteSources enabled="true"/>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
            <probing privatePath="Analyzers"/>
        </assemblyBinding>
    </runtime>
</configuration>

如果我只允许FS-6103\PrestoDatabaseUser,为什么我仍然可以远程连接到管理工作室?我以我的 Windows AD 帐户登录。我什至可以修改文档,这正是我想要阻止的。我错过了一个设置吗?

4

2 回答 2

3

你说你在build 573?那是很老了。根据发布历史,它于 2011 年 12 月 15 日发布。有一个日期为 2/22/2012 的提交,上面写着“如果用户不在组或用户列表中,则更改授权以返回 403”。这可能是您需要的修复程序。

我会至少更新到最后一个稳定版本 - 1.0.960,看看你的问题是否仍然存在。

如果您不在生产环境中,那么现在是迁移到 2.0 不稳定版的好时机。

于 2012-11-27T21:49:43.850 回答
2

RavenDB 不保护 Studio 端点,因为您不需要这样做。如果 Studio 无法访问 RavenDB,它本身不会让您做任何事情。

如果您还想限制对工作室的访问,您可以使用 IIS 安全性来做到这一点,就像普通网站一样。但请记住,没有特别的理由这样做。

于 2012-11-27T17:16:55.790 回答