Docs Menu
Docs Home
/ / /
Kotlin コルーチン
/ /

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

項目一覧

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

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

Tip

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

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

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

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

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

次のコード例は、 MongoClientSettingsインスタンスの作成時にapplyToSocketSettings()ビルダ メソッドを使用して SOCKS5 プロキシ設定を指定する方法を示しています。

val uri = "<connection string>"
val mongoClient = MongoClient.create(
MongoClientSettings.builder()
.applyConnectionString(ConnectionString(uri))
.applyToSocketSettings{ builder ->
builder
.applyToProxySettings{ proxyBuilder ->
proxyBuilder
.host("<proxyHost>")
.port("<proxyPort>".toInt())
.username("<proxyUsername>")
.password("<proxyPassword>")
.build()
}
}
.build()
)

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

val connectionString = ConnectionString(
"mongodb+srv://<user>:<password>@<cluster-url>/?" +
"proxyHost=<proxyHost>" +
"&proxyPort=<proxyPort>" +
"&proxyUsername=<proxyUsername>" +
"&proxyPassword=<proxyPassword>"
)
val mongoClient = MongoClient.create(connectionString)

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

戻る

TLS/SSL