Módulo: Mongo::Monitoring::Event::Secure
- Incluido en:
- CommandFailed, CommandStarted, CommandSucceeded, Protocol::Msg, Protocol::Query
- Definido en:
- lib/mongo/monitoreo/evento/seguro.rb
Overview
Proporciona comportamiento para redactar información confidencial de comandos y respuestas.
Colapso delresumen constante
- COMANDOS REDACTADOS =
La lista de comandos cuyos datos están redactados por motivos de seguridad.
[ 'autenticar ', 'saslStart', 'saslContinuar ', 'getnonce', 'crearUsuario', 'updateUser', 'copydbgetnonce', 'copydbsaslstart', 'copydb' ].freeze
Colapso del resumen del método de instancia
-
#¿compresión_permitida?(nombre_del_comando) ⇒ verdadero, falso
¿Se permite la compresión para un mensaje de comando determinado?
-
#redactado(nombre_del_comando, documento) ⇒ BSON::Documento
Redacte información segura del documento si: - su comando está entre los comandos sensibles; - su comando es un comando hello/heredado hello, y la autenticación especulativa está habilitada; - el evento iniciado correspondiente es sensible.
-
#sensitive?(command_name:, document:) ⇒ true | false
Verifique si el comando es sensible en términos de la especificación de monitoreo de comandos.
Detalles del método de instancia
#¿compresión_permitida?(nombre_del_comando) ⇒ verdadero, falso
¿Se permite la compresión para un mensaje de comando determinado?
106 107 108 |
# Archivo 'lib/mongo/monitoring/event/secure.rb', línea 106 def ¿compresión_permitida?(nombre_del_comando) @compresión_permitida ||= !COMANDOS REDACTADOS.¿incluir?(nombre_del_comando.a_s) end |
#se ha redactado(command_name, documento) ⇒ BSON::Document
Redacta la información segura del documento si:
- its command is in the sensitive commands;
- its command is a hello/legacy hello command, and
speculative authentication is enabled;
- corresponding started event is sensitive.
83 84 85 86 87 88 89 90 91 92 93 |
# Archivo 'lib/mongo/monitoring/event/secure.rb', línea 83 def redactado(nombre_del_comando, Documento) Si %w(1 true sí).¿incluir?(ENV['MONGO_RUBY_DRIVER_UNREDACT_EVENTS']&.mayúsculas y minúsculas) Documento elsif respond_to?(:evento_iniciado) && evento iniciado.sensible return BSON::Documento.Nuevo elsif ¿sensible?(nombre_del_comando: nombre_del_comando, documento: Documento) BSON::Documento.Nuevo else Documento end end |
#¿sensible?(nombre_comando:, documento:) ⇒ verdadero | falso
Comprueba si el comando es sensible según la especificación de monitorización de comandos. Un comando se detecta como sensible si está en la lista o si es un comando de saludo/saludo heredado, y la autenticación especulativa está habilitada.
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# Archivo 'lib/mongo/monitoring/event/secure.rb', línea 52 def ¿sensible?(nombre_del_comando:, documento:) Si COMANDOS REDACTADOS.¿incluir?(nombre_del_comando.a_s) true elsif %w(¡Hola Ismaster esMaestro).¿incluir?(nombre_del_comando.a_s) && Documento['Autenticación especulativa '] entonces # Según la especificación de Monitoreo de Comandos, para comandos hello/hello legacy # cuando speculativeAuthenticate está presente, sus comandos Y respuestas # DEBE ser eliminado de los eventos. # Consulta https://github.com/mongodb/specifications/blob/master/source/command-logging-and-monitoring/command-logging-and-monitoring.md#security true else false end end |