User Authentication / Login / New Accounts
Permalink
Hi,
Has anyone crossed the path of adapting concretes username and password authentication (for web users) to a custom / pre-existing mysql database?
In other words, is there an api or some sort of handshake that already exists that would allow concrete to simply lay on top of our existing configuration ?
Thanks,
Kevin
Has anyone crossed the path of adapting concretes username and password authentication (for web users) to a custom / pre-existing mysql database?
In other words, is there an api or some sort of handshake that already exists that would allow concrete to simply lay on top of our existing configuration ?
Thanks,
Kevin
i would think it may be a bit hard to do something like that largely cause different applications tend to encrypt passwords differently (i'm assuming your existing passwords aren't stored in clear text, which isn't good if they are). if you can change concrete5's way of encrypting passwords to match whatever way the old ones were encrypted then it might work, but that would probably take some hacking into the core. would probably be easier to just write some script that sends a mailing asking that users enter a new password (maybe with the existing forgot password functionality).
Actually it's quite simple and done everyday. If Concrete is indeed truly "open" it should be able to communicate with databases of all shapes and sizes - for all types of applications. We do this as a matter of fact within our other applications. It would be silly to migrate a million users to a cms system - the cms system should be able to work with the big boys - as there are millions of existing operations already running.
well you can define the db salt so if you can share that then concrete5 could read existing db passwords and you could loop through a users table pretty easily.
Nothing there is ioncube encoded or anything and it is all an open book..
Nothing there is ioncube encoded or anything and it is all an open book..
oh, assumed you were wanting to somehow import your existing user database into concrete, migrating over from some other system. scotts on the right track here. a lot of code within c5 leans upon its current database structure for users (user attributes, forgot password, registration, profiles, permissions, etc), so i don't think you're going to be able to get away from at least duplicating your user records to concrete's database structure. best of luck.
Wow, how unfortunate. It was really looking like a home run, best cms system I've ever played with, but, unfortunately it's a closed system - which makes it unusable. (to a lot of others too)
What a shame
What a shame
well, there's open id and beside, it's open source and as such open to any kind of modification...
even without a user table replication it works. I once modified c5 a bit to use a view instead of a table for the users. Manually added the salt to the hash in the view and I was pretty much done.
It takes some developer knowledge but it's definitely possible to do and does take a lot of time if you have some php knowledge.
However, I'd still synchronize the user table, that's also very easy and makes the system independent.. But that of course doesn't matter..
I don't think c5 is a closed system at all - it's open source and has an api, openid.. No ldap which would have been nice but still not closed imho
even without a user table replication it works. I once modified c5 a bit to use a view instead of a table for the users. Manually added the salt to the hash in the view and I was pretty much done.
It takes some developer knowledge but it's definitely possible to do and does take a lot of time if you have some php knowledge.
However, I'd still synchronize the user table, that's also very easy and makes the system independent.. But that of course doesn't matter..
I don't think c5 is a closed system at all - it's open source and has an api, openid.. No ldap which would have been nice but still not closed imho
What I meant was upon creation of a concrete5 install you can optionally provide a DB salt(if your current system uses that) and then it could read through each row in your existing table and plop each using a replace statement to add the user to the system coyping over the username and pertinent details. You could certainly make this work in really any way you want, you can fork the login system and authentication system to use whatever you would want to do.
There isn't anything in concrete5 that inherently limits you from accomplishing what you are looking to do, but providing the UI to do something like this for every scenario would admittedly IMO be a waste of time and where concrete5's services or other providers would be the way to go.
You're really looking at a pretty simple script and as Remo mentioned below something that could be easily automated.
There isn't anything in concrete5 that inherently limits you from accomplishing what you are looking to do, but providing the UI to do something like this for every scenario would admittedly IMO be a waste of time and where concrete5's services or other providers would be the way to go.
You're really looking at a pretty simple script and as Remo mentioned below something that could be easily automated.
kstrange: what are these other CMS systems that can do what you're talking about (the ones with an easy way to hook into an existing user database)? it would be nice to take a look to see how they implemented something like that.