Docs Menu
Docs Home
/ / /
Java Sync Driver
/ /

SOCKS5 プロキシを使用した MongoDB への接続

項目一覧

  • Overview
  • SOCKS 5プロキシ設定
  • MongoClientSettings でのプロキシ設定の指定
  • 接続stringでのプロキシ設定の指定
  • API ドキュメント

このガイドでは、SOCKS 5プロキシを使用して MongoDB に接続する方法を学習できます。 SOCKS 5は、プロキシ サーバーを介してネットワーク サービスで通信するための標準化プロトコルです。

Tip

SOCKS5 プロトコルの詳細については、 Wikipedia の SOCKS に関するエントリを参照してください。

プロキシ設定では、SOCKS 5プロキシ サーバーのアドレスと認証情報を指定します。 設定は、 MongoClientSettingsのインスタンスまたは接続stringで指定できます。

重要

次のいずれかに当てはまる場合、ドライバーはプロキシ設定を無視します。

  • Unix ドメイン ソケットが通信を処理します。 詳細については、 UnixServerAddress のドキュメントを参照してください。

  • TransportSettings は構成されています。 詳細については、 TransportSettings のドキュメントを参照してください。

次の表では、SOCKS 5クライアント オプションについて説明します。

名前
許容値
説明
proxyHost
文字列
SOCKS 5プロキシ IPv 4アドレス、IPv 6アドレス、またはホスト名を指定します。 SOCKS 5プロキシに接続するには、この値を指定する必要があります。
proxyPort
非負整数
SOCKS 5プロキシ サーバーの TCP ポート番号を指定します。 このオプションは、 proxyHostを設定するとデフォルトで1080になります。
proxyUsername
文字列
SOCKS 5プロキシ サーバーへの認証に使用するユーザー名を指定します。 ドライバーは、この設定の null と空のstring値を無視します。 ドライバーでは、 proxyUsernameproxyPasswordの両方の値を渡すか、両方の値を省略する必要があります。
proxyPassword
文字列
SOCKS 5プロキシ サーバーへの認証用パスワードを指定します。 ドライバーは、この設定の null と空のstring値を無視します。 ドライバーでは、 proxyUsernameproxyPasswordの両方の値を渡すか、両方の値を省略する必要があります。

次の例は、SOCKS 5プロキシを使用して MongoDB に接続するMongoClientをインスタンス化する方法を示しています。 プロキシ設定は、MongoClientSettings インスタンスまたは 接続stringで指定できます。 これらの例では、「 SOCKS 5プロキシ設定」セクションで説明されているプレースホルダー値を使用します。 プレースホルダーをプロキシ設定で置き換えます。

次のコード例は、 MongoClientSettingsビルダーを使用して SOCKS 5プロキシ設定を指定する方法を示しています。

MongoClient mongoClient = MongoClients.create(
MongoClientSettings.builder()
.applyConnectionString(
new ConnectionString("mongodb+srv://myDatabaseUser:myPassword@example.org/"))
.applyToSocketSettings(builder ->
builder.applyToProxySettings(proxyBuilder ->
proxyBuilder
.host("<proxyHost>")
.port(<proxyPort>)
.username("<proxyUsername>")
.password("<proxyPassword>")
)
).build());

次のコード例は、 接続stringで SOCKS5 プロキシ設定を指定する方法を示しています。

String connectionString = "mongodb+srv://myDatabaseUser:myPassword@example.org/" +
"?proxyHost=<proxyHost>" +
"&proxyPort=<proxyPort>" +
"&proxyUsername=<proxyUsername>" +
"&proxyPassword=<proxyPassword>";
MongoClient mongoClient = MongoClients.create(connectionString);

このガイドで説明するメソッドとタイプの詳細については、次の API ドキュメントを参照してください。

戻る

接続での TLS/SSL の有効化