Migrating profile data from CS2002 to CS2007
Hi All,
I am doing a migration project to migrate my company's CS2002 site into the CS2007. I am going to rebuild the code based on the old site. And I have already migrated the product catalog from cs2002. My question is how do I migrate the user profile data from cs2002 into cs2007? I don't see export function in cs2002 or am I missiong something?
thanks,
max
[397 byte] By [
Max_h] at [2008-1-7]
for some reason after I pack up the 2002site and unpack it in 2007, then use the upgrade wizard, the profile wasn't in the list for migration. Any idea?
thanks
Not much has changed in the profile system and most of the changes are in the API not the site resource. I would imagine that's why the site resource didn't show up.
-Max
Hi Max,
I found that in CS2002 the user password isn't encrypted and in 2007 the password is encrypted also the address field is concat of all the addressID below to a user as opposed to in cs2002 version where that isn't the case. How should the password encryption be handled if I am going to migrate from cs2002 to cs2007
thanks in advance
As a best practice you should encrypte the passwords. As for the addressID I am not sure I understand what you mean, can give me some more details.
-Max
Hi Max,
well the problem I have is with the way CS2002 save user password in the u_user_security_password filed in the UserObject. The password string is saved as plain text. In CS2007 the password save in that same field of that UserObject under sitename_profiles database is encrypted. Since the upgrade wizard doesn't do the data migration for the profile, I will need to manually copy data over to the database used by CS2007. But I have a problem of as to how i can encrypt those plain text passwrd and save it into the userObject of CS2007.
As for the AddressID, in CS2002 when a user having multiple addresses, all entry are save into Addresses table with the g_id field storing the ID of the user this address entry belonging to. In CS2007, althought the entry are stored into the Address table, there's no field in that table identifying which user this address is belong to, instead tha info is stored in the UserObject table in the u_addresses field in this format: 2;{627d43c0-a2c7-48f4-93af-a450d536b361};{d6581513-ebd2-484f-b111-ad92aeb66fe4}
2 indicat this user has two address and the following are the AddressID linking it in the address table. So i acutally wrote a DTS package for the CS2002 to cs2007 profile migration that would find all address entry a user have and concate the ID into that format and store it into the u_address field.
But the problem I have to to encrypt the plain text password of the CS2002 and migrate it to CS2007. Of course this won't be a problem if I start a brand new site, but out company have quite a bit of users data from their old CS2002 site that will need to be port over to CS2007. And the the problem of how do I encrypt plain text password from the old site and port over into the new CS2007 site is a problem.
hope that explain what I need more clearly.
is there some tools that would make the profile migration more seamless?
thanks
The u_user_security_password does not have to be encrypted but the best practice is encrypting the value. With that said you should look into
this document. There is a folder under the Commerce Server 2007 folder tools having ProfileKeyManager.exe file. This tool can be used to encrypt the existing user passwords and generate keys.
Now for the address, you can use the address as is. The feature you are describing is embedded profiles in existed in CS2002 but was not the default setting.
You shouldn’t have to do any migration and I hope that the product group can correct me if I am wrong, but you can just copy the cs2002 database and point your profile connection strings to it. Next modify the web.config to make sure setting the profile values.
I hope that this points you in the right direction.
-Max
Hi Max,
thanks for the info, i will start testing using the tools to encrypt the plain text password from the old site.
thanks