ورود

View Full Version : حرفه ای: کاربران موجود در سایت asp.net و انتقال آنها به asp.net MVC



noroozifar
شنبه 20 اردیبهشت 1393, 09:18 صبح
سلام

سلام یک سایت دارم که با asp.net طراحی کرده بودم حالا امده ام یک ورژن جدید براش ایجاد کرده ام که این ورژن با asp.net mvc درست کرده ام اما متاسفانه یک مشکل ایجاد شده کاربران موجود در سایت قبلی برای ایجاد یوزرنیم و پسوردشان از System.Web.Security استفاده کرده ام ولی تو ورژن جدید از WebMatrix.WebData استفاده کرده ام حالا نمیشه کاربران سایت قبلی را به سایت جدید انتقال داد چون جدول های وب سایت قبلی این است :
Users
Memberships
Roles
UserInRoles
Profiles

ولی جدول های سایت جدید این است :
webpages_Membership
webpages_Roles
webpages_UsersInRoles
UserProfile

مشکل اصلی سر پسورد کاربران است که از نوع hash می باشد ؟

چه باید کرد ؟

Amir Oveisi
دوشنبه 22 اردیبهشت 1393, 04:56 صبح
اگر در نسخه جدید از simple membership استفاده میکنید نباید مشکلی با پسورد ها وجود داشته باشه چون الگوریتم hashing اش با asp .net membership یکسان هست.
از اونجایی که simple membership متن باز هست میتونید کد های مربوط به الگوریتم hashing اش رو هم اینجا چک کنید:
https://github.com/aspnetwebstack/aspnetwebstack/blob/master/src/System.Web.Helpers/Crypto.cs

noroozifar
دوشنبه 22 اردیبهشت 1393, 08:27 صبح
من تو قسمت وب کانفیگ اینها را دارم :

<roleManager enabled="true" defaultProvider="simple">
<providers>
<add name="simple" type="WebMatrix.WebData.SimpleRoleProvider,WebMatrix.Web Data" />
</providers>
</roleManager>
<membership defaultProvider="simple">
<providers>
<add name="simple" type="WebMatrix.WebData.SimpleMembershipProvider,WebMatr ix.WebData" />
</providers>

اما متاسفانه مشکل داره ما تو ورژن قبلی این فیلدها را داشتیم تو قسمت memmber ship
SELECT TOP (200) ApplicationId, UserId, Password, PasswordFormat, PasswordSalt, Email, PasswordQuestion, PasswordAnswer, IsApproved, IsLockedOut, CreateDate, LastLoginDate, LastPasswordChangedDate,
LastLockoutDate, FailedPasswordAttemptCount, FailedPasswordAttemptWindowStart, FailedPasswordAnswerAttemptCount, FailedPasswordAnswerAttemptWindowsStart, Comment
FROM Memberships

اما تو ورژن جدید اینها را داریم :
SELECT TOP (200) UserId, CreateDate, ConfirmationToken, IsConfirmed, LastPasswordFailureDate, PasswordFailuresSinceLastSuccess, Password, PasswordChangedDate, PasswordSalt, PasswordVerificationToken,
PasswordVerificationTokenExpirationDate
FROM webpages_Membership

الان واقعا نمیدونم به چه طریق درستش کنم از اون لینکی که دادید هم اگر بتونم بفهمم چی هست پسورد یعنی در حالت hash درش بیارم خوب بعد ذخیره اش میکنم تو بانک جدید