grantRolesToUser
이 페이지의 내용
정의
grantRolesToUser
사용자에게 추가 역할을 부여합니다.
grantRolesToUser
명령은 다음 구문을 사용합니다.{ grantRolesToUser: "<user>", roles: [ <roles> ], writeConcern: { <write concern> }, comment: <any> } 명령에는 다음과 같은 필드가 있습니다.
필드유형설명grantRolesToUser
문자열추가 역할을 부여할 사용자의 이름입니다.roles
배열사용자에게 부여할 추가 역할의 배열입니다.writeConcern
문서선택 사항. 작업에 대한 쓰기 고려 수준입니다. 쓰기 고려 사양을 참조하세요.
comment
어떤선택 사항. 이 명령에 첨부할 사용자 제공 코멘트입니다. 설정되면 이 설명은 다음 위치에서 이 명령의 레코드와 함께 표시됩니다.
mongod 로그 메시지(
attr.command.cursor.comment
필드).데이터베이스 프로파일러 출력의
command.comment
필드에 있습니다.currentOp
{command.comment
5} 필드에 출력을 입력합니다.
댓글은 유효한 모든 BSON types (문자열, 정수, 객체, 배열 등)이 될 수 있습니다.
roles
필드에서 기본 제공 역할과 사용자 정의 역할을 모두 지정할 수 있습니다.grantRolesToUser
가 실행되는 동일한 데이터베이스에 존재하는 역할을 지정하려면 역할의 이름과 함께 역할을 지정할 수 있습니다."readWrite" 또는 다음과 같이 문서로 역할을 지정할 수도 있습니다.
{ role: "<role>", db: "<database>" } 다른 데이터베이스에 존재하는 역할을 지정하려면 문서를 사용하여 역할을 지정합니다.
필요한 액세스 권한
예제
다음 역할이 있는 products
데이터베이스에는 accountUser01
사용자가 지정됩니다.
"roles" : [ { "role" : "assetsReader", "db" : "assets" } ]
다음 grantRolesToUser
작업은 accountUser01
에 stock
데이터베이스에 대한 read
역할을 부여하고 products
데이터베이스에 대한 readWrite
역할을 부여합니다.
use products db.runCommand( { grantRolesToUser: "accountUser01", roles: [ { role: "read", db: "stock"}, "readWrite" ], writeConcern: { w: "majority" , wtimeout: 2000 } } )
이제 products
데이터베이스의 accountUser01
사용자에게는 다음 역할이 있습니다.
"roles" : [ { "role" : "assetsReader", "db" : "assets" }, { "role" : "read", "db" : "stock" }, { "role" : "readWrite", "db" : "products" } ]