mirror of
https://github.com/nextcloud/all-in-one.git
synced 2026-06-01 00:10:08 +00:00
Initial import
This commit is contained in:
34
php/src/Auth/AuthManager.php
Normal file
34
php/src/Auth/AuthManager.php
Normal file
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
namespace AIO\Auth;
|
||||
|
||||
use AIO\Data\ConfigurationManager;
|
||||
|
||||
class AuthManager {
|
||||
private const SESSION_KEY = 'aio_authenticated';
|
||||
private ConfigurationManager $configurationManager;
|
||||
|
||||
public function __construct(ConfigurationManager $configurationManager) {
|
||||
$this->configurationManager = $configurationManager;
|
||||
}
|
||||
|
||||
public function CheckCredentials(string $username, string $password) : bool {
|
||||
if($username === $this->configurationManager->GetUserName()) {
|
||||
return hash_equals($this->configurationManager->GetPassword(), $password);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function CheckToken(string $token) : bool {
|
||||
return hash_equals($this->configurationManager->GetToken(), $token);
|
||||
}
|
||||
|
||||
public function SetAuthState(bool $isLoggedIn) : void {
|
||||
$_SESSION[self::SESSION_KEY] = $isLoggedIn;
|
||||
}
|
||||
|
||||
public function IsAuthenticated() : bool {
|
||||
return isset($_SESSION[self::SESSION_KEY]) && $_SESSION[self::SESSION_KEY] === true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user