从 couchdb 视图访问会话信息

发布于 2024-10-20 00:08:52 字数 194 浏览 2 评论 0原文

我是 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

冷弦 2024-10-27 00:08:52

好问题!答案是否定的,了解原因很重要。

关于哪些用户可以看到哪些数据的政策是在数据库级别完成的,而不是在文档视图级别完成的。这听起来很奇怪,但从长远来看是有道理的。

确实有权访问会话的函数是过滤函数。您可以使用它们为每个用户创建私有数据库,其中包含他们可能阅读的所有文档。

我在有关 _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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文