PouchDB安全性

16

当在客户端使用PouchDB访问远程服务器时,最好遵循什么安全实践?

https://pouchdb.com/getting-started.html上的示例代码与远程服务器同步:

var remoteCouch = 'http://user:pass@mname.example.com/todos';

问题在于,我可能不希望用户在下载文件时看到明文密码,即使这个文件仅向经过身份验证的用户显示。

请指教。先行致谢。

3个回答

8

这里有一篇关于CouchDB认证的非常好的文章

我有一个生产服务器,配置了CouchDB使用本地主机上的HTTP,但外部请求需要通过stunnel重定向到CouchDB的HTTPS。

在客户端,我使用PouchDB维护本地复制数据库。作为建立与CouchDB之间的HTTPS通信握手的一部分,软件从另一台服务器获取CouchDB凭据 - 凭据永远不会存储在客户端。

pouchdb-authentication是一个很好的插件,但我发现自己更善于处理认证。


2

每个站点用户都应该拥有自己的CouchDB用户。如@onno所建议的那样,使用HTTPS和用户的登录凭据来访问CouchDB。密码永远不应该在客户端JavaScript中可用。


-1
这取决于你的远程服务器。如果你使用CouchDB服务器,你可以配置它仅通过SSL(HTTPS)通信,有关详细信息请参见文档
如果您不想直接将CouchDB服务器暴露在互联网上,您还可以将其隐藏在反向代理后面,例如启用了mod_proxy扩展和SSL的Apache服务器。

10
使用SSL无法防止攻击者从Javascript源代码中读取密码。 - Bastian Voigt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接