MongoDB\Driver\Manager::__construct

(mongodb >=1.0.0)

MongoDB\Driver\Manager::__construct β€” Π‘ΠΎΠ·Π΄Π°Ρ‘Ρ‚ Π½ΠΎΠ²ΠΎΠ³ΠΎ MongoDB-ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°

ОписаниС

final public function MongoDB\Driver\Manager::__construct(?string $uri = null, ?array $uriOptions = null, ?array $driverOptions = null)

ΠœΠ΅Ρ‚ΠΎΠ΄ создаёт Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ MongoDB\Driver\Manager с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π’ » спСцификации ΠΏΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΡŽ ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ сСрвСра, этот конструктор Π½Π΅ выполняСт Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°. БоСдинСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° выполняСтся пСрвая опСрация.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π»ΡŽΠ±Ρ‹Ρ… URI-ΠΎΠΏΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ связаны с SSL ΠΈΠ»ΠΈ TLS, Ρ‡Π΅Ρ€Π΅Π· строку ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ uriOptions, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ нСявно Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ TLS ΠΏΡ€ΠΈ соСдинСниях. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ это, Π»ΠΈΠ±ΠΎ явно ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΎΠΏΡ†ΠΈΡŽ tls, Π»ΠΈΠ±ΠΎ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… TLS-ΠΎΠΏΡ†ΠΈΠΉ.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: На ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Unix ΠΌΠΎΠ΄ΡƒΠ»ΡŒ чувствитСлСн ΠΊ сцСнариям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ систСмный Π²Ρ‹Π·ΠΎΠ² fork() Π±Π΅Π· ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° exec(). ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π½Π΅ рСкомСндуСтся ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ экзСмпляр класса MongoDB\Driver\Manager Π² Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅ΠΌ процСссС. child process.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

uri

URI-адрСс ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ » mongodb://:

mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[defaultAuthDb][?options]]

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "mongodb://127.0.0.1:27017", Ссли Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… рассказываСт Ρ€Π°Π·Π΄Π΅Π» »  ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ строки ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² руководствС MongoDB. »  ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡƒΠ»Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΏΡƒΠ»Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ.

uri β€” это URL, поэтому Π»ΡŽΠ±Ρ‹Π΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы Π² Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ… Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π² соотвСтствии » RFC 3986. Π­Ρ‚ΠΎ особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ для ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ пароля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ часто ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ @, :, ΠΈΠ»ΠΈ %. ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹ΠΉ сокСт Unix, ΠΏΡƒΡ‚ΡŒ сокСта ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ слСши, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Ѐункция rawurlencode() ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для кодирования составных частСй URI-адрСса.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ defaultAuthDb ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для указания ΠΈΠΌΠ΅Π½ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, связанной с ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ; ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ URI authSource Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Ссли ΠΎΠ½ ΡƒΠΊΠ°Π·Π°Π½. Если Π½ΠΈ defaultAuthDb, Π½ΠΈ authSource Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹, Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… admin Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ defaultAuthDb Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысла ΠΏΡ€ΠΈ отсутствии ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

uriOptions

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ » парамСтры строки ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ с Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ uri.

uriOptions
НазваниС ΠΎΠΏΡ†ΠΈΠΈ Π’ΠΈΠΏ ОписаниС
appname string

Π’ MongoDB 3.4+ появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΊ соСдинСниям с ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, прСдоставляСмыми ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΌΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ. Π­Ρ‚ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² ΠΆΡƒΡ€Π½Π°Π»Ρ‹ логирования сСрвСра ΠΏΡ€ΠΈ установлСнии соСдинСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΆΡƒΡ€Π½Π°Π»Ρ‹ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… запросов, Ссли Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π­Ρ‚Π° опция ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для указания ΠΈΠΌΠ΅Π½ΠΈ прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Ρ‚ΡŒ 128 символов.

authMechanism string

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ MongoDB Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ соСдинСния. Для просмотра Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свСдСний ΠΈ списка ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, смотритС Ρ€Π°Π·Π΄Π΅Π» Β»Β ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π² руководствС MongoDB.

authMechanismProperties array

Бвойства для Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Для просмотра Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свСдСний ΠΈ списка ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, смотритС Ρ€Π°Π·Π΄Π΅Π» » БпСцификация Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Если Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π° Π² строкС URI-адрСса, эта опция прСдставляСтся Π² Π²ΠΈΠ΄Π΅ массива ΠΏΠ°Ρ€ ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. ΠšΠ»ΡŽΡ‡ΠΈ ΠΈ значСния Π² этом массивС Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ строками.

authSource string

Имя Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, связанноС с ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· URI-адрСса соСдинСния ΠΈΠ»ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… admin, Ссли ΠΎΠ±Π° Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹.

Для ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π΅Π³ΠΈΡ€ΡƒΡŽΡ‚ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΠΌ слуТбам (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, GSSAPI), Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ "$external".

compressors string

ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΉ список Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… запятыми компрСссоров, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ трСбуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ. БообщСния сТаты, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π»ΡŽΠ±Ρ‹Π΅ компрСссоры, Π° компрСссор, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ, Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ сСрвСра ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π΄Π°Ρ‘Ρ‚ страница » БпСцификация компрСссии Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

connectTimeoutMS int

ВрСмя оТидания Π² миллисСкундах ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ соСдинСния. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ 10 000 миллисСкунд.

directConnection bool

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ управляСт ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π½Π°Π±ΠΎΡ€Π° Ρ€Π΅ΠΏΠ»ΠΈΠΊ, Ссли Π² строкС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡƒΠΊΠ°Π·Π°Π»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ хост. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ прСдоставлСниС ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‡Π»Π΅Π½Π° Π² строкС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ устанавливаСтся прямоС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ обнаруТиваСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ количСство Ρ‡Π»Π΅Π½ΠΎΠ² Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΡƒΠΊΠ°Π·Π°Π»ΠΈ Π»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "replicaSet". Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ false для ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ обнаруТСния, Ссли опустили ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "replicaSet", ΠΈΠ»ΠΈ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ true, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ„ΠΎΡ€ΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ прямоС соСдинСниС, Ссли ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "replicaSet" ΡƒΠΊΠ°Π·Π°Π»ΠΈ.

enableOverloadRetargeting bool Если установлСно Π² true, форсируСт Π²Ρ‹Π±ΠΎΡ€ сСрвСра послС ошибки SystemOverloadedError. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.
heartbeatFrequencyMS int

Π—Π°Π΄Π°Ρ‘Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π² миллисСкундах ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°ΠΌΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Ρ‚ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈ MongoDB, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΊΠΎΠ½Ρ†Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ 60 000 миллисСкунд.

Богласно » БпСцификации ΠΏΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΡŽ ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Ρƒ сСрвСра, нСльзя ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ мСньшС 500 миллисСкунд.

journal bool

БоотвСтствуСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ записи journal. Если true, для записи Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎΡ‚ MongoDB, Ρ‡Ρ‚ΠΎ опСрация Π±Ρ‹Π»Π° записана Π² ΠΆΡƒΡ€Π½Π°Π». ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ смотритС MongoDB\Driver\WriteConcern.

loadBalanced bool

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΊ кластСру MongoDB Ρ‡Π΅Ρ€Π΅Π· балансировщик Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Если true, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΡƒΠ·Π»Ρƒ (ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ Π»ΠΈΠ±ΠΎ строкой ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π»ΠΈΠ±ΠΎ поиском SRV), ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ URI "directConnection" Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ true ΠΈ опция URI "replicaSet" Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡƒΡ‰Π΅Π½Π°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.

localThresholdMS int

Π Π°Π·ΠΌΠ΅Ρ€ Π² миллисСкундах ΠΎΠΊΠ½Π° Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ для Π²Ρ‹Π±ΠΎΡ€Π° срСди Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… подходящих экзСмпляров MongoDB ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ прСдпочтСния чтСния. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” 15 миллисСкунд.

maxAdaptiveRetries int ΠžΠΏΡ†ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для измСнСния максимального числа ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ошибки SystemOverloadedError. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ†Π΅Π»Ρ‹ΠΌ; ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 2.
maxStalenessSeconds int

БоотвСтствуСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ прСдпочтСния чтСния "maxStalenessSeconds". Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π² сСкундах, насколько ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½Ρ‹ΠΉ ΡƒΠ·Π΅Π» Π² Π½Π°Π±ΠΎΡ€Π΅ Ρ€Π΅ΠΏΠ»ΠΈΠΊ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ пСрСстанСт Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ чтСния. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ максимальноС отставаниС Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ (staleness) ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ отставаниС Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΡƒΠ·Π»Π° ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ направлСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ чтСния. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом рассказано Π² описании класса MongoDB\Driver\ReadPreference.

Если ΡƒΠΊΠ°Π·Π°Π½Π°, максимальноС отставаниС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ 32-Π±ΠΈΡ‚Π½Ρ‹ΠΌ Ρ†Π΅Π»Ρ‹ΠΌ числом, большим ΠΈΠ»ΠΈ Ρ€Π°Π²Π½Ρ‹ΠΌ MongoDB\Driver\ReadPreference::SMALLEST_MAX_STALENESS_SECONDS (Ρ‚. Π΅. 90 сСкунд).

password string ΠŸΠ°Ρ€ΠΎΠ»ΡŒ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π­Ρ‚Π° опция ΠΏΠΎΠ»Π΅Π·Π½Π°, Ссли ΠΏΠ°Ρ€ΠΎΠ»ΡŒ содСрТит ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ для URI-адрСса ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.
readConcernLevel string БоотвСтствуСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ чтСния level ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ изоляции чтСния. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ смотритС MongoDB\Driver\ReadConcern.
readPreference string

БоотвСтствуСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ прСдпочтСниям чтСния mode По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” "primary". ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ смотритС MongoDB\Driver\ReadPreference.

readPreferenceTags array

БоотвСтствуСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ прСдпочтСниям чтСния tagSets. Наборы Ρ‚Π΅Π³ΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ чтСния для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ‡Π»Π΅Π½ΠΎΠ² Π½Π°Π±ΠΎΡ€Π° Ρ€Π΅ΠΏΠ»ΠΈΠΊΠΈ. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ смотритС MongoDB\Driver\ReadPreference.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Если Π² строкС URI Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ прСдставляСтся ΠΊΠ°ΠΊ ΠΊΠ°ΠΊ массив, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ, ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡƒ MongoDB\Driver\ReadPreference::__construct().

replicaSet string

Π—Π°Π΄Π°Ρ‘Ρ‚ имя Π½Π°Π±ΠΎΡ€Π° Ρ€Π΅ΠΏΠ»ΠΈΠΊΠΈ.

retryReads bool

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ автоматичСски ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ чтСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΈΠ·-Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… сСтСвых ошибок ΠΈΠ»ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΎΠ² Π½Π°Π±ΠΎΡ€Π° Ρ€Π΅ΠΏΠ»ΠΈΠΊ. ВрСбуСтся MongoDB 3.6+. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ true.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Β»Β Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠΎ Retryable Reads для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

retryWrites bool

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ автоматичСски ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ записи, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΈΠ·-Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… сСтСвых ошибок ΠΈΠ»ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΎΠ² Π½Π°Π±ΠΎΡ€Π° Ρ€Π΅ΠΏΠ»ΠΈΠΊ. ВрСбуСтся MongoDB 3.6+. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ true.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ » Retryable Writes Π² руководствС MongoDB для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

serverSelectionTimeoutMS int

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ Π² миллисСкунд Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ сСрвСра ΠΏΠ΅Ρ€Π΅Π΄ выбросом ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” 30 000 миллисСкунд.

serverSelectionTryOnce bool

Π‘ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ true сообщаСт Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρƒ ΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π²Ρ‘Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ MongoDB Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· послС Π½Π΅ΡƒΠ΄Π°Ρ‡Π½ΠΎΠΉ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Π²Ρ‹Π±ΠΎΡ€Π° сСрвСра, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΠ»ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ сСрвСр, ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ. Π‘ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ false Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹Π±ΠΎΡ€ ΠΈ выполняСт поиск сСрвСра Π΄ΠΎ истСчСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Π»ΠΈ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ "serverSelectionTimeoutMS". Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ true.

socketCheckIntervalMS int

Если сокСт Π½Π΅ использовался Π² послСднСС врСмя, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ hello, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ для любой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” 5 000 миллисСкунд.

socketTimeoutMS int

ВрСмя Π² миллисСкундах, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π² сокСт Π΄ΠΎ истСчСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” 300 000 миллисСкунд (Ρ‚. Π΅. 5 ΠΌΠΈΠ½ΡƒΡ‚).

srvMaxHosts int

МаксимальноС количСство Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² SRV для случайного Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ посСвного списка ΠΈΠ»ΠΈ, Π²ΠΎ врСмя опроса SRV, ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²Ρ‹Ρ… ΡƒΠ·Π»ΠΎΠ² ΠΊ Ρ‚ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 0 (Ρ‚. Π΅. Π±Π΅Π· максимума).

srvServiceName string

Имя слуТбы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ для поиска SRV Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ спискС DNS seedlist обнаруТСния ΠΈ опроса SRV. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "mongodb".

tls bool

Π‘ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ true ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ соСдинСниС с TLS/SSL. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ false.

tlsAllowInvalidCertificates bool

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρƒ, Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ Π»ΠΈ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Ссли TLS-сСртификат сСрвСра нСдСйствитСлСн. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ false.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅

ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сСртификата создаёт ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ.

tlsAllowInvalidHostnames bool

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΏΡ€ΠΈ нСсоотвСтствии ΠΈΠΌΠ΅Π½ΠΈ хоста сСрвСра ΠΈ ΠΈΠΌΠ΅Π½ΠΈ хоста, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π² сСртификатС TLS. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅

ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сСртификата создаёт ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ нСдопустимых ΠΈΠΌΡ‘Π½ хоста ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π°Ρ‚Π°ΠΊΠ΅ Ρ‚ΠΈΠΏΠ° » "Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ посСрСдинС" (man-in-the-middle).

tlsCAFile string

ΠŸΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ с ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ»ΠΈ нСсколькими Ρ†Π΅Π½Ρ‚Ρ€Π°ΠΌΠΈ сСртификации, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ слСдуСт ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈ установлСнии соСдинСния TLS. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ систСмных сСртификатов.

tlsCertificateKeyFile string

ΠŸΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ сСртификата ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»Ρƒ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°; Π² случаС, Ссли ΠΎΠ½ΠΈ ΠΎΠ±Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹, Ρ„Π°ΠΉΠ»Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹.

tlsCertificateKeyFilePassword string

ΠŸΠ°Ρ€ΠΎΠ»ΡŒ для Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (Ρ‚. Π΅. ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° URI "tlsCertificateKeyFile"), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для соСдинСний TLS.

tlsDisableCertificateRevocationCheck bool

Если true, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ статус ΠΎΡ‚Π·Ρ‹Π²Π° сСртификата (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, OCSP, CRL). По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.

tlsDisableOCSPEndpointCheck bool

Если true, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΡΠ²ΡΠ·Π°Ρ‚ΡŒΡΡ с ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ ΠΎΡ‚Π²Π΅Ρ‚Π° OCSP, Ссли это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ OCSP Π½Π΅ ΡΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ). По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.

tlsInsecure bool

ΠžΡΠ»Π°Π±ΡŒΡ‚Π΅ ограничСния TLS Π² максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ стСпСни. ΠŸΡ€ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ true этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ эффСкт, Ρ‡Ρ‚ΠΎ ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ значСния true для ΠΎΠ±ΠΎΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² URI "tlsAllowInvalidCertificates" ΠΈ "tlsAllowInvalidHostnames". По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅

ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сСртификата создаёт ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ нСдопустимых ΠΈΠΌΡ‘Π½ хоста ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π°Ρ‚Π°ΠΊΠ΅ Ρ‚ΠΈΠΏΠ° » "Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ посСрСдинС" (man-in-the-middle).

username string Имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π­Ρ‚Π° опция ΠΏΠΎΠ»Π΅Π·Π½Π°, Ссли имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ содСрТит ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π² URL для URI-адрСса ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.
w int|string

БоотвСтствуСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ записи w. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ смотритС MongoDB\Driver\WriteConcern.

wTimeoutMS int|string

БоотвСтствуСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ записи wtimeout. Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ срок Π² миллисСкундах для Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ записи. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ смотритС MongoDB\Driver\WriteConcern.

Если ΡƒΠΊΠ°Π·Π°Π½, wTimeoutMS Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ 32-Π±ΠΈΡ‚Π½Ρ‹ΠΌ Ρ†Π΅Π»Ρ‹ΠΌ числом со Π·Π½Π°ΠΊΠΎΠΌ, большим ΠΈΠ»ΠΈ Ρ€Π°Π²Π½Ρ‹ΠΌ Π½ΡƒΠ»ΡŽ.

zlibCompressionLevel int

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ сТатия для использования zlib. Π­Ρ‚Π° опция Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ‚, Ссли zlib Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π² URL ΠΎΠΏΡ†ΠΈΠΈ "compressors". Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ » БпСцификация компрСссии Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

driverOptions

driverOptions
ΠžΠΏΡ†ΠΈΡ Π’ΠΈΠΏ ОписаниС
autoEncryption array

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ ΠΎΠΏΡ†ΠΈΠΈ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ автоматичСского ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ поля Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Бписок ΠΎΠΏΡ†ΠΈΠΉ описан Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:

АвтоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” функция Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Enterprise вСрсии, которая примСняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ опСрациям Π½Π°Π΄ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ. АвтоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ поддСрТиваСтся для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ прСдставлСниСм, Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ обходятся, ΠΏΡ€ΠΈΠ²Π΅Π΄ΡƒΡ‚ ΠΊ ошибкС (смотритС » libmongocrypt: Бписок Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π½Π° автоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅). Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ автоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ для всСх ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, установитС bypassAutoEncryption Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true.

АвтоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρƒ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π±Ρ‹Π»Π° привилСгия » listCollections.

Π―Π²Π½ΠΎΠ΅ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅/Π΄Π΅ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ автоматичСская Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° β€” это функция Community вСрсии. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ всС Π΅Ρ‰Ρ‘ ΠΌΠΎΠΆΠ΅Ρ‚ автоматичСски Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ, Ссли Ρƒ ΠΎΠΏΡ†ΠΈΠΈ bypassAutoEncryption установлСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true.

ca_dir string

ΠŸΡƒΡ‚ΡŒ ΠΊ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π·Π°Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ сСртификатов. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ систСмных сСртификатов.

crl_file string ΠŸΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ списка Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… сСртификатов.
disableClientPersistence bool

Π‘ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ true ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ libmongoc, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒΡΡ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Manager. Когда этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Manager освободится, Π΅Π³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ уничтоТится, Π° всС соСдинСния Π·Π°ΠΊΡ€ΠΎΡŽΡ‚ΡΡ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ false.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ сохранСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ рСкомСндуСтся.

driver array

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π±ΠΎΠ»Π΅Π΅ высокого уровня Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ свои ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΊ Ρ€ΡƒΠΊΠΎΠΏΠΎΠΆΠ°Ρ‚ΠΈΡŽ сСрвСра. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ отправляСт своё имя, Π²Π΅Ρ€ΡΠΈΡŽ ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ PHP-Π²Π΅Ρ€ΡΠΈΡŽ) ΠΏΡ€ΠΈ Ρ€ΡƒΠΊΠΎΠΏΠΎΠΆΠ°Ρ‚ΠΈΠΈ. Для ΠΊΠ»ΡŽΡ‡Π΅ΠΉ name, version ΠΈ platform этого массива ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ ΠΊ полям Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° рукопоТатия.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Ρ€ΡƒΠΊΠΎΠΏΠΎΠΆΠ°Ρ‚ΠΈΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° 512 Π±Π°ΠΉΡ‚Π°ΠΌΠΈ. ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±Ρ€Π΅ΠΆΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ рукопоТатия, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ этой 512-Π±Π°ΠΉΡ‚ΠΎΠ²ΠΎΠΉ строкС. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌ Π±ΠΎΠ»Π΅Π΅ высокого уровня рСкомСндуСтся ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ свои ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌΠΈ.

serverApi MongoDB\Driver\ServerApi

ΠžΠΏΡ†ΠΈΡ обновляСт Π²Π΅Ρ€ΡΠΈΡŽ API-интСрфСйса сСрвСра для ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°. Π‘Π΅Π· ΠΎΠΏΡ†ΠΈΠΈ API-вСрсия Π½Π΅ ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ.

ΠžΠΏΡ†ΠΈΠΈ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ автоматичСским ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ autoEncryption:

autoEncryption
ΠžΠΏΡ†ΠΈΡ Π’ΠΈΠΏ ОписаниС
keyVaultClient MongoDB\Driver\Manager ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ запросов ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ кластСр MongoDB. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΈ кластСр.
keyVaultNamespace string ПолноС пространство ΠΈΠΌΡ‘Π½ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "databaseName.collectionName"), ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π΅Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ, которая содСрТит всС ΠΊΠ»ΡŽΡ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π΄Π΅ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€.
kmsProviders array Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, содСрТащий ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ² KMS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ "aws", "azure", "gcp" ΠΈ "local", ΠΈ, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½. Если для "aws", "azure" ΠΈΠ»ΠΈ "gcp" ΡƒΠΊΠ°Π·Π°Π½ пустой Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ попытаСтся ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ » АвтоматичСскиС ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. Π€ΠΎΡ€ΠΌΠ°Ρ‚ для "aws" выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
aws: {
    accessKeyId: <string>,
    secretAccessKey: <string>,
    sessionToken: <optional string>
}
Π€ΠΎΡ€ΠΌΠ°Ρ‚ для "azure" выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
azure: {
    tenantId: <string>,
    clientId: <string>,
    clientSecret: <string>,
    identityPlatformEndpoint: <optional string> // По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "login.microsoftonline.com"

}
Π€ΠΎΡ€ΠΌΠ°Ρ‚ для "gcp" выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
gcp: {
    email: <string>,
    privateKey: <base64 string>|<MongoDB\BSON\Binary>,
    endpoint: <optional string> // По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "oauth2.googleapis.com"

}
Π€ΠΎΡ€ΠΌΠ°Ρ‚ для "kmip" выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
kmip: {
    endpoint: <string>
}
Π€ΠΎΡ€ΠΌΠ°Ρ‚ для "local" выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:
local: {
    // 96-Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ Π³Π»Π°Π²Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ/Π΄Π΅ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…
    key: <base64 string>|<MongoDB\BSON\Binary>
}
tlsOptions array Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, содСрТащий ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ TLS для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… KMS ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ². ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ "aws", "azure", "gcp" ΠΈ "kmip". ВсС ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΡ†ΠΈΠΈ:
<provider>: {
    tlsCaFile: <optional string>,
    tlsCertificateKeyFile: <optional string>,
    tlsCertificateKeyFilePassword: <optional string>,
    tlsDisableOCSPEndpointCheck: <optional bool>
}
schemaMap array|object

ΠšΠ°Ρ€Ρ‚Π° пространств ΠΈΠΌΡ‘Π½ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ схСму JSON. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для настройки автоматичСского ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ смотритС Π² Β»Β ΠŸΡ€Π°Π²ΠΈΠ»Π°Ρ… автоматичСского ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π² руководствС ΠΏΠΎ MongoDB. Ошибкой являСтся ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π² schemaMap, Ρ‚Π°ΠΊ ΠΈ Π² encryptedFieldsMap.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ schemaMap обСспСчиваСт Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ использованиС схСм JSON, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… с сСрвСра. Π­Ρ‚ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ΠΎΡ‚ врСдоносного сСрвСра, Ρ€Π΅ΠΊΠ»Π°ΠΌΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ Π»ΠΎΠΆΠ½ΡƒΡŽ схСму JSON, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π½Π΅Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Ρ‹.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π‘Ρ…Π΅ΠΌΡ‹, поставляСмыС Π² schemaMap, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для настройки автоматичСского ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π² схСмС JSON Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄ΡƒΡ‚ ΠΊ ошибкС.

bypassAutoEncryption bool Если true, mongocryptd Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ автоматичСски. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ автоматичСского ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.
bypassQueryAnalysis bool

Если true, автоматичСский Π°Π½Π°Π»ΠΈΠ· исходящих ΠΊΠΎΠΌΠ°Π½Π΄ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Ρ‘Π½ ΠΈ mongocryptd Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ автоматичСски. Π­Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ явноС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ для запроса индСксированных ΠΏΠΎΠ»Π΅ΠΉ Π±Π΅Π· нСобходимости использования Π»ΠΈΡ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ crypt_shared ΠΈΠ»ΠΈ процСсса mongocryptd. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ установлСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false.

encryptedFieldsMap array|object

ΠšΠ°Ρ€Ρ‚Π° пространств ΠΈΠΌΡ‘Π½ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ encryptedFields. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для настройки ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ запроса. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ » ШифрованиС ΠΏΠΎΠ»Π΅ΠΉ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запросов Π² руководствС ΠΏΠΎ MongoDB для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Ошибкой являСтся ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΊΠ°ΠΊ Π² encryptedFieldsMap, Ρ‚Π°ΠΊ ΠΈ Π² schemaMap.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ encryptedFieldsMap обСспСчиваСт Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° encryptedFields, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΎΡ‚ сСрвСра. Π­Ρ‚ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ΠΎΡ‚ Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ сСрвСра, Ρ€Π΅ΠΊΠ»Π°ΠΌΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ Π»ΠΎΠΆΠ½Ρ‹Π΅ encryptedFields.

extraOptions array

extraOptions относится ΠΊ процСссу mongocryptd. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

  • mongocryptdURI (string): URI для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ процСссу mongocryptd. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "mongodb://localhost:27020".
  • mongocryptdBypassSpawn (bool): Если true, ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ созданиС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ mongocryptd. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.
  • mongocryptdSpawnPath (string): ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ для поиска Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° mongocryptd. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ это пустая строка, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°Ρ систСмныС ΠΏΡƒΡ‚ΠΈ.
  • mongocryptdSpawnArgs (array): Массив строковых Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π² mongocryptd ΠΏΡ€ΠΈ создании. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ["--idleShutdownTimeoutSecs=60"].
  • cryptSharedLibPath (string): ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ ΠΎΠ±Ρ‰Π΅Π³ΠΎ доступа crypt_shared. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ β€” пустая строка ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ систСмныС ΠΏΡƒΡ‚ΠΈ.
  • cryptSharedLibRequired (bool): Если true, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π» crypt_shared. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ false.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ » Руководство ΠΏΠΎ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: АвтоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ корпоративная функция, которая примСняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ опСрациям Π½Π°Π΄ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ. АвтоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ поддСрТиваСтся для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ прСдставлСниСм, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ получится ΠΎΠ±ΠΎΠΉΡ‚ΠΈ, ΠΏΡ€ΠΈΠ²Π΅Π΄ΡƒΡ‚ ΠΊ ошибкС. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ автоматичСскоС ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ для всСх ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, установитС bypassAutoEncryption=true Π² autoEncryption. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½Π½Ρ‹Ρ… опСрациях смотритС » Руководство ΠΏΠΎ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

Ошибки

  • ΠŸΡ€ΠΈ ошибкС парсинга Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ выбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ MongoDB\Driver\Exception\InvalidArgumentException.
  • ΠŸΡ€ΠΈ Π½Π΅Π²Π΅Ρ€Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ uri выбрасываСт ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ MongoDB\Driver\Exception\RuntimeException.

Бписок измСнСний

ВСрсия ОписаниС
PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 2.0.0

Π£Π΄Π°Π»ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "canonicalizeHostname". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ свойство URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° "authMechanismProperties" β€” "CANONICALIZE_HOST_NAME".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "gssapiServiceName". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ свойство URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° "authMechanismProperties" β€” "SERVICE_NAME".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "safe" URI. ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ "w" ΠΈ "wTimeoutMS".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "ssl". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "tls".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "allow_invalid_hostname". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "tlsAllowInvalidHostnames".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "ca_file". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "tlsCAFile".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "context". ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ контСкста устарСли Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ связаны с TLS.

Π£Π΄Π°Π»ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "pem_file". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "tlsCertificateKeyFile".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "pem_pwd". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "tlsCertificateKeyFilePassword".

Π£Π΄Π°Π»ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "weak_cert_validation". ВмСсто Π½Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "tlsAllowInvalidCertificates".

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.16.0

ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ AWS KMS для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "sessionToken", ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ с Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ AWS.

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ "tlsDisableOCSPEndpointCheck" Π² ΠΏΠΎΠ»Π΅ "tlsOptions" поля "autoEncryption" ΠΎΠΏΡ†ΠΈΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ попытаСтся ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°, Π·Π°ΠΏΠΎΠ»Π½ΠΈΠ² » АвтоматичСскиС ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Ссли для KMS-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ² "azure" ΠΈΠ»ΠΈ "gcp" ΡƒΠΊΠ°Π·Π°Π»ΠΈ пустой Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.15.0

Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ попытаСтся ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°, Π·Π°ΠΏΠΎΠ»Π½ΠΈΠ² » АвтоматичСскиС ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Ссли для KMS-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° "aws" ΡƒΠΊΠ°Π·Π°Π»ΠΈ пустой Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.14.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΎΠΏΡ†ΠΈΠΈ автоматичСского ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ "bypassQueryAnalysis" ΠΈ "encryptedFieldsMap". Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΡ†ΠΈΠΈ, относящиСся ΠΊ crypt_shared, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΎΠΏΡ†ΠΈΠΈ автоматичСского ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ "extraOptions". option.

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.13.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ "srvMaxHosts" ΠΈ "srvServiceName".

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.12.0

KMIP Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ поддСрТиваСтся ΠΊΠ°ΠΊ KMS-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ настраиваСтся Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»Π΅ "kmsProviders" ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° "autoEncryption". ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ TLS для KMS-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ² Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΏΠΎΠ»Π΅ "tlsOptions" ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° "autoEncryption".

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.11.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "loadBalanced".

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.10.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "disableClientPersistence".

Azure ΠΈ GCP Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ поставщик KMS для ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ настроСны Π² ΠΏΠΎΠ»Π΅ "kmsProviders" ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° "autoEncryption". Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ Base64 Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° MongoDB\BSON\Binary для ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ "kmsProviders".

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.8.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ "directConnection", "tlsDisableCertificateRevocationCheck" ΠΈ "tlsDisableOCSPEndpointCheck".

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "driver".

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.7.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "autoEncryption".

Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ любой ΠΎΠΏΡ†ΠΈΠΈ SSL ΠΈΠ»ΠΈ TLS Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ driverOptions Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ нСявно Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ TLS, ΠΊΠ°ΠΊ это дСлаСтся для ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.6.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ "retryReads", "tls", "tlsAllowInvalidCertificates", "tlsAllowInvalidHostnames", "tlsCAFile", "tlsCertificateKeyFile", "tlsCertificateKeyFilePassword" ΠΈ "tlsInsecure".

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° "retryWrites" Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ true.

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° URI-ΠΎΠΏΡ†ΠΈΠΈ SSL ΠΈΠ»ΠΈ TLS Ρ‡Π΅Ρ€Π΅Π· строку ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ uriOptions Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ нСявно Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ TLS, ΠΏΡ€ΠΈ условии, Ссли значСния ssl ΠΈΠ»ΠΈ tls Π½Π΅ Ρ€Π°Π²Π½Ρ‹ false. TSL Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ нСявно для Π»ΡŽΠ±Ρ‹Ρ… ΠΎΠΏΡ†ΠΈΠΉ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ driverOptions, ΠΊΠ°ΠΊ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… вСрсиях.

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.5.0

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "wtimeoutMS" Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ всСгда провСряСтся ΠΈ примСняСтся ΠΊ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ записи. РаньшС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ игнорировался, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° "w" ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΎΡΡŒ <= 1, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ врСмя оТидания примСняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.4.0

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ "compressors", "retryWrites" ΠΈ "zlibCompressionLevel".

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.3.0

Π’ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π΅ uriOptions появились ΠΎΠΏΡ†ΠΈΠΈ "authMechanism" ΠΈ "authMechanismProperties". РаньшС эти ΠΎΠΏΡ†ΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π»ΠΈΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π΅ uri.

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.2.0

АргумСнт uri ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π²Π΅Π½ "mongodb://127.0.0.1/". ΠŸΠΎΡ€Ρ‚ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ измСнился β€” 27017.

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ "appname".

Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ "allow_invalid_hostname", "ca_file", "ca_dir", "clr_file", "pem_file", "pem_pwd" ΠΈ "weak_cert_validation".

API-интСрфСйс PHP-ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² большС Π½Π΅ задСйствуСтся для соСдинСния с сокСтом. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ URI-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° connectTimeoutMS ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π²Π½ΠΎ 10 сСкундам вмСсто значСния ΠΎΠΏΡ†ΠΈΠΈ default_socket_timeout, ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… вСрсиях. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ большС Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ SSL-контСкста Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° context.

PECL-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mongodb 1.1.0

АргумСнт uri стал Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π΅Π½ "mongodb://localhost:27017/".

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ #1 ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° MongoDB\Driver\Manager::__construct()

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌΡƒ ΡƒΠ·Π»Ρƒ MongoDB:

<?php

$manager
= new MongoDB\Driver\Manager("mongodb://example.com:27017");

?>

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌΡƒ ΡƒΠ·Π»Ρƒ Π‘Π£Π‘Π” MongoDB Ρ‡Π΅Ρ€Π΅Π· Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹ΠΉ сокСт Unix. ΠŸΡƒΡ‚ΡŒ сокСта допускаСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ слСшСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ трСбуСтся Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ rawurlencode().

<?php

$manager
= new MongoDB\Driver\Manager("mongodb://" . rawurlencode("/tmp/mongodb-27017.sock"));

?>

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π½Π°Π±ΠΎΡ€Ρƒ Ρ€Π΅ΠΏΠ»ΠΈΠΊ:

<?php

$manager
= new MongoDB\Driver\Manager("mongodb://rs1.example.com,rs2.example.com/?replicaSet=myReplicaSet");

?>

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ сСгмСнтированному кластСру (Ρ‚. Π΅. ΠΎΠ΄Π½Ρƒ ΠΈΠ»ΠΈ нСскольким экзСмплярам mongos):

<?php

$manager
= new MongoDB\Driver\Manager("mongodb://mongos1.example.com,mongos2.example.com/");

?>

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ MongoDB с ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…:

<?php

$manager
= new MongoDB\Driver\Manager("mongodb://myusername:mypassword@example.com/?authSource=databaseName");

?>

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ MongoDB с ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π³Π΄Π΅ имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈΠ»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ содСрТат ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, @, :, %). Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, строка с ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ myp@ss:w%rd Π±Ρ‹Π»Π° Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ экранирована; ΠΎΠ΄Π½Π°ΠΊΠΎ rawurlencode() ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для экранирования URI-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы.

<?php

$manager
= new MongoDB\Driver\Manager("mongodb://myusername:mypassword@example.com/?authSource=databaseName");

?>

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ MongoDB с Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ X509:

<?php

$manager
= new MongoDB\Driver\Manager(
"mongodb://example.com/?ssl=true&authMechanism=MONGODB-X509",
[],
[
"pem_file" => "/path/to/client.pem",
]
);
?>
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ 1 note

up
1
denys at bulakhweb dot com ΒΆ
8 years ago
Please note, if you send socketTimeoutMs value as 0 to disable timeout (according to MongoDB documentation), it will be considered as default value which is 300,000 ms in PHP driver. So send some really huge amount in case if you need to disable limitation.