Không chắc chắn điều này liên quan đến VS 2010 hay khung nâng cấp, nhưng ... chúng tôi đang sử dụng nhà cung cấp thành viên Oracle để xác thực người dùng. Trước khi nâng cấp mọi thứ hoạt động tốt, nhưng bây giờ Membership.ValidateUser(user, password)
trả về false
mặc dù thông tin đăng nhập hợp lệ. Không có ngoại lệ nào được ném ra, vì vậy thật khó để xác định vấn đề có thể là gì. Công cụ quản trị trang web trong VS 2010 vẫn có thể quản lý người dùng và vai trò (nhiều hơn hoặc ít hơn), vì vậy tôi không có lý do gì để đặt câu hỏi về kết nối. Vấn đề có thể là gì?Membership.ValidateUser luôn trả về false sau khi nâng cấp lên VS 2010/.NET 4.0
Trả lời
Câu trả lời (theo this post) là để xác định hashAlgorithmType="SHA1"
trong Web.config:
<membership defaultProvider="OracleMembershipProvider" hashAlgorithmType="SHA1"/>
này không giải quyết được vấn đề cho người dùng hiện tại, nhưng người dùng mới tạo có thể đăng nhập ngay bây giờ.
Có thể bạn đang gặp phải sự khác biệt về máy.
Trong web.config - phần ẩn machineKey
sử dụng mã hóa tự động được tạo và các khóa xác thực lại được gán cho Id ứng dụng (AutoGenerate,IsolateApps
).
Bạn có đang thử nghiệm với một phiên bản ứng dụng khác hoặc trên một máy khác không?
Nhà cung cấp tư cách thành viên Oracle 2.0 hoặc 4.0?
Và đây chỉ là một đâm trong bóng tối, có thể điều này sẽ dẫn bạn đến một giải pháp.
Từ .NET Framework 4 Migration Issues
loại Membership
Một số loại (ví dụ, System.Web.Security.MembershipProvider) được sử dụng trong ASP.NET thành viên đã được chuyển từ System.Web.dll để lắp ráp System.Web.ApplicationServices.dll. Các kiểu được di chuyển để giải quyết các phụ thuộc phân tầng kiến trúc giữa các kiểu trong máy khách và trong các khung công tác .NET Framework mở rộng.
Thư viện lớp đã được nâng cấp từ các phiên bản trước của ASP.NET và sử dụng các loại thành viên đã được di chuyển có thể không biên dịch được khi được sử dụng trong dự án ASP.NET 4. Nếu vậy, hãy thêm tài liệu tham khảo trong dự án thư viện lớp để System.Web.ApplicationServices.dll
Chúng tôi không có vấn đề biên dịch, và các vấn đề xảy ra với cả hai Oracle các nhà cung cấp thành viên 2.0 và 4.0. –
Âm thanh một chút giống như vấn đề tôi đang gặp ..
Thêm một yếu tố machineKey để web.config thay vì hashAlgorithmType = "SHA1" cố định vấn đề .. nhưng tôi vẫn không hiểu tại sao tôi cần đưa rằng có ... đã không thể tìm thấy bất kỳ tài liệu hoặc ..
Bạn có thể kiểm tra câu hỏi của tôi ở đây .. The user name or password provided is incorrect. in MVC 3 Internet Application
- 1. Không thể tải tệp hoặc lắp ráp 'AjaxControlToolkit' sau khi nâng cấp lên .net 4.0
- 2. sd.canWrite() luôn trả về false
- 3. Sự cố với <system.web.extensions> nhóm cấu hình khi nâng cấp lên .NET 4.0
- 4. curl_exec() luôn trả về false
- 5. PrincipalContext.ValidateCredentials luôn trả về FALSE
- 6. Dictionary.ContainsKey Luôn Trả về False
- 7. Yêu cầu nâng cấp .NET 4.0 Framework?
- 8. Đăng nhập không thành công sau khi nâng cấp lên ASP.net 4.0 từ 3.5
- 9. Lỗi MSBuild: TlbImp kể từ khi nâng cấp lên VS 2010
- 10. Android LocationManager.isProviderEnabled() luôn trả về false
- 11. Bắt đầu chậm sau khi nâng cấp lên Spring 3
- 12. HttpContext.Current.User.IsInRole (roleName) luôn trả về false
- 13. FtpClient storeFile luôn trả về False
- 14. getBoolean (EXTRA_NO_CONNECTIVITY) luôn trả về false
- 15. PHP in_array() luôn trả về false
- 16. Tài nguyên hội họp FileNotFoundException trong dự án nâng cấp lên khung công tác VS 2010 4.0
- 17. Debugger.Launch() hiện đang bị treo dịch vụ windows của tôi sau khi nâng cấp lên .NET 4.0
- 18. Triển khai Web Không thành công sau khi nâng cấp lên VS 2012
- 19. checkdnsrr luôn trả về false trên windows
- 20. Tại sao tôi phải xóa các dòng khỏi web.config để nâng cấp lên .net 4.0?
- 21. Không thể tìm thấy lỗi không gian tên System.Web.Script.Service sau khi nâng cấp lên Visual Studio 2010
- 22. Unhandled Exception sau khi nâng cấp lên Entity Framework 4.3.1
- 23. Cách xử lý nhà cung cấp/bổ sung sau khi nâng cấp lên đường ray 3.2.1
- 24. ClassNotFoundException sau khi nâng cấp lên ADT 18
- 25. Tôi có bất kỳ vấn đề nào nếu tôi nâng cấp từ .NET 4.0 lên 4.5
- 26. Html.AntiForgeryToken() gây ra lỗi sau khi nâng cấp lên .NET 3.5 SP1
- 27. Lỗi trình phân tích cú pháp iFrame sau khi nâng cấp lên .NET 4.5
- 28. Truy vấn cột bool luôn trả về false
- 29. EntityManager.contains() trả về false sau khi vẫn tồn tại()
- 30. Khi mysql_query trả về false
Tôi đoán rằng đối với những người dùng mới được tạo, việc thêm 'hashAlgorithmType' là một cá trích đỏ. Thử thêm và xác thực người dùng mới mà không có nó. Tôi nghi ngờ rằng vấn đề có liên quan đến khóa máy autogenned. Đang viết một số bài kiểm tra. sẽ cập nhật câu trả lời. –
Những người dùng mới được tạo có thể được xác thực trên một hộp (phát triển) khác, vì vậy tôi nghĩ rằng hashAlgorithmType đã khắc phục được sự cố. –
@ nw - cảm ơn câu trả lời này vì tôi đã có cùng một vấn đề và đã đập đầu vào tường trong nhiều giờ. Dường như không có bất kỳ tài liệu nào về việc phải thực hiện thay đổi này khi nâng cấp lên .net 4.0. – leora