Я пытаюсь изменить пароль на мэйнфрейме z/OS, к которому подключаюсь по FTPS. Работаю с устаревшей кодовой базой и пытаюсь избавиться от exec-вызовов cURL. Вы заметите, что все сертификаты пропускаются при старом вызове...
$exec_string = "CURL -q -v -k -S --ftp-ssl-reqd \"ftp://" . $hold_user['dm_ftphost'] . "/\" --user " . $hold_user['dm_ftpuser'] . ":" . $hold_user['dm_ftppass'] . "/" . $new_pass . "/" . $new_pass . " -Q \"cdup\"";
Мне не удалось перевести это в PHP-модуль cURL. Я пробовал разные комбинации CURLOPT_USER, CURLOPT_PASS и CURLOPT_USERPWD.
В качестве примера того, что я пробовал...
public function updatePassword($newPass) {
$options = [
CURLOPT_URL => "ftp://" . $this->credentials->getField(Ftp_Credentials::HOST),
CURLOPT_USERPWD => $this->credentials->getField(Ftp_Credentials::USER, ret_aes_pass()) . ":" . $this->credentials->getField(Ftp_Credentials::PASS, ret_aes_pass())
. "/{$newPass}/{$newPass}"
];
return $this->returnSetResult($this->curl($options));
}
Я знаю, что мне нужно обновить свой пароль при входе в систему, поэтому я могу использовать несколько вариантов.
Ниже приведены варианты для каждого соединения cURL, которое я делаю, на случай, если одно из них мешает мне установить новый пароль.
(Я закомментировал CURLOPT_USERNAME и CURLOPT_PASSWORD, когда тестировал вышеуказанную функцию)
$options += [
CURLOPT_FORBID_REUSE => true,
CURLOPT_FTP_USE_EPSV => false,
CURLOPT_FTP_SKIP_PASV_IP => true,
CURLOPT_USERNAME => $this->credentials->getField(Ftp_Credentials::USER, AES_KEY),
CURLOPT_PASSWORD => $this->credentials->getField(Ftp_Credentials::PASS, AES_KEY),
CURLOPT_PORT => $this->credentials->getField(Ftp_Credentials::PORT),
CURLOPT_VERBOSE => true,
CURLOPT_FAILONERROR => true,
//CURLOPT_FOLLOWLOCATION => true,
CURLOPT_TIMEOUT => 15,
// SSL options for secure connection
CURLOPT_FTP_SSL => CURLFTPSSL_ALL, // Use SSL/TLS for FTP
CURLOPT_FTPSSLAUTH => CURLFTPAUTH_TLS, // Authenticate using TLS
CURLOPT_SSLVERSION => CURL_SSLVERSION_TLSv1_2, // Use TLS 1.2 explicitly
CURLOPT_SSL_VERIFYPEER => true, // Verify the peer's SSL certificate
CURLOPT_SSL_VERIFYHOST => self::SSL_VERIFY_HOST_ENABLED, // Verify the host's name matches the SSL certificate
CURLOPT_CAINFO => PATH_CA_BUNDLE // Path to your CA certificate bundle
];
Подробнее здесь: https://stackoverflow.com/questions/795 ... url-module
Обновление пароля z/OS с помощью модуля PHP cURL ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1766955142
Anonymous
Я пытаюсь изменить пароль на мэйнфрейме z/OS, к которому подключаюсь по FTPS. Работаю с устаревшей кодовой базой и пытаюсь избавиться от exec-вызовов cURL. Вы заметите, что все сертификаты пропускаются при старом вызове...
$exec_string = "CURL -q -v -k -S --ftp-ssl-reqd \"ftp://" . $hold_user['dm_ftphost'] . "/\" --user " . $hold_user['dm_ftpuser'] . ":" . $hold_user['dm_ftppass'] . "/" . $new_pass . "/" . $new_pass . " -Q \"cdup\"";
Мне не удалось перевести это в PHP-модуль cURL. Я пробовал разные комбинации CURLOPT_USER, CURLOPT_PASS и CURLOPT_USERPWD.
В качестве примера того, что я пробовал...
public function updatePassword($newPass) {
$options = [
CURLOPT_URL => "ftp://" . $this->credentials->getField(Ftp_Credentials::HOST),
CURLOPT_USERPWD => $this->credentials->getField(Ftp_Credentials::USER, ret_aes_pass()) . ":" . $this->credentials->getField(Ftp_Credentials::PASS, ret_aes_pass())
. "/{$newPass}/{$newPass}"
];
return $this->returnSetResult($this->curl($options));
}
Я знаю, что мне нужно обновить свой пароль при входе в систему, поэтому я могу использовать несколько вариантов.
Ниже приведены варианты для каждого соединения cURL, которое я делаю, на случай, если одно из них мешает мне установить новый пароль.
(Я закомментировал CURLOPT_USERNAME и CURLOPT_PASSWORD, когда тестировал вышеуказанную функцию)
$options += [
CURLOPT_FORBID_REUSE => true,
CURLOPT_FTP_USE_EPSV => false,
CURLOPT_FTP_SKIP_PASV_IP => true,
CURLOPT_USERNAME => $this->credentials->getField(Ftp_Credentials::USER, AES_KEY),
CURLOPT_PASSWORD => $this->credentials->getField(Ftp_Credentials::PASS, AES_KEY),
CURLOPT_PORT => $this->credentials->getField(Ftp_Credentials::PORT),
CURLOPT_VERBOSE => true,
CURLOPT_FAILONERROR => true,
//CURLOPT_FOLLOWLOCATION => true,
CURLOPT_TIMEOUT => 15,
// SSL options for secure connection
CURLOPT_FTP_SSL => CURLFTPSSL_ALL, // Use SSL/TLS for FTP
CURLOPT_FTPSSLAUTH => CURLFTPAUTH_TLS, // Authenticate using TLS
CURLOPT_SSLVERSION => CURL_SSLVERSION_TLSv1_2, // Use TLS 1.2 explicitly
CURLOPT_SSL_VERIFYPEER => true, // Verify the peer's SSL certificate
CURLOPT_SSL_VERIFYHOST => self::SSL_VERIFY_HOST_ENABLED, // Verify the host's name matches the SSL certificate
CURLOPT_CAINFO => PATH_CA_BUNDLE // Path to your CA certificate bundle
];
Подробнее здесь: [url]https://stackoverflow.com/questions/79581808/update-z-os-password-using-php-curl-module[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия