Merge pull request #82 from alejandroliu/mod_basicauth
Address issue #58
This commit is contained in:
@@ -24,6 +24,31 @@ class OC_User_BasicAuth extends \OCA\user_external\Base {
|
||||
* @return true/false
|
||||
*/
|
||||
public function checkPassword($uid, $password) {
|
||||
/*
|
||||
* Connect without user/name password to make sure
|
||||
* URL is indeed authenticating or not...
|
||||
*/
|
||||
stream_context_set_default(array(
|
||||
'http'=>array(
|
||||
'method'=>"GET",
|
||||
))
|
||||
);
|
||||
$canary = get_headers($this->authUrl, 1);
|
||||
if(!$canary) {
|
||||
OC::$server->getLogger()->error(
|
||||
'ERROR: Not possible to connect to BasicAuth Url: '.$this->authUrl,
|
||||
['app' => 'user_external']
|
||||
);
|
||||
return false;
|
||||
}
|
||||
if (!isset(array_change_key_case($canary, CASE_LOWER)['www-authenticate'])) {
|
||||
OC::$server->getLogger()->error(
|
||||
'ERROR: Mis-configured BasicAuth Url: '.$this->authUrl.', provided URL does not do authentication!',
|
||||
['app' => 'user_external']
|
||||
);
|
||||
return false;
|
||||
}
|
||||
|
||||
stream_context_set_default(array(
|
||||
'http'=>array(
|
||||
'method'=>"GET",
|
||||
|
||||
Reference in New Issue
Block a user