문서 메뉴
문서 홈
/
MongoDB 매뉴얼
/ / /

usersInfo

이 페이지의 내용

  • 정의
  • usersInfo: <various>
  • 필요한 액세스 권한
  • 출력
  • 예제
usersInfo

한 명 이상의 사용자에 대한 정보를 반환합니다.

usersInfo 명령의 형식은 다음과 같습니다.

{
usersInfo: <various>,
showCredentials: <Boolean>,
showPrivileges: <Boolean>,
showAuthenticationRestrictions: <Boolean>,
filter: <document>,
comment: <any>
}

명령에는 다음과 같은 필드가 있습니다.

필드
유형
설명
usersInfo
다양한

정보를 반환할 사용자입니다.

usersInfo 에 대한 인수는 요청된 정보에 따라 여러 형식을 갖습니다. 자세한 내용은 usersInfo: <various>를 참조하세요.

showCredentials
부울
선택 사항. 사용자의 비밀번호 해시를 표시하려면 필드를 true(참)로 설정하세요. 기본적으로 이 필드는 false 입니다.
showPrivileges
부울

선택 사항입니다. 상속된 역할에 대한 확장된 정보를 포함하여 사용자의 전체 권한 세트를 표시하려면 true 로 설정합니다.

기본적으로 이 필드는 false입니다.

모든 사용자를 보는 경우에는 이 필드를 지정할 수 없습니다.

showAuthenticationRestrictions
부울

선택 사항입니다. 사용자의 인증 제한을 표시하려면 true로 설정합니다.

기본적으로 이 필드는 false입니다.

모든 사용자를 보는 경우에는 이 필드를 지정할 수 없습니다.

filter
문서
선택 사항. 필터 조건과 일치하는 사용자에 대한 정보를 반환하기 위해 $match 단계 조건을 지정하는 문서입니다.
comment
어떤

선택 사항. 이 명령에 첨부할 사용자 제공 코멘트입니다. 설정되면 이 설명은 다음 위치에서 이 명령의 레코드와 함께 표시됩니다.

댓글은 유효한 모든 BSON types (문자열, 정수, 객체, 배열 등)이 될 수 있습니다.

{ usersInfo: <various> }

usersInfo에 대한 인수는 요청된 정보에 따라 여러 형식을 갖습니다.

논의
반환
{ usersInfo: 1 }

명령이 실행되는 데이터베이스의 사용자에 대한 정보를 반환합니다.

mongosh 는 이 명령 호출을 위한 db.getUsers() 헬퍼를 제공합니다.

{ usersInfo: <username> }

명령이 실행된 데이터베이스에 존재하는 특정 사용자에 대한 정보를 반환합니다.

mongosh 는 이 명령 호출을 위한 db.getUser() 헬퍼를 제공합니다.

{ usersInfo: { user: <name>, db: <db> } }
이름과 데이터베이스로 지정된 사용자에 대한 정보를 반환합니다.
{ usersInfo: [ { user: <name>, db: <db> }, ... ] }
{ usersInfo: [ <username1>, ... ] }
지정된 사용자에 대한 정보를 반환합니다.
{ forAllDBs: true }
모든 데이터베이스의 사용자에 대한 정보를 반환합니다.

사용자는 언제든지 자신의 정보를 볼 수 있습니다.

다른 사용자의 정보를 보려면 명령을 실행하는 사용자에게 다른 사용자의 데이터베이스에 대한 viewUser 작업이 포함된 권한이 있어야 합니다.

지정된 옵션에 따라 usersInfo 에서 다음 정보를 반환할 수 있습니다.

{
"users" : [
{
"_id" : "<db>.<username>",
"userId" : <UUID>,
"user" : "<username>",
"db" : "<db>",
"mechanisms" : [ ... ],
"customData" : <document>,
"roles" : [ ... ],
"credentials": { ... }, // only if showCredentials: true
"inheritedRoles" : [ ... ], // only if showPrivileges: true or showAuthenticationRestrictions: true
"inheritedPrivileges" : [ ... ], // only if showPrivileges: true or showAuthenticationRestrictions: true
"inheritedAuthenticationRestrictions" : [ ] // only if showPrivileges: true or showAuthenticationRestrictions: true
"authenticationRestrictions" : [ ... ] // only if showAuthenticationRestrictions: true
},
...
],
"ok" : 1
}

"home" 데이터베이스에 정의된 사용자 "Kari"에 대해 자격 증명을 제외한 정보 및 권한을 보려면 다음 명령을 실행합니다.

db.runCommand(
{
usersInfo: { user: "Kari", db: "home" },
showPrivileges: true
}
)

현재 데이터베이스에 있는 사용자를 보려면 이름으로만 사용자를 지정할 수 있습니다. 예를 들어 home 데이터베이스에 있고 home 데이터베이스에 "Kari"라는 사용자가 있는 경우 다음 명령을 실행할 수 있습니다.

db.getSiblingDB("home").runCommand(
{
usersInfo: "Kari",
showPrivileges: true
}
)

여러 사용자에 대한 정보를 보려면 선택적 필드 showPrivilegesshowCredentials를 포함하거나 포함하지 않는 배열을 사용합니다. 예를 들면 다음과 같습니다.

db.runCommand( {
usersInfo: [ { user: "Kari", db: "home" }, { user: "Li", db: "myApp" } ],
showPrivileges: true
} )

명령이 실행되는 데이터베이스의 모든 사용자를 보려면 다음과 유사한 명령 문서를 사용합ㄴㅣ다.

db.runCommand( { usersInfo: 1 } )

모든 사용자를 볼 때 showCredentials 옵션은 지정할 수 있지만 showPrivileges 또는 showAuthenticationRestrictions 옵션은 지정할 수 없습니다.

usersInfo 명령은 filter 문서를 허용하여 필터 조건과 일치하는 사용자에 대한 정보를 반환할 수 있습니다.

현재 데이터베이스에서 지정된 역할을 가진 모든 사용자를 보려면 다음과 유사한 명령 문서를 사용합니다.

db.runCommand( { usersInfo: 1, filter: { roles: { role: "root", db: "admin" } } } )

모든 사용자를 볼 때 showCredentials 옵션은 지정할 수 있지만 showPrivileges 또는 showAuthenticationRestrictions 옵션은 지정할 수 없습니다.

usersInfo 명령은 filter 문서를 허용하여 필터 조건과 일치하는 사용자에 대한 정보를 반환할 수 있습니다.

다음 작업은 SCRAM-SHA-1 자격 증명이 있는 모든 사용자를 반환합니다. 특히 이 명령은 모든 데이터베이스의 모든 사용자를 반환한 다음 $match 단계를 사용하여 지정된 필터를 사용자에게 적용합니다.

db.runCommand( { usersInfo: { forAllDBs: true}, filter: { mechanisms: "SCRAM-SHA-1" } } )

모든 사용자를 볼 때 showCredentials 옵션은 지정할 수 있지만 showPrivileges 또는 showAuthenticationRestrictions 옵션은 지정할 수 없습니다.

돌아가기

updateUser

다음

역할 관리