db.getUsers()
이 페이지의 내용
정의
db.getUsers(<options>)
데이터베이스의 모든 사용자에 대한 정보를 반환합니다.
db.getUsers()
는usersInfo: 1
명령을 래핑합니다.db.getUsers()
메서드는 다음과 같은 옵션을 사용할 수 있습니다.db.getUsers( { showCredentials: <Boolean>, showCustomData: <Boolean>, filter: <document> } ) 필드유형설명showCredentials
부울선택 사항입니다. 사용자의 비밀번호 해시를 표시하려면
true
로 설정합니다.기본적으로 이 필드는
false
입니다.showCustomData
부울선택 사항입니다. 출력에서 사용자의
customData
를 생략하려면false
로 설정합니다.기본적으로 이 필드는
true
입니다.버전 5.2에 추가되었습니다.
filter
문서선택 사항입니다. 필터 조건과 일치하는 사용자에 대한 정보를 반환하기 위해$match
단계 조건을 지정하는 문서입니다.자세한 내용은
usersInfo
를 참조하세요.
필요한 액세스 권한
다른 사용자의 정보를 확인하려면 다른 사용자의 데이터베이스에 viewUser
조치가 있어야 합니다.
사용자는 자신의 정보를 확인할 수 있습니다.
예시
지정된 필터와 일치하는 데이터베이스의 모든 사용자 보기
db.getUsers()
메서드는 filter
문서를 수신하여 필터 조건과 일치하는 사용자에 대한 정보를 반환할 수 있습니다.
현재 데이터베이스에 대해 SCRAM-SHA-256
자격 증명을 가진 모든 사용자를 보려면 다음과 같이 하세요:
db.getUsers({ filter: { mechanisms: "SCRAM-SHA-256" } })
모든 사용자를 볼 때 showCredentials
옵션은 지정할 수 있지만 showPrivileges
또는 showAuthenticationRestrictions
옵션은 지정할 수 없습니다.
출력에서 사용자 지정 데이터 생략
버전 5.2에 새로 추가됨: db.getUsers()
출력에서 사용자의 사용자 지정 데이터를 생략하려면 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.getUsers()
를 실행합니다.
db.getSiblingDB("products").getUsers( { showCustomData: false } )
출력 예시:
{ users: [ { _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' ] } ], ok: 1 }