문서 메뉴

문서 홈애플리케이션 개발MongoDB 매뉴얼

killAllSessionsByPattern

이 페이지의 내용

  • 정의
  • 구문
  • 명령 필드
  • 행동
  • 액세스 제어
  • 예제
killAllSessionsByPattern

killAllSessionsByPattern 명령은 지정된 패턴과 일치하는 모든 세션을 종료합니다. [1]

명령은 다음과 같은 구문을 가집니다:

db.runCommand(
{
killAllSessionsByPattern: [ <pattern>, ... ]
}
)

이 명령은 일치시킬 패턴을 지정하는 문서 배열을 사용합니다.

패턴
설명
{ lsid: { id : <UUID> } }
종료할 세션 ID의 UUID 부분을 지정합니다.
{ uid: <BinData> }
종료할 세션 소유자의 해시를 지정합니다.
{ users: [ { user: <user>, db: <dbname> }, ... ] }
종료할 세션의 소유자를 지정합니다. 추가 권한이 필요합니다. 액세스 제어를 참조하세요.
{ roles: [ { role: <role>, db: <dbname> }, ... ] }
종료할 세션의 소유자에게 할당된 역할을 지정합니다. 추가 권한이 필요합니다. 액세스 제어를 참조하세요.

모든 세션을 종료하려면 빈 배열을 지정합니다. [1]

기존 세션을 보려면 $listSessions 작업 또는 $listLocalSessions 를 참조하세요.

다음도 참조하세요.

[1](1, 2) killAllSessionsByPattern 작업은 준비된 상태의 트랜잭션 이 있는 세션을 무시합니다. 자세한 내용은 동작 을 참조하세요.

세션을 종료하면 세션에서 진행 중인 모든 작업이 종료되고 이러한 작업과 관련된 열려 있는 커서가 모두 닫힙니다.

종료된 세션은 여전히 현재 세션으로 나열될 수 있으며, 향후 작업에서 종료된 세션을 사용할 수 있습니다. 기존 세션을 보려면 $listSessions 작업 또는 $listLocalSessions 를 참조하세요.

killAllSessionsByPattern 작업은 준비된 상태의 트랜잭션 이 있는 세션을 무시합니다. 준비된 상태의 트랜잭션은 커밋 코디네이터가 "sendingPrepare" action 을 완료한 여러 샤드에 걸쳐 있는 쓰기 작업이 있는 트랜잭션을 나타냅니다.

배포에서 인증/권한 부여를 시행하는 경우 명령을 실행하려면 killAllSessionsByPattern killAnySession 권한 작업이 있어야 합니다.

users 또는 roles 포함하는 패턴의 경우 cluster 리소스에 대한 impersonate 조치를 부여하는 권한도 있어야 합니다.

참고

사용자는 killAnySession 권한 조치가 없어도 자신의 세션을 종료할 수 있습니다.

다음 작업은 모든 세션을 종료합니다.

db.runCommand( { killAllSessionsByPattern: [ ] } )

다음 작업은 지정된 uid 를 가지고 있고 소유자에게 지정된 역할이 있는 모든 세션을 종료합니다.

db.runCommand( { killAllSessionsByPattern: [
{ "uid" : BinData(0,"oBRA45vMY78p1tv6kChjQPTdYsnCHi/kA/fFMZTIV1o=") },
{ roles: [ { role: "readWrite", db: "test" } ] }
] } )
← killAllSessions