summaryrefslogtreecommitdiff
path: root/framework/cli/views/webapp/protected/components/UserIdentity.php
diff options
context:
space:
mode:
Diffstat (limited to 'framework/cli/views/webapp/protected/components/UserIdentity.php')
-rw-r--r--framework/cli/views/webapp/protected/components/UserIdentity.php33
1 files changed, 33 insertions, 0 deletions
diff --git a/framework/cli/views/webapp/protected/components/UserIdentity.php b/framework/cli/views/webapp/protected/components/UserIdentity.php
new file mode 100644
index 0000000..a9704e5
--- /dev/null
+++ b/framework/cli/views/webapp/protected/components/UserIdentity.php
@@ -0,0 +1,33 @@
+<?php
+
+/**
+ * UserIdentity represents the data needed to identity a user.
+ * It contains the authentication method that checks if the provided
+ * data can identity the user.
+ */
+class UserIdentity extends CUserIdentity
+{
+ /**
+ * Authenticates a user.
+ * The example implementation makes sure if the username and password
+ * are both 'demo'.
+ * In practical applications, this should be changed to authenticate
+ * against some persistent user identity storage (e.g. database).
+ * @return boolean whether authentication succeeds.
+ */
+ public function authenticate()
+ {
+ $users=array(
+ // username => password
+ 'demo'=>'demo',
+ 'admin'=>'admin',
+ );
+ if(!isset($users[$this->username]))
+ $this->errorCode=self::ERROR_USERNAME_INVALID;
+ else if($users[$this->username]!==$this->password)
+ $this->errorCode=self::ERROR_PASSWORD_INVALID;
+ else
+ $this->errorCode=self::ERROR_NONE;
+ return !$this->errorCode;
+ }
+} \ No newline at end of file