Docs Menu
Docs Home
/ / /
Ruby MongoDB ドライバー
/

ドライバーの互換性

項目一覧

  • MongoDB の互換性
  • Ruby 互換性
  • Rails/ActiveSupport の互換性
  • TLS/SSL 互換性
  • Atlas の互換性
  • mongo_kerberos 互換性
  • JRuby および Kerberos 認証
  • JRuby と TLS 接続

次の互換性テーブルは、特定のバージョンの MongoDB で使用するための MongoDB Ruby ドライバーの推奨バージョンを示しています。 指定されている場合を除き、指定されたドライバー バージョンは、対応するサーバー バージョンに追加された機能を公開または利用します。

MongoDB サーバーのリリースは通常下位互換性があります。つまり、特定のバージョンのドライバーは新しいバージョンのサーバーでは通常動作しますが、新しいバージョンのサーバーでリリースされた機能は利用されない可能性があります。

重要

MongoDB は、MongoDB Serverのサポート終了日(EOL)から 3 年間、MongoDB Server とドライバー間の互換性を確保します。MongoDB のリリースと EOL 日付の詳細については、 MongoDB ソフトウェア ライフサイクル スケジュールを参照してください。

最初の列は、ドライバーのバージョンの一覧です。他の列の「D」は、その MongoDB バージョンのサポートは非推奨であり、将来のドライバー バージョンでは削除されることを意味します。

Ruby ドライバー
MongoDB 8.0
MongoDB 7.0
MongoDB 6.0
MongoDB 5.0
MongoDB 4.4
MongoDB 4.2
MongoDB 4.0
MongoDB 3.6
MongoDB 3.4
MongoDB 3.2
MongoDB 3.0
MongoDB 2.6
2.21
2.20
2.19
2.18
2.17
2.16
D
D
D
D
2.15
2.14
2.13
[1]
2.12
2.11
[3]
2.10
2.9
2.8
2.7
2.6
2.5
[1] OCSP 検証はドライバー バージョン2.14として実装されています。
[2] シャーディングされたトポロジの SRV レコードのポーリングは、 ドライバー バージョン2.11の として実装されています。
[3]12クライアント側の暗号化は、ドライバー バージョン 2.12 以降で として実装されています。

ドライバーは MongoDB の古いバージョンをサポートしていません。

次の互換性テーブルは、MongoDB Ruby ドライバーのさまざまなバージョンでサポートされている Ruby のバージョンを示しています。

最初の列は、ドライバーのバージョンの一覧です。 列の「D」は、その Ruby バージョンのサポートが非推奨であることを意味します。

Ruby ドライバー
Ruby 3.2
Ruby 3.1
Ruby 3.0
Ruby 2.7
Ruby 2.6
Ruby 2.5
Ruby 2.4
Ruby 2.3
Ruby 2.2
Ruby 2.1
Ruby 2.0
Ruby 1.9
JRuby 9.4
JRuby 9.3
JRuby 9.2
JRuby 9.1
2.20から2.21
D
D
2.19
D
D
2.18
2.17
2.16
D
2.15
D
D
2.14
D
D
2.13
2.12
2.11
2.10
D
D
D
D
2.9
D
D
D
D
2.8
2.7
2.6

ドライバーは Ruby の古いバージョンをサポートしていません。

Ruby ドライバーは ActiveSupport に依存しません。 ただし、アプリケーションが ActiveSupport または Ruby on Rails を使用する場合、時間直列化のような動作を正しく行うには、ドライバーの ActiveSupport 互換性コードをロードする必要があります。

require 'mongo'
require 'mongo/active_support'

Mongoid 7.0.6以降を使用するアプリケーションでは、Mongoid が自動的にロードするため、ドライバーの ActiveSupport コードを明示的にロードする必要はありません。

ドライバーは、基礎となる Ruby openssl拡張機能でサポートされているプロトコルを利用します。 次に、 openssl拡張機能は通常、オペレーティング システムの OpenSSL ライブラリに存在する機能を公開します。

業界のベストプラクティスと一部の規制では、TLS 1.1以上の使用が必要です。 一部のオペレーティング システムまたはバージョンでは、これらの TLS バージョンをサポートするのに十分な新しい OpenSSL バージョンが提供されていない場合があります。

(高 Sierra)より古い macOS のユーザーは、10.13 rvm から Ruby をインストールする必要があります 、 Homebrew macports 、または別の類似したソース。Ruby-lang.org のインストール情報を 参照 その他のオプションについては、 を参照してください。

Linux またはその他の macOS Unix 以外の Unix のユーザーは、次のように OpenSSL バージョンを確認できます。

openssl version

バージョン番号が1.0.1未満の場合 TLS 1.1以降のサポートは利用できません。 ソリューションまたは新しいディストリビューションへのアップグレードについては、オペレーティング システムのベンダーに問い合わせてください。

次のコマンドを実行すると、Ruby インタープリタを確認できます。

ruby -e "require 'net/http'; require 'json'; puts JSON.parse(Net::HTTP.get(URI('https://www.howsmyssl.com/a/check')))['tls_version']"

X は >= 1である "TLS 1 .X" が表示されます。

TLS のバージョンとそのセキュリティへの影響の詳細については、以下を参照し てください

ドライバー バージョン MongoDB Atlas を使用する場合は、 以上が推奨されます。このバージョンでは、TLS 接続が使用される場合のパフォーマンスが大幅に向上し、すべての Atlas 接続が TLS を使用するためです。2.6.1

JRuby で実行中に Atlas 無料階層に接続する場合、 ドライバー バージョン 2.6.4以上と Java8 以上が必要です。

次の互換性テーブルは、特定のバージョンのドライバーで使用する mongo_kerberos ライブラリのバージョンを示しています。

Ruby ドライバー
mongo_kerberos   2.1
2.7 - 2.19

mongo_kerberos gem が JRuby での Kerberos 認証に使用される場合、TGP のシステム キャッシュ(例: kinitで取得された TGP と )。 JGSS ライブラリの他の使用もこの設定の影響を受けます。つまり、システム キャッシュ内のすべての TGP は Kerberos の認証情報を取得するためにも利用できます。

JRuby の制限による:

  • ECDSA サーバー証明書はサポートされていません。

  • OCSP エンドポイント チェックは実行されません。

戻る

インストール