add piwik installation
This commit is contained in:
parent
90aa4ef157
commit
8c5d4f0c31
3197 changed files with 563902 additions and 0 deletions
147
www/analytics/core/Auth.php
Normal file
147
www/analytics/core/Auth.php
Normal file
|
|
@ -0,0 +1,147 @@
|
|||
<?php
|
||||
/**
|
||||
* Piwik - Open source web analytics
|
||||
*
|
||||
* @link http://piwik.org
|
||||
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
|
||||
*
|
||||
*/
|
||||
|
||||
namespace Piwik;
|
||||
|
||||
/**
|
||||
* Base for authentication modules
|
||||
*/
|
||||
interface Auth
|
||||
{
|
||||
/**
|
||||
* Authentication module's name, e.g., "Login"
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getName();
|
||||
|
||||
/**
|
||||
* Authenticates user
|
||||
*
|
||||
* @return AuthResult
|
||||
*/
|
||||
public function authenticate();
|
||||
|
||||
/**
|
||||
* Authenticates the user and initializes the session.
|
||||
*/
|
||||
public function initSession($login, $md5Password, $rememberMe);
|
||||
|
||||
/**
|
||||
* Accessor to set authentication token. If set, you can authenticate the tokenAuth by calling the authenticate()
|
||||
* method afterwards.
|
||||
*
|
||||
* @param string $token_auth authentication token
|
||||
*/
|
||||
public function setTokenAuth($token_auth);
|
||||
|
||||
/**
|
||||
* Accessor to set login name
|
||||
*
|
||||
* @param string $login user login
|
||||
*/
|
||||
public function setLogin($login);
|
||||
}
|
||||
|
||||
/**
|
||||
* Authentication result
|
||||
*
|
||||
*/
|
||||
class AuthResult
|
||||
{
|
||||
const FAILURE = 0;
|
||||
const SUCCESS = 1;
|
||||
const SUCCESS_SUPERUSER_AUTH_CODE = 42;
|
||||
|
||||
/**
|
||||
* token_auth parameter used to authenticate in the API
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $tokenAuth = null;
|
||||
|
||||
/**
|
||||
* The login used to authenticate.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $login = null;
|
||||
|
||||
/**
|
||||
* The authentication result code. Can be self::FAILURE, self::SUCCESS, or
|
||||
* self::SUCCESS_SUPERUSER_AUTH_CODE.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
protected $code = null;
|
||||
|
||||
/**
|
||||
* Constructor for AuthResult
|
||||
*
|
||||
* @param int $code
|
||||
* @param string $login identity
|
||||
* @param string $tokenAuth
|
||||
*/
|
||||
public function __construct($code, $login, $tokenAuth)
|
||||
{
|
||||
$this->code = (int)$code;
|
||||
$this->login = $login;
|
||||
$this->tokenAuth = $tokenAuth;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the login used to authenticate.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getIdentity()
|
||||
{
|
||||
return $this->login;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the token_auth to authenticate the current user in the API
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getTokenAuth()
|
||||
{
|
||||
return $this->tokenAuth;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the authentication result code.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function getCode()
|
||||
{
|
||||
return $this->code;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns true if the user has Super User access, false otherwise.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function hasSuperUserAccess()
|
||||
{
|
||||
return $this->getCode() == self::SUCCESS_SUPERUSER_AUTH_CODE;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns true if this result was successfully authentication.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function wasAuthenticationSuccessful()
|
||||
{
|
||||
return $this->code > self::FAILURE;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue