Making a bridge, what is the best way?

Started by calash, December 22, 2005, 08:58:07 AM

Previous topic - Next topic

calash

I hope this is not too general of a question, but I am running into a bit of a hurdle with my current project.

So far I have a working SMF to eFiction bridge that replaces the eFiction login system with the SMF system.  If it can not find an account that matches it will create a new eFiction account.

So far this system is working great, but it has one big flaw.  Some of the people already have an existing eFiction setup and want to add SMF to it.  With the current system this would require copying the user database over to SMF, but the password hash is different so a direct copy would not work.

So, my basic question is what is the best way to handle this type of bridge?  I really do not want to replace the SMF login with eFiction, but with the difference in the passwords I am not sure what would be the best course of action.

Thanks for any input you can give.

Orstio


calash

I am running 1.0.5 right now.

Would this be easier in 1.1?

Orstio

Absolutely.  SMF 1.1 has a number of integration hooks built in.  One of those hooks is called integrate_validate_login, which is called just before the SMF validation.  So, at that point, a user can be validated in another system (like eFiction in your case, if it hashes in md5), and migrated into the SMF database with the md5 hash as a password.  As long as the function you call with integrate_validate_login returns "retry", the user will be prompted with the message "Password security has been recently updated, please try again", and when the user tries again, the password will be converted to the SMF hash.

calash

That is a great idea...prompt for the password to update the system....very very cool.

Honestly I did not want to go to 1.1 until it was an official release, I have a lot going on with the site and did not want to have to worry about the bugs that are usually found in a RC.  I may hold off until then to add that part to the bridge.


Thank you. :)


BoogieBug

Just want to confirm, the version 1.1RC1 is much more easier for the integration.  ;)

Advertisement: