Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

killAllSessionsByPattern (comando de base de datos)

killAllSessionsByPattern

El comando finaliza todas las sesiones que coincidan con cualquiera de los patrones killAllSessionsByPattern especificados. []1

El comando tiene la siguiente sintaxis:

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

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Importante

Este comando no es compatible con los clústeres M0 y Flex. Para obtener más información, consulta Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

El comando toma un arreglo de documentos que especifican los patrones a hacer coincidir:

Patrón
Descripción

{ lsid: { id : <UUID> } }

Especifica la parte UUID del ID de sesión a finalizar.

{ uid: <BinData> }

Especifica el hash del propietario de las sesiones a eliminar.

{ users: [ { user: <user>, db: <dbname> }, ... ] }

Specifies the owners of the sessions to kill. Requires additional privileges. See Access Control.

{ roles: [ { role: <role>, db: <dbname> }, ... ] }

Specifies the roles assigned to the owners of the sessions to kill. Requires additional privileges. See Access Control.

Especifica un arreglo vacío para finalizar todas las sesiones. [1]

Para ver las sesiones existentes, consulta la operación $listSessions o $listLocalSessions.

[1](,1 2) La killAllSessionsByPattern operación ignora las sesiones que tienen transacciones en estado preparado. Consulte Comportamiento para obtener más detalles.

Eliminar una sesión termina cualquier operación en progreso en la sesión y cierra todos los cursores abiertos asociados con estas operaciones.

La sesión matada puede seguir apareciendo como una sesión actual, y las operaciones futuras pueden utilizar la sesión matada. Para ver las sesiones existentes, consulta la $listSessions operación o la $listLocalSessions.

The killAllSessionsByPattern operation ignores sessions that have Transactions in prepared state. Transactions in prepared state refer to transactions with write operations that span multiple shards whose commit coordinator has completed the "sendingPrepare" action.

If the deployment enforces authentication/authorization, you must have the killAnySession privilege action to run the killAllSessionsByPattern command.

Para patrones que incluyan users o roles, también debes tener privilegios que concedan la acción impersonate en el recurso del clúster.

Nota

Los usuarios pueden finalizar sus propias sesiones incluso sin la acción de privilegio killAnySession.

La siguiente operación mata todas las sesiones:

db.runCommand( { killAllSessionsByPattern: [ ] } )

La siguiente operación elimina todas las sesiones que tienen el uid especificado y cuyo propietario tiene el rol especificado:

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