保护Raven数据库

时间:2012-11-27 15:57:50

标签: security authorization ravendb ravendb-studio

我正在尝试将对我们的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帐户登录。我甚至可以修改文档,这正是我想要防止的。我错过了一个设置吗?

2 个答案:

答案 0 :(得分:3)

你说你在构建573?那太老了。根据{{​​3}},它于12/15/2011发布。有release history表示“如果用户不在群组或用户列表中,则更改授权将返回403”。这可能是你需要的修复。

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

如果您不在生产环境中,现在是转向2.0不稳定的好时机。

答案 1 :(得分:2)

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

如果您仍想限制对工作室的访问,则可以使用IIS安全性,例如常规网站。但请记住,没有特别的理由这样做。