J1.5 talk

Difference between revisions of "Creating an Authentication Plugin for Joomla"

From Joomla! Documentation

(New page: A google search on 'joomla onauthenticate example' returns this tutorial so I suspect many people tasked with configuring a Joomla! 1.5 system to authenticate a user login against a databa...)

The link to http://api.joomla.org/Joomla-Framework/User/JAuthenticationResponse.html is not displayed correctly.

Revision as of 11:24, 16 November 2009

A google search on 'joomla onauthenticate example' returns this tutorial so I suspect many people tasked with configuring a Joomla! 1.5 system to authenticate a user login against a database external to Joomla's will no doubt arrive here and use the code presented as a starting point to implementing their own auth plugin. At least that is what happend to me!

In this tutorial it says that the example is based on example.php, which can be found in the plugins/authentication directory of your Joomla installation.

After scratching my head and wondering if I could be any dumber than I already am, I noted the following differences between the code in the tutorial and the code in the plugins/authentication/example.php file in my Joomla 1.5.13 installation.

In fact, the code is so different that it may explain why I have had so much trouble implementing the simple process of authenticating against a table in another MySQL database on the same machine.

Would someone be so kind as to confirm that these differences are problematic or deconfuse me on this issue? Please bear in mind that I'm a perl guy drowning in php.

There are two issues:

1. The constructors for the plugin are defined differently.

Tutorial:

function plgAuthenticationMyauth(& $subject) {

parent::__construct($subject);

}

example.php:

function plgAuthenticationExample(& $subject, $config) {

parent::__construct($subject, $config);

}

2. The definitions of the parameters that onAuthenticate expects are different.

Tutorial:

The onAuthenticate() method is the method that will be called when the system is trying to use your plugin to authenticate the user. This method will be passed three parameters: the username, the password, and a reference to an object of type JAuthenticationResponse