Включить TLS 1.2 для функций ldap_ * в PHP 5.3 - PullRequest
0 голосов
/ 10 октября 2018

Наша кодовая база подключается к нашей Active Directory через функции ldap_*.Я только что узнал сегодня утром, что они подключаются к нашей AD по TLS 1.0.

Вопрос 1 : Есть ли способ заставить функции ldap_* подключаться по TLS 1.2?

Другая информация:

  • Windows 2012 R2
  • PHP 5.3
  • IIS 8.5

Я пробовал поискать в Googleнапример " enable" tls 1.2 "был бесполезен.Я нашел комментарии в трех местах, в которых говорится, что Windows 2012 R2 не поддерживает TLS 1.2 через LDAPS и отключает TLS 1.2, но ... это противоположно тому, что яхочу, и до сих пор не было проблем с , а не , в частности, с отключением TLS 1.2 в базе кода.

Дополнительный вопрос : функции ldap_* все еще не работаютподдержка TLS 1.2 в Windows 2012 R2 с PHP?

1 Ответ

0 голосов
/ 10 октября 2018

Я разговаривал с другом, который гораздо лучше осведомлен о безопасности, чем я.

Сфера моего вопроса была слишком узкой, и проблема возникла из-за версии PHP, на которой я работаю.

Чтобы PHP безопасно подключался к Active Directory, он использует библиотеку OpenSSL.Поддержка TLS 1.1 / 1.2 в OpenSSL появилась в версии 1.0.1.PHP 5.3 поставляется с v0.9.8.

Мой друг предложил мне подделать TLS 1.1 и заставить использовать функции ldap, например:

define('LDAP_OPT_X_TLS_PROTOCOL_MIN', 24583);
define('LDAP_OPT_X_TLS_PROTOCOL_SSL2', 512);
define('LDAP_OPT_X_TLS_PROTOCOL_SSL3', 768);
define('LDAP_OPT_X_TLS_PROTOCOL_TLS1_0', 769);
define('LDAP_OPT_X_TLS_PROTOCOL_TLS1_1', 770);
define('LDAP_OPT_X_TLS_PROTOCOL_TLS1_2', 771);

и

ldap_set_option($handler, LDAP_OPT_X_TLS_PROTOCOL_MIN, LDAP_OPT_X_TLS_PROTOCOL_TLS1_1);

Но у меня это не сработало.

Я попытался использовать более новые версии OpenSSL с 5.3, но они тоже не сработали.Похоже, что действительно единственное решение - это обновление до более новой версии PHP, минимум 5.6.

Существует возможность использования сторонней библиотеки, но это червь, который я решил не открывать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...