Módulo: Mongo::Monitoramento::Evento::Seguro
- Incluído em:
- CommandFailed, CommandStarted, CommandSucceeded, protocolo::Msg, protocolo::query, Tracing::OpenTelemetry::CommandTracer
- Definido em:
- lib/mongo/monitoring/ evento/secure.rb
Visão geral
Fornece comportamento para redigir informações confidenciais de comandos e respostas.
Colapsode resumo constante
- redacted_commands =
A lista de comandos que tem os dados editados por segurança.
%w[ autenticar saslStart sasl Continue pegue uma vez createUser updateUser copydbgetnonce copydbsaslstart copydb ].congelar
Recolhimento do Resumo do método de instância
-
#comparison_allowed?(command_name) ➤ verdadeiro, falso
A compactação é permitida para uma determinada mensagem de comando.
-
#redigido(command_name, document) ➤ BSON::Document
Reduzir informações seguras do documento se: - seu comando estiver nos comandos confidenciais; - seu comando é um comando hello/legacy hello e a autenticação especulativa está habilitada; - o evento iniciado correspondente é sensível.
-
#sensível?(command_name:, documento:) ➤ true | false
Verifique se o comando é sensível em termos de especificação de monitoramento de comando.
Detalhes do método de instância
#comparison_allowed?(command_name) ⇒ true, false
A compactação é permitida para uma determinada mensagem de comando.
96 97 98 |
# File 'lib/mongo/monitoring/ evento/secure.rb', linha 96 def compressão_allowed?(command_name) @compression_allowed ||= !redacted_commands.incluir?(command_name.to_s) end |
#redigido(command_name, document) ➤ BSON::Document
Reduzir informações seguras do documento se:
- 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.
75 76 77 78 79 80 81 82 83 84 |
# File 'lib/mongo/monitoring/ evento/secure.rb', linha 75 def editado(command_name, documento) Método documento se %w[1 true sim].incluir?(ENV['MONGO_RUBY_DRIVER_UNREDACT_EVENTS']&.downcase) se (respond_to?(:started_event) && started_event.sensível) || sensível?(command_name: command_name, Documento: documento) BSON::Documento.Novo mais documento end end |
#sensível?(command_name:, documento:) ➤ true | false
Verifique se o comando é sensível em termos de especificação de monitoramento de comando. Um comando é detectado como sensível se estiver na lista ou se for um comando hello/ legado hello e a autenticação especulativa estiver habilitada.
49 50 51 52 53 54 55 56 57 58 |
# File 'lib/mongo/monitoring/ evento/secure.rb', linha 49 def sensível?(command_name:, Documento:) Método true se redacted_commands.incluir?(command_name.to_s) # De acordo com a especificação do Monitoramento de Comando, para comandos de olá/olá legado # quando speculativeAuthenticate está presente, seus comandos E respostas # DEVE ser eliminado dos eventos. # Consulte https://github.com/mongodb/specifications/blob/master/source/command-logging-and-monitoring/command-logging-and-monitoring.md#security %w[olá isMaster isMaster].incluir?(command_name.to_s) && !!documento['speculativeAuthenticate'] end |