사용자 생성 및 역할 추가 방법 MongoDB
MongoDB 관리자 사용자 생성
사용자 관리자 생성 MongoDB createUser 메서드를 사용하여 수행됩니다. 다음 예는 이것이 어떻게 수행될 수 있는지 보여줍니다.
db.createUser( { user: "Guru99", pwd: "password", roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})
코드 설명 :
- 첫 번째 단계는 생성해야 하는 "사용자 이름"과 "비밀번호"를 지정하는 것입니다.
- 두 번째 단계는 사용자에게 역할을 할당하는 것입니다. 데이터베이스 관리자여야 하므로 "userAdminAnyDatabase" 역할을 할당했습니다. 이 역할을 통해 사용자는 모든 데이터베이스에 대한 관리 권한을 가질 수 있습니다. MongoDB.
- db 매개변수는 특수 메타 데이터베이스인 관리 데이터베이스를 지정합니다. MongoDB 이 사용자에 대한 정보를 보유하고 있습니다.
명령이 성공적으로 실행되면 다음과 같은 출력이 표시됩니다.
출력:
출력에는 "Guru99"라는 사용자가 생성되었으며 해당 사용자가 다음의 모든 데이터베이스에 대한 권한을 가지고 있음이 표시됩니다. MongoDB.
MongoDB 단일 데이터베이스에 대한 사용자 생성
단일 데이터베이스를 관리할 사용자를 생성하려면 위에서 언급한 것과 동일한 명령을 사용할 수 있지만 “userAdmin” 옵션만 사용해야 합니다.
다음 예는 이것이 어떻게 이루어지는지 보여줍니다.
db.createUser( { user: "Employeeadmin", pwd: "password", roles:[{role: "userAdmin" , db:"Employee"}]})
코드 설명 :
- 첫 번째 단계는 생성해야 하는 "사용자 이름"과 "비밀번호"를 지정하는 것입니다.
- 두 번째 단계는 사용자에게 역할을 할당하는 것입니다. 이 경우 데이터베이스 관리자여야 하므로 "userAdmin" 역할에 할당됩니다. 이 역할을 통해 사용자는 db 옵션에 지정된 데이터베이스에 대해서만 관리 권한을 가질 수 있습니다.
- db 매개변수는 사용자가 관리 권한을 가져야 하는 데이터베이스를 지정합니다.
명령이 성공적으로 실행되면 다음과 같은 출력이 표시됩니다.
출력:
출력에는 "Employeeadmin"이라는 사용자가 생성되었으며 해당 사용자는 "Employee" 데이터베이스에 대해서만 권한이 있음이 표시됩니다.
사용자 관리
먼저 정의해야 하는 역할을 이해하세요. 사용할 수 있는 전체 역할 목록이 있습니다. MongoDB. 예를 들어, 데이터베이스에 대한 읽기 전용 액세스만 허용하는 "읽기 역할"이 있고 데이터베이스에 대한 읽기 및 쓰기 액세스를 제공하는 "읽기 쓰기" 역할이 있습니다. 이는 사용자가 삽입, 삭제 및 삽입을 실행할 수 있음을 의미합니다. 해당 데이터베이스의 컬렉션에 대한 명령을 업데이트합니다.
db.createUser( { user: "Mohan", pwd: "password", roles:[ { role: "read" , db:"Marketing"}, { role: "readWrite" , db:"Sales"} } ] })
위의 코드 조각은 Mohan이라는 사용자가 생성되었으며 그에게 여러 데이터베이스에서 여러 역할이 할당되었음을 보여줍니다. 위의 예에서 그에게는 "Marketing" 데이터베이스에 대한 읽기 전용 권한이 부여되고 "Sales" 데이터베이스에 대한 읽기/쓰기 권한이 부여됩니다.