Tôi làm cách nào để tạo người dùng thông thường, không phải quản trị viên trong CouchDB?Tạo người dùng thông thường trong CouchDB
Trả lời
Các CouchDB Wiki có một bài viết ngắn về security features của CouchDB và làm thế nào để cấu hình một "đầu đọc" đó là những gì giống như một người dùng trong một cơ sở dữ liệu quan hệ.
Điều này là chính xác. Câu trả lời ngắn cho câu hỏi của IDanil là, "tạo một tài liệu trong cơ sở dữ liệu' _users'. " Tuy nhiên, liên kết của bạn giải thích tất cả các chi tiết và ý nghĩa. – JasonSmith
Tôi nghĩ bạn phải đặt một khuôn khổ web ở phía trước để làm điều này theo cách mà nhiều trang web làm. Vai trò quản trị Couchdb không hoạt động trên hồ sơ theo cơ sở hồ sơ, vì vậy nếu bạn tạo người đọc có thể đọc hồ sơ hoặc bảng tài khoản, họ có thể đọc bản ghi.
Trước tiên, bạn đưa người dùng vào cơ sở dữ liệu _users
. ID của tài liệu phải là org.couchdb.user:username
, ví dụ:
Với CouchDB 1.2.0 hoặc mới hơn sử dụng này:
{
"_id": "org.couchdb.user:dbreader",
"name": "dbreader",
"type": "user",
"roles": [],
"password": "plaintext_password"
}
CouchDB sẽ băm & muối mật khẩu cho bạn ở phía máy chủ và lưu các giá trị trong các lĩnh vực password_sha
và salt
(xem dưới đây).
Với CouchDB < 1.2.0 tài liệu sử dụng cần phải trông như thế này:
{
"_id": "org.couchdb.user:dbreader",
"name": "dbreader",
"type": "user",
"roles": [],
"salt": "54935938852dd34f92c672ab31e397cedaf0946d",
"password_sha": "42253ea4461a604f967813aaff90b139d7018806"
}
Lưu ý rằng CouchDB 1.3.0 và sau đó sẽ sử dụng PBKDF2 thay vì aha & muối băm mật khẩu.
Sau đó, bạn có thể tạo mỗi xác thực cơ sở dữ liệu bằng cách tạo tài liệu có id _security trong cơ sở dữ liệu cụ thể không được phiên bản, ví dụ:
{
"admins": {
"names": ["dbadmin"],
"roles": ["editor"]
},
"readers": {
"names": ["dbreader"],
"roles": ["reader"]
}
}
Điều này có nghĩa rằng có 2 người dùng trong _users
bên cạnh quản trị dbadmin và dbreader. Điều đó nên làm trong trường hợp bạn quá lười để đọc tài liệu đã được đề xuất.
Tôi dường như không thể tìm ra các quy ước đặt tên. Có bất kỳ hạn chế nào về tên người dùng có thể không? Khác với tiền tố org.couchdb.user: – Costa
vì vậy mật khẩu người dùng được mọi người nhìn thấy khi bạn lưu trữ chúng? và làm thế nào để băm chúng? – astroanu
@astroanu: Bạn đăng nó trong văn bản rõ ràng, có, nhưng khi nó trở lại với bạn từ máy chủ (và tất cả các yêu cầu GET sau đó), nó chỉ là phiên bản muối và băm của mật khẩu được trả về. – MidnightLightning
- 1. Mô hình CouchDB cho nhiều người dùng
- 2. Chown người dùng thông thường (chỉ thay đổi nhóm)
- 3. an toàn client-side couchApp/CouchDB xác thực người dùng
- 4. Nhập thông tin người dùng Trong Ruby
- 5. WCF + Thông tin người dùng
- 6. Tạo hệ thống thông báo người dùng ở Django
- 7. Django - Tạo hồ sơ người dùng khi tạo người dùng
- 8. Tạo người dùng mysql thông qua dòng lệnh linux?
- 9. Tôi có nên bắt lỗi không bao giờ xảy ra với người dùng thông thường không?
- 10. Lấy Người dùng Nhập để tạo Người dùng ở Django
- 11. PowerShell trên Windows 7: Set-ExecutionPolicy dành cho người dùng thông thường
- 12. Tạo người dùng trong Devise từ JSON
- 13. Làm cách nào để đặt biến môi trường người dùng trong Windows Server 2008 R2 làm người dùng bình thường?
- 14. Làm cách nào để "cấp cho người dùng tạo" dưới dạng người dùng không phải là người dùng root?
- 15. Cách tạo plugin người dùng trong Xpages?
- 16. Tạo người dùng trong Jenkins qua API
- 17. Cách kiểm tra tính khả dụng và tên người dùng dự trữ trong CouchDB
- 18. Nhận mã thông báo người dùng facebook
- 19. Lưu thông tin người dùng trong cài đặt ứng dụng
- 20. Tạo giao diện người dùng động trong C#
- 21. Cách tạo thủ công phiên người dùng và người dùng mới trong Devise?
- 22. thông báo thay đổi couchdb-python
- 23. Lấy thông tin người dùng trong các mẫu django
- 24. Thông báo lại cho người dùng tài khoản trong Drupal
- 25. Cách tạo người dùng từ django shell
- 26. Không thể tạo siêu người dùng với mô hình người dùng tùy chỉnh trong Django 1,5
- 27. Cách tạo WindowsIdentity/WindowsPrincipal từ tên người dùng trong DOMAIN \ định dạng người dùng
- 28. CouchDB Tìm một người không làm việc
- 29. Tôi có thể thấy người dùng Trello chuyển đổi từ "ma" thành "bình thường" thông qua API không?
- 30. Đăng ký người dùng CouchApp
Bạn có thể quan tâm đến bài viết wiki này. http://wiki.apache.org/couchdb/How_to_create_users_via_script – user2247543
Quy tắc đặt tên là gì? Tôi dường như không thể tìm thấy câu trả lời ở đâu cả. Tên người dùng có thể là địa chỉ email không? – Costa