db.getUser()
이 페이지의 내용
정의
db.getUser(username, args)
지정된 사용자에 대한 사용자 정보를 반환합니다. 사용자의 데이터베이스에서 이 메서드를 실행합니다. 사용자가 데이터베이스에 없으면
db.getUser()
(이)가null
(을)를 반환합니다.db.getUser()
메서드에는 다음과 같은 매개변수가 있습니다.db.getUser( "<username>", { showCredentials: <Boolean>, showCustomData: <Boolean>, showPrivileges: <Boolean>, showAuthenticationRestrictions: <Boolean>, filter: <document> } ) Parameter유형설명username
문자열정보를 검색할 사용자의 이름입니다.args
문서선택 사항입니다. 추가 인수를 지정하는 문서입니다.args
문서는 다음 필드를 지원합니다.필드유형설명showCredentials
부울선택 사항입니다. 사용자의 비밀번호 해시를 표시하려면
true
로 설정합니다.기본적으로 이 필드는
false
입니다.showCustomData
부울선택 사항입니다. 출력에서 사용자의
customData
를 생략하려면false
로 설정합니다.기본적으로 이 필드는
true
입니다.버전 5.2에 추가되었습니다.
showPrivileges
부울선택 사항입니다. 상속된 역할에 대한 확장된 정보를 포함하여 사용자의 전체 권한 세트를 표시하려면
true
로 설정합니다.기본적으로 이 필드는
false
입니다.모든 사용자를 보는 경우에는 이 필드를 지정할 수 없습니다.
showAuthenticationRestrictions
부울선택 사항입니다. 사용자의 인증 제한을 표시하려면
true
로 설정합니다.기본적으로 이 필드는
false
입니다.모든 사용자를 보는 경우에는 이 필드를 지정할 수 없습니다.
filter
문서선택 사항. 필터 조건과 일치하는 사용자에 대한 정보를 반환하기 위해$match
단계 조건을 지정하는 문서입니다.db.getUser()
은usersInfo: <username>
명령을 래핑합니다.출력에 대한 자세한 내용은
usersInfo
을(를) 참조하세요.
호환성
이 메서드는 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
중요
이 명령은 MongoDB Atlas 클러스터에서 지원되지 않습니다. 모든 명령에 대한 Atlas 지원 에 대한 자세한 내용은 지원되지 않는 명령을 참조하세요.
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
필요한 액세스 권한
다른 사용자의 정보를 확인하려면 다른 사용자의 데이터베이스에 viewUser
조치가 있어야 합니다.
사용자는 자신의 정보를 확인할 수 있습니다.
예시
다음 연산은 accounts
데이터베이스의 예시 appClient
사용자에 대한 정보를 반환합니다.
use accounts db.getUser("appClient")
출력 예시:
{ _id: 'accounts.appClient', userId: UUID("1c2fc1bf-c4dc-4a22-8b04-3971349ce0dc"), user: 'appClient', db: 'accounts', roles: [], mechanisms: [ 'SCRAM-SHA-1', 'SCRAM-SHA-256' ] }
출력에서 사용자 지정 데이터 생략
버전 5.2의 새로운 기능: db.getUser()
출력에서 사용자의 사용자 지정 데이터를 생략하려면 showCustomData
옵션을 false
(으)로 설정하세요.
createUser
명령을 사용하여 products
데이터베이스에 accountAdmin01
이라는 사용자를 생성합니다.
db.getSiblingDB("products").runCommand( { createUser: "accountAdmin01", pwd: passwordPrompt(), customData: { employeeId: 12345 }, roles: [ { role: 'readWrite', db: 'products' } ] } )
사용자에 { employeeId: 12345 }
의 customData
필드가 포함됩니다.
사용자를 조회하되 출력에서 사용자 지정 데이터를 생략하려면 showCustomData
를 false
로 설정한 상태에서 db.getUser()
를 실행합니다.
db.getSiblingDB("products").getUser( "accountAdmin01", { showCustomData: false } )
출력 예시:
{ _id: 'products.accountAdmin01', userId: UUID("0955afc1-303c-4683-a029-8e17dd5501f4"), user: 'accountAdmin01', db: 'products', roles: [ { role: 'readWrite', db: 'products' } ], mechanisms: [ 'SCRAM-SHA-1', 'SCRAM-SHA-256' ] }