HttpAuthPlus: Authentication | Administration | Method Documentation
Administration with HttpAuthPlus
HttpAuthPlus can also be used for managing access to protected pages. It provides methods for adding, editing, and removing users from both flat-file & database authentication schemes.
There are a couple of things to keep in mind:
- All usernames and email addresses must be unique
- When using a flat-file scheme usernames, passwords & emails must not contain the '|' character as this is used as the field delimeter.
Adding Users:
Adding users is pretty simple, just make sure the user your adding has a unique username & email.Adding users to a flat-file:
$login = new HttpAuthPlus; // Creates a new instance of the HttpAuthPlus object
$login->setAuthType('file'); // Sets the Authentication scheme to file instead of the default database scheme $login->setAuthFile('/home/userdir/passwordfile'); // Sets the full path to the password file to add the user to $login->AddUser('username', 'password', 'user@whatever.com'); // Adds the user to the password fileAdding users to a database:
$login = new HttpAuthPlus; // Creates a new instance of the HttpAuthPlus object $login->setAuthEncrypt('crypt'); // Sets the Authentication Encryption to 'crypt' instead of the default 'plain-text' $login->setAuthRealm('HttpAuthPlus'); // Sets the text tp use for the Authentication Realm // sets the type of database to use $login->setDbHost('localhost'); // the hostname or IP of the database server $login->setDbUser('username'); // the username for connecting to the server $login->setDbPass('password'); // the password for connecting to the server $login->setDbName('databasename'); // the name of the database to use $login->setUsernameField('username_field'); // the name of the field that contains the username $login->setPasswordField('password_field'); // the name of the field that contains the password $login->setEmailField('email_field'); // the name of the field that contains the email address $login->setDbInitStr(); // builds the DSN string; must be called after initializing the database variables $login->setTableName('tablename'); // the name of the table that stores usernames,passwords,emails $login->AddUser('username', 'password', 'user@whatever.com'); // adds the user to the databaseRefer to Method Documentation for further details and options for administrative functions.
Editing Users:
HttpAuthPlus has the ability to change every aspect of a user record, including the username. In order to do this, the username and/or email an existing user is changing to must not already exist. In order to change a user's username and/or email, the original username and email along with the new username and email must be passed to the EditUser() method.Editing a user record in a flat-file:
$login = new HttpAuthPlus; // Creates a new instance of the HttpAuthPlus object $login->setAuthType('file'); // Sets the Authentication scheme to file instead of the default database scheme $login->setAuthEncrypt('crypt'); // Sets the Authentication Encryption to 'crypt' instead of the default 'plain-text' $login->setAuthFile('/home/userdir/passwords'); // Sets the full path to the password file to add the user to $login->EditUser('currentusername', 'newusername', 'password', 'currentemail', 'newemail'); // carries out the actual updating of the user recordEditing a user record in a database:
$login = new HttpAuthPlus; // Creates a new instance of the HttpAuthPlus object $login->setAuthEncrypt('crypt'); // Sets the Authentication Encryption to 'crypt' instead of the default 'plain-text' $login->setAuthRealm('HttpAuthPlus'); // Sets the text tp use for the Authentication Realm // sets the type of database to use // the hostname or IP of the database server $login->setDbUser('username'); // the username for connecting to the server $login->setDbPass('password'); // the password for connecting to the server $login->setDbName('databasename'); // the name of the database to use $login->setUsernameField('username_field'); // the name of the field that contains the username // the name of the field that contains the password $login->setEmailField('email_field'); // the name of the field that contains the email address $login->setDbInitStr(); // builds the DSN string; must be called after initializing the database variables // the name of the table that stores usernames,passwords,emails $login->EditUser('currentusername', 'newusername', 'password', 'currentemail', 'newemail'); // carries out the actual updating of the user recordRefer to Method Documentation for further details and options for administrative functions.
Removing Users:
Using HttpAuthPlus to remove a user is simple, create a new instance of the HttpAuthPlus obejct, set some parameters, and call the RmUser() method with a username as the argument.Removing a user from a flat-file:
$login = new HttpAuthPlus; // Creates a new instance of the HttpAuthPlus object $login->setAuthType('file'); // Sets the Authentication scheme to file instead of the default database scheme $login->setAuthEncrypt('crypt'); // Sets the Authentication Encryption to 'crypt' instead of the default 'plain-text' $login->setAuthFile('/home/userdir/passwords'); // Sets the full path to the password file to add the user to // carries out the actual removal of the userRemoving a user from a database:
$login = new HttpAuthPlus; // Creates a new instance of the HttpAuthPlus object $login->setAuthEncrypt('crypt'); // Sets the Authentication Encryption to 'crypt' instead of the default 'plain-text' $login->setAuthRealm('HttpAuthPlus'); // Sets the text tp use for the Authentication Realm // sets the type of database to use $login->setDbHost('localhost'); // the hostname or IP of the database server $login->setDbUser('username'); // the username for connecting to the server $login->setDbPass('password'); // the password for connecting to the server $login->setDbName('databasename'); // the name of the database to use $login->setUsernameField('username_field'); // the name of the field that contains the username // the name of the field that contains the password $login->setEmailField('email_field'); // the name of the field that contains the email address $login->setDbInitStr(); // builds the DSN string; must be called after initializing the database variables $login->setTableName('tablename'); // the name of the table that stores usernames,passwords,emails // carries out the actual removal of the userRefer to Method Documentation for further details and options for administrative functions.
HttpAuthPlus: Authentication | Administration | Method Documentation