Módulo: Mongo::Monitoramento::Evento::Seguro
- Incluído em:
- CommandFailed, CommandStarted, CommandSucceeded, Protocol::Msg, Protocol::Query
- Definido em:
- build/ruby-driver-v2.19/lib/mongo/monitoring/event/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.
[ 'autenticar', 'saslStart', 'sasl Continue', 'getnonce', '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.
106 107 108 |
# File 'build/ruby-driver-v2.19/lib/mongo/monitoring/event/secure.rb', linha 106 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.
83 84 85 86 87 88 89 90 91 92 93 |
# File 'build/ruby-driver-v2.19/lib/mongo/monitoring/event/secure.rb', linha 83 def editado(command_name, documento) se %w(1 true sim).incluir?(ENV['MONGO_RUBY_DRIVER_UNREDACT_EVENTS']&.downcase) documento elsif respond_to?(:started_event) && started_event.sensível Método BSON::Documento.Novo elsif 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.
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'build/ruby-driver-v2.19/lib/mongo/monitoring/event/secure.rb', linha 52 def sensível?(command_name:, Documento:) se redacted_commands.incluir?(command_name.to_s) true elsif %w(olá isMaster isMaster).incluir?(command_name.to_s) && documento['speculativeAuthenticate'] então # 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-monitoring/command-monitoring.rst#security true mais false end end |