2013-12-11 2 views
5

MongoDb에서는 액세스 제어를 위해 사용자를 데이터베이스에 추가 할 수 있습니다. 사용자는 삽입 할 수 있습니다MongoDB가 데이터베이스 사용자 암호를 해시하는 데 사용하는 해시 함수는 무엇입니까?

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

삽입 된 사용자는 다음과 같습니다

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

어떤 기능 MongoDB를가/해시에게 pwd 키를 계산하는 데 사용합니까?

답변

4

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

공식 : documentation.

결과가 json에 표시되는 해시와 일치하지 않지만 "aaaa"을 추가했지만 "aaa"을 검색 할 때 실제 사용자 이름과 비밀번호를 바꿨다고 생각합니다.

+0

고마워요! 그리고 당신의 가정은 정확합니다. 나는 사용자 이름을 대체했다. :) –

+0

mongo 쉘에서 MD5 (username + ": mongo :"+ password_text)를 시도했을 때 '오류 : MD5 문자열은 32 자 여야합니다 .' – Guig

관련 문제