Added config parameter to allow self-signed certificates for the HTTP client

This commit is contained in:
Frederic Guillot 2016-06-05 15:42:22 -04:00
parent cd4c09c10a
commit cf7bac1860
5 changed files with 25 additions and 4 deletions

View File

@ -8,6 +8,7 @@ New features:
* Added menu entry to add tasks from all project views
* Add tasks in bulk from the board
* Add dropdown for projects
* Added config parameter to allow self-signed certificates for the HTTP client
Improvements:

View File

@ -163,6 +163,7 @@ class Client extends Base
if (DEBUG) {
$this->logger->debug('HttpClient: url='.$url);
$this->logger->debug('HttpClient: headers='.var_export($headers, true));
$this->logger->debug('HttpClient: payload='.$content);
$this->logger->debug('HttpClient: metadata='.var_export(@stream_get_meta_data($stream), true));
$this->logger->debug('HttpClient: response='.$response);
@ -201,7 +202,7 @@ class Client extends Base
'timeout' => self::HTTP_TIMEOUT,
'max_redirects' => self::HTTP_MAX_REDIRECTS,
'header' => implode("\r\n", $headers),
'content' => $content
'content' => $content,
)
);
@ -210,6 +211,14 @@ class Client extends Base
$context['http']['request_fulluri'] = true;
}
if (HTTP_VERIFY_SSL_CERTIFICATE === false) {
$context['ssl'] = array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true,
);
}
return $context;
}
}

View File

@ -128,8 +128,9 @@ defined('BRUTEFORCE_LOCKDOWN_DURATION') or define('BRUTEFORCE_LOCKDOWN_DURATION'
// See http://php.net/manual/en/session.configuration.php#ini.session.cookie-lifetime
defined('SESSION_DURATION') or define('SESSION_DURATION', 0);
// HTTP client proxy
// HTTP Client
defined('HTTP_PROXY_HOSTNAME') or define('HTTP_PROXY_HOSTNAME', '');
defined('HTTP_PROXY_PORT') or define('HTTP_PROXY_PORT', '3128');
defined('HTTP_PROXY_USERNAME') or define('HTTP_PROXY_USERNAME', '');
defined('HTTP_PROXY_PASSWORD') or define('HTTP_PROXY_PASSWORD', '');
defined('HTTP_VERIFY_SSL_CERTIFICATE') or define('HTTP_VERIFY_SSL_CERTIFICATE', true);

View File

@ -208,3 +208,6 @@ define('HTTP_PROXY_HOSTNAME', '');
define('HTTP_PROXY_PORT', '3128');
define('HTTP_PROXY_USERNAME', '');
define('HTTP_PROXY_PASSWORD', '');
// Set to false to allow self-signed certificates
define('HTTP_VERIFY_SSL_CERTIFICATE', true);

View File

@ -267,8 +267,8 @@ Session
define('SESSION_DURATION', 0);
```
HTTP client proxy
-----------------
HTTP Client
-----------
If external HTTP requests need to be sent through a proxy:
@ -279,6 +279,13 @@ define('HTTP_PROXY_USERNAME', '');
define('HTTP_PROXY_PASSWORD', '');
```
To allow self-signed certificates:
```php
// Set to false to allow self-signed certificates
define('HTTP_VERIFY_SSL_CERTIFICATE', true);
```
Various settings
----------------