본문 바로가기
컴퓨터/mongoDB

[mongoDB]몽고디비 사용자 인증

by TEATO 2014. 8. 6.
반응형

[mongoDB]몽고디비 사용자 인증


오라클에서는 사용자가 객체이름을 결정하는 기준이었는데요

몽고디비에서는 사용자를 인증하는 용도일뿐 객체이름을 결정하지 않습니다.

오라클과 마찬가지로 os인증방식이 있고, 사용자 아이디 패스워드 인증방식이 있습니다.


기본 권한으로는

database user role

db administration role

administrative role

any database role

이렇게 있습니다. 아래로갈수록 강력한 권한 입니다.


오라클에서는 한 데이터베이스에 여러사용자를 만드는 방식이었는데요

mongodb에서는 각데이터베이스당 사용자를 따로따로 만들어줍니다.



use admin 으로 admin데이터베이스 공간을 사용합니다.


db.addUser({}) 명령어로 유저 이름 패스워드를 설정해 줄 수 있습니다.

adduser를 했더니 경고메세지가 뜨는데요. adduser말고 createUser를 사용하라는 메세지 입니다.

버전이 업데이트되면서 문법들이 조금씩 변하고있습니다.


db.auth({}) 로 접속할 수 있는데요 

1이라는 표시는 성공적으로 접속된것을 뜻하고 

0으로 됬다면 접속 실패를 뜻합니다.


이번엔 test라는 데이터베이스에서 사용자를 만들어보겠습니다.


성공적으로 만들었고 접속하는 모습을 볼 수 있습니다.


db.changeUserPassword( ) 로 사용자 패스워드를 변경해줄 수 있습니다.


db.removeUser( ) 로 유저를 삭제할 수 있는데요

이번에는 dropUser 라고 사용하라는 경고메세지를 줍니다.

앞으로 버전에서는 dropUser를 사용해야겠네요


유저를 설정한다음 유저 아이디 비밀번호로 설정해서 로그인하게 하려면

mongodb를 구동할때 다른 옵션을 줘야합니다. 

--auth 라는 옵션을 주면 os인증방식을 사용하지않고

로그인 방식을 사용하게됩니다.


아이디 패스워드를 안치고 접속하면 데이터베이스를 사용할 수 없습니다.

명령어를 치자 오류가 나는것을 볼 수 있죠


이번엔 로그인을 해보겠습니다.


이제 명령어가 잘 드는것을 볼 수 있습니다.


--auth 방식에서 처음 로그인할때는 

mongo -u 아이디 -p패스워드 데이터베이스이름

이렇게 로그인해주면 됩니다.


반응형

댓글