In the medium term I'd like to use a single authentication system for a series services on deanbrook.org including mediawiki. My goals are to integrate a suite of services appropriate for a community-based portal. This is a volunteer (non-profit) service for our town. Initially I am setting up WordPress and MediaWiki.
Authentication is especially important to me because I have a policy that in order to post you not only have to be registered you also have to be using your real name.
To start I thought it would be easiest for users if at least have both systems use the same username and password. In this synched authentication each system maintains their current user tables and changes are synched between the two however a user would have to login again when starting one service
What this means is that whenever someone registers (or updates their password or profile) on one system a call is made to the other application with the new information so that this system can also update their table data.
What would be better in the longer term is to have an external user and authentication module that presented a common UI along with managing session information, and user access-control/permissions. In addition I could better handle registrations from kids under 13. In the US there is a federal law which requires parent permission.
A hybrid approach is also possible where I integrate the two systems and end up using one schema.
I'm looking for comments, pointers, or implementations.
I'm also looking for a web community focused on design and discussion of community portals (not as much the nuts and bolts but how they actually work in a community and what services people use).
Thanks
On 11 Apr 2005, at 08:02, Stephen Bannasch wrote:
In the medium term I'd like to use a single authentication system for a series services on deanbrook.org including mediawiki.
You need to analyze which system most tightly grasps its user information (high internal cohesion), and that is probably the one to modify. If one of your systems is rather loosely bound, that should be the system you're feeding info to.
I managed to turn MediaWiki 1.4b5 into a general-purpose membership database. I changed the login screen to require first and last names, which I stuff into new fields, then concat to make the MediaWiki user name. I pre-loaded the user database with the membership info, which had been in a spreadsheet, by exporting as CSV, then importing into new fields I added to mw_user table. I then changed the preferences to allow users to maintain their own contact info. It still requires SQL access to change somethings like membership state, when dues were last paid, etc., but I'm fairly happy with it.
I changed Special:Listusers so that it outputs contact info in a table, and I was going to hack SpecialUser.php so that certain contact info would be displayed at the top or bottom of the User page, but ran out of steam. At some point,
I know this is not exactly what you're looking for, but just wanted to say that I found the user stuff on MediaWiki tightly integrated, but fairly easy to modify. If I were to try to get it to work with some other PHP package, I'd hack that other package to get its login info from the mw_user table.
:::: I'm the commander - see, I don't need to explain - I do not need to explain why I say things. That's the interesting thing about being the president. Maybe somebody needs to explain to me why they say something, but I don't feel like I owe anybody an explanation. -- George W. Bush :::: Jan Steinman http://www.IslandSeeds.org/wiki
mediawiki-l@lists.wikimedia.org