Tôi đã tìm kiếm nhưng tôi không thể tìm thấy câu trả lời cho câu hỏi này: danh tính aspnet có cung cấp một cách để tránh đăng nhập đồng thời từ cùng một tài khoản không?nhận dạng aspnet tránh đồng thời đăng nhập cùng một tài khoản
7
A
Trả lời
9
nhận dạng không có một cách tích hợp để theo dõi thông tin đăng nhập đồng thời, nhưng bạn có thể làm một công việc xung quanh: mỗi lần sử dụng đăng nhập, trước khi thiết lập auth-cookie, thay đổi của người dùng SecurityStamp
bởi await userManager.UpdateSecurityStampAsync(user.Id);
Và hãy chắc chắn rằng bạn có phần này trong Startup.Auth.cs
của bạn:
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
Provider = new CookieAuthenticationProvider
{
// Enables the application to validate the security stamp when the user logs in.
// This is a security feature which is used when you change a password or add an external login to your account.
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
validateInterval: TimeSpan.FromMinutes(5),
regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
}
});
Bằng cách này mỗi khi người dùng đăng nhập, tất cả các phiên khác sẽ không còn giá trị vì SecurityStamp về người dùng được thay đổi. Và validateInterval
giá trị đủ thấp, vì vậy các cookie xác thực khác có thể bị vô hiệu hóa sớm.
Các vấn đề liên quan
- 1. Cách giới hạn số người dùng đồng thời đăng nhập vào cùng một tài khoản ở Django
- 2. Chrome: "Chi tiết đăng nhập tài khoản đã lỗi thời. Đăng nhập lại"
- 3. Cách đăng nhập bằng tài khoản Facebook?
- 4. Tác động của số nhận dạng tài khoản AWS
- 5. Tự động đăng nhập ứng dụng chrome tài khoản google
- 6. bị chuyển hướng đến sai loginUrl -> tài khoản/đăng nhập thay vì tài khoản/LOGON
- 7. Đăng nhập vào ứng dụng ASP.net qua tài khoản Google
- 8. tài khoản xã hội django-allauth kết nối với tài khoản hiện có khi đăng nhập
- 9. ASP.NET nhận dạng đăng ký người dùng ghi lại và cuối cùng đăng nhập vào thời gian
- 10. Tài khoản trên móc Đăng nhập Vòng lặp thiên thạch
- 11. Trình chọn tài khoản iOS Đăng nhập bằng Google
- 12. Sử dụng Tài khoản Google để đăng nhập
- 13. Đăng nhập bằng tài khoản Google trong CodeIgniter với OpenID
- 14. Cách sử dụng đăng nhập một lần cho tài khoản đăng?
- 15. Làm thế nào để có được những currrent đăng nhập tài khoản trong một dịch vụ
- 16. Google Plus đăng nhập 'Chọn một tài khoản' hộp thoại xuất hiện hai lần
- 17. Đăng nhập không đồng bộ
- 18. Nhận thông tin tài khoản google sau khi đăng nhập vào trang web của tôi với google đăng nhập (Dùng satellizer lib để đăng nhập)
- 19. Sử dụng powershell, làm thế nào để tôi cấp "Đăng nhập dưới dạng dịch vụ" cho một tài khoản?
- 20. nhận userID đăng nhập hiện tại trong thành viên aspnet mvc
- 21. Google Đăng nhập nhiều tài khoản - Có cách nào để chỉ định tài khoản trong URL không?
- 22. Kết nối OpenID: Thông tin đăng nhập tài khoản chủ sở hữu tài nguyên
- 23. SignalR/đàm phán đang thực hiện yêu cầu/tài khoản/Đăng nhập - Tôi không có điểm kết thúc tài khoản/Đăng nhập
- 24. hộ chiếu: chuyển hướng khác nhau để đăng nhập và đăng ký tài khoản
- 25. Nhập trang web bằng cách đăng nhập vào Tài khoản Google bằng cách sử dụng Python
- 26. tài khoản đồng bộ mỗi phút
- 27. Nhận dạng ASP.net ngừng phân phát Cookie bên ngoài sau khi xóa tài khoản bên ngoài
- 28. Nhãn "Tài khoản của tôi" hoặc "Tài khoản của bạn"
- 29. Làm cách nào để lưu trữ thông tin đăng nhập cho nhiều tài khoản Github?
- 30. Tài khoản xác thực Windows và tài khoản dịch vụ mạng dưới dạng db_owner
Tôi đang tìm cách tránh đăng nhập nếu tồn tại một phiên hoạt động cho người dùng đó. UserManager.GetSecurityStampAsync sẽ làm thủ thuật? –
@ThiagoCustodio 'GetSecurityStampAsync' sẽ trả lại cho bạn chỉ một tem bảo mật là một GUID được lưu trữ trong hồ sơ của người dùng - tự nó không làm nhiều. Để tránh đăng nhập lần thứ hai, nó phức tạp hơn nhiều - bằng cách nào đó bạn sẽ cần phải theo dõi phiên hiện tại, giữ nguyên ID cho điều đó, đặt ID đó vào auth-cookie và kiểm tra đăng nhập nếu phiên hiện tại giống như đã được lưu trữ . Và tôi có thể thấy trước một đống vấn đề với cách tiếp cận này. Cuối cùng, nếu bạn muốn người dùng ngừng chia sẻ thông tin đăng nhập, phương pháp tiếp cận được đề xuất sẽ công nghệ cho họ ngay sau khi chia sẻ mật khẩu là xấu. – trailmax
đang chờ userManager.UpdateSecurityStampAsync (user.Id), trong tệp nào trong MVC 5? – SAR