モジュール: Mongo::Monitoring::Event::Secure

次のドキュメントに含まれます。
CommandFailed, CommandStarted, CommandSucceeded, Protocol::Msg, Protocol::Query
定義:
lib/mongo/monitoring/ イベント/secure.rb

Overview

コマンドと応答からの機密情報をリダクションするための動作を提供します。

以来

  • 2.1.0

定数の概要の削減

REDIRECT_COMMANDS =

セキュリティのためにリダクションされたデータを持つコマンドのリスト。

以来

  • 2.1.0

[
  '認証',
  'saslStart',
   saslContinue ,
  'getnonce',
  ' createUser ',
  'updateUser',
  'copydbgetnonce',
  'copydbsaslstart',
  'copydb'
].freeze

インスタンス メソッドの概要を折りたたむ

インスタンス メソッドの詳細

圧縮_許可されていますか? (command_name) = truefalse

特定のコマンド メッセージで圧縮が許可されています。

例:

特定の コマンドで圧縮が許可されているかどうかを判断します。

secure.compression_allowed?(selector)

パラメーター:

  • command_name ( stringSymbol )

    コマンド名。

次の値を返します。

  • truefalse

    圧縮を使用できるかどうか。

以来

  • 2.5.0



106
107
108
# ファイル 'lib/mongo/monitoring/ イベント/secure.rb' 行 106

デフォルト Compression_allowed?(command_name)
  @compression_allowed ||= !REDIRECT.include?(command_name.to_s)
end

編集済み(command_name, ドキュメント) = BSON::Document

次の場合は、ドキュメントから安全な情報を編集します。

- 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.

例:

リダクションされたドキュメントを取得します。

secure.redacted(command_name, document)

パラメーター:

  • command_name ( stringSymbol )

    コマンド名。

  • ドキュメント BSON::Document

    ドキュメント。

次の値を返します。

  • BSON::Document

    編集されたドキュメント。

以来

  • 2.1.0



83
84
85
86
87
88
89
90
91
92
93
# ファイル 'lib/mongo/monitoring/ イベント/secure.rb' 行 83

デフォルト 編集済み(command_name, ドキュメント)
  場合 %w(1 true はい).include?(ENV['MONGO_RUBY_DRIVER_UNREDACT_EVENTS']&.ダウンケース)
    ドキュメント
  elsif respond_to?(:started_event) & & start_event.機密
    return BSON::ドキュメント.新着情報
  elsif 区別するかどうか(command_name: command_name, ドキュメント: ドキュメント)
    BSON::ドキュメント.新着情報
  else
    ドキュメント
  end
end

#を区別するかどうか(command_name:, document:) = true | false

コマンドが コマンド監視仕様 で区別されるかどうかを確認します。 コマンドは、リストにある場合、または hello/レガシー hello コマンドであり、推測的認証が有効になっている場合は、機密性の高いコマンドとして検出されます。

パラメーター:

  • command_name ( stringSymbol )

    コマンド名。

  • ドキュメント BSON::Document

    ドキュメント。

次の値を返します。

  • true | false

    コマンドが区別されるかどうか。

以来

  • 2.1.0



52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# ファイル 'lib/mongo/monitoring/ イベント/secure.rb' 行 52

デフォルト 区別するかどうか(command_name:, ドキュメント:)
  場合 REDIRECT.include?(command_name.to_s)
    true
  elsif %w(Hello is マスター isマスター).include?(command_name.to_s) & &
    ドキュメント['推測的認証']
    次に
    # コマンド モニタリング 仕様による、hello/レガシー hello コマンドの場合
    推測的認証が存在する場合、そのコマンドは AND として応答されます。
    : イベントから編集する必要があります。
    次を参照してください: https://github.com/mongodb/specions/lob/ Master/source/command-loging-and-monitoring/command-loging-and-monitoring.md#security
    true
  else
    false
  end
end