CouchApp/CouchDB 中的会话和安全性?

发布于 2024-10-19 19:28:13 字数 470 浏览 2 评论 0 原文

我是 CouchApp 和 CouchDB 的新手,有一些问题。

  1. 如何从我自己的数据库(不是 _users)在 CouchApp 中创建会话?
  2. 我如何检索该会话?
  3. 如何解析文档中的数据?

我可以用视图来做到这一点,但是当有人调用我的视图 url 并获取 id 时,他可以获取密码等所有数据(我正在尝试使用我自己的数据库来存储登录信息)。

在我的数据库中,我有一个这样的文档:

{  
   "_id": "...",  
   "_rev": "...",  
   "XDocType": "user",  
   "name": "Administrator",  
   "password": "1234",  
   "username": "admin"
}

我想使用会话而不是cookie进行简单的登录/注册/注销。

I'm new to CouchApp and CouchDB and have some questions.

  1. How can I make sessions in CouchApp from my own database (not _users)?
  2. How would I retrieve that session?
  3. How can I parse data from a document?

I can do it with a view, but when someone calls my view url and gets the id, he can get all data like passwords (I'm trying to use my own database to store login information).

In my database I have a document like this:

{  
   "_id": "...",  
   "_rev": "...",  
   "XDocType": "user",  
   "name": "Administrator",  
   "password": "1234",  
   "username": "admin"
}

I want to make a simple login/register/logout with sessions, not cookies.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

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

发布评论

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

评论(1

难忘№最初的完美 2024-10-26 19:28:13

对于 Couch 应用程序,会话不太重要,因为整个应用程序在客户端(浏览器)中运行。 CouchDB 仅执行以下操作:

  • 身份验证(用户可以使用密码连接,或获取 cookie 以供稍后识别)
  • 授权(CouchDB 将允许或禁止读取或写入数据,具体取决于用户的名称和角色以及数据库 _security 对象和 validate_doc_update 函数。

您可以更改用户帐户的默认数据库(而不是 _users),但您必须始终拥有一个用户数据库。可以设置数据库的_security,以便匿名用户无法访问它(但是新用户无法轻松注册,因此这是一个权衡。)

Jan 有一篇很棒的文章。关于CouchDB 安全性

A session is less important with a Couch app because the whole application runs in the client (browser). CouchDB only does the following:

  • Authentication (user can connect with a password, or get a cookie to identify later)
  • Authorization (CouchDB will allow or disallow reading or writing data, depending on the user's name and roles, and the database _security object and validate_doc_update functions.

You can change the default database for user accounts (instead of _users) however you must always have a users database. You can set the _security of the database so that anonymous users cannot access it. (However new users cannot easily sign-up, so it is a trade-off.)

Jan has an excellent post about CouchDB security.

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