CouchDb 中的安全问题
Security issue in CouchDb
我看到 CouchDb
发生了一件奇怪的事情。当我进入 Futon
页面时,我看到我需要登录。否则,如果我尝试更改某些 view
函数,我将收到错误消息 Error: anathorized
。当我登录时,这个错误消失了。所以,这似乎没问题。
不正常的是,当我尝试在不提供 user
和 password
的情况下使用 curl
调用某些 view
时,我没有收到任何错误消息,但得到一些结果。我是这样做的:
curl -XGET 'http://127.0.0.1:5984/db/_design/query/_view/delete/?key="object_1_"'
这个view
^^^应该是return一长串数据。事实上,26行。这就是我登录时在 Futon 中看到的内容。但是由于 curl
命令,我得到:
{"total_rows":26,"offset":25,"rows":[{"id":"...","key":"object_1_","value":"..."}]}
因此,如您所见,我得到了一行数据。我有几个问题。为什么 CouchDb
在需要时不提供 user
和 password
就可以查询自己?为什么 return 如此奇怪的结果 - total_rows = 26,但实际上只有一行。
PS。 Ubuntu15.04,CouchDb 1.6.0
编辑
如果我这样提供用户名和密码:
curl 'http://user:password@....similar'
然后我仍然用一行数据得到这个奇怪的结果。
您没有将数据库限制为任何管理员、admin_roles、用户或 user_roles - 因此任何人都可以访问该数据库。这是默认值并在文档中说明。
为什么您的视图 return "strange results" 确实取决于您的视图和查询。
我看到 CouchDb
发生了一件奇怪的事情。当我进入 Futon
页面时,我看到我需要登录。否则,如果我尝试更改某些 view
函数,我将收到错误消息 Error: anathorized
。当我登录时,这个错误消失了。所以,这似乎没问题。
不正常的是,当我尝试在不提供 user
和 password
的情况下使用 curl
调用某些 view
时,我没有收到任何错误消息,但得到一些结果。我是这样做的:
curl -XGET 'http://127.0.0.1:5984/db/_design/query/_view/delete/?key="object_1_"'
这个view
^^^应该是return一长串数据。事实上,26行。这就是我登录时在 Futon 中看到的内容。但是由于 curl
命令,我得到:
{"total_rows":26,"offset":25,"rows":[{"id":"...","key":"object_1_","value":"..."}]}
因此,如您所见,我得到了一行数据。我有几个问题。为什么 CouchDb
在需要时不提供 user
和 password
就可以查询自己?为什么 return 如此奇怪的结果 - total_rows = 26,但实际上只有一行。
PS。 Ubuntu15.04,CouchDb 1.6.0
编辑
如果我这样提供用户名和密码:
curl 'http://user:password@....similar'
然后我仍然用一行数据得到这个奇怪的结果。
您没有将数据库限制为任何管理员、admin_roles、用户或 user_roles - 因此任何人都可以访问该数据库。这是默认值并在文档中说明。
为什么您的视图 return "strange results" 确实取决于您的视图和查询。