2013-12-11 17 views
5

Trong sử dụng MongoDb có thể thêm người dùng vào cơ sở dữ liệu để kiểm soát truy cập. Một người sử dụng có thể được chèn với:Hàm băm được sử dụng bởi MongoDB để băm mật khẩu người dùng cơ sở dữ liệu là gì?

db.addUser({ user: "aaaa", pwd: "1234", roles: [...]}) 

và người dùng chèn là:

{ 
    "user" : "aaa", 
    "pwd" : "08ccdf34dbb3ca05dcc195e30994b628", 
    "roles" : [ 
     "userAdminAnyDatabase" 
    ], 
    "_id" : ObjectId("52a88b45965c4e7ad46bb97b") 
} 

chức năng gì MongoDB sử dụng để tính toán/băm phím pwd?

Trả lời

4

The pwd is the hex encoding of MD5(username + ":mongo:" + password_text).

Từ chính thức documentation.

Kết quả không trùng với mã băm bạn hiển thị trong json, nhưng tôi nghĩ bạn đã thay thế tên người dùng và mật khẩu thực tế bằng cách thêm "aaaa" nhưng truy xuất "aaa".

+0

Cảm ơn! Và giả định của bạn là chính xác. Tôi đã thay thế tên người dùng. :) –

+0

Khi tôi thử MD5 (tên người dùng + ": mongo:" + password_text) trong vỏ mongo tôi nhận được 'Lỗi: chuỗi MD5 phải có 32 ký tự' – Guig

Các vấn đề liên quan