从 couchdb 视图访问会话信息
我是 couchdb/couchapp 的新手。我想知道是否可以从 couchdb 视图访问 _session 信息。例如:
function(doc) {
if (doc.username == session.userCtx.name) {
emit(doc.username, doc);
}
};
I'm new to couchdb/couchapp. I'm wondering if it's possible to access _session information from couchdb views. For example:
function(doc) {
if (doc.username == session.userCtx.name) {
emit(doc.username, doc);
}
};
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好问题!答案是否定的,了解原因很重要。
关于哪些用户可以看到哪些数据的政策是在数据库级别完成的,而不是在文档或视图级别完成的。这听起来很奇怪,但从长远来看是有道理的。
确实有权访问会话的函数是过滤函数。您可以使用它们为每个用户创建私有数据库,其中包含他们可能阅读的所有文档。
我在有关 _all_docs,以及 CouchDB 读取权限。
Great question! The answer is no and it's important to understand why.
The policy about which users may see what data is done at the database level, not the document or view level. It sounds odd however it makes sense in the long-run.
The function that does have access to the session is filter functions. You can use those to create private databases per-user with all the documents they may read.
I wrote more answers about read permissions in a question about _all_docs, and also about CouchDB read permissions.