Tôi có trang web kiểm tra cookie được mã hóa khi tải trang để xác định danh tính người dùng. Tuy nhiên, khi tôi kiểm tra trang cục bộ trên hộp phát triển của mình, tôi không có quyền truy cập vào cookie đó.Có an toàn cho Request.IsLocal hoặc nó có thể bị giả mạo không?
Trước đây tôi đã sử dụng một ứng dụng để cho biết trang đó có ở chế độ phát triển hay không và khi ở chế độ dev, nó sẽ tải danh tính người dùng cố định. Sau đó, tôi phát hiện ra Request.IsLocal
Tôi chỉ đơn giản là có thể kiểm tra như thế này:
if(Request.IsLocal){
FormsAuthentication.SetAuthCookie("testUser", false);
}else{
FormsAuthentication.SetAuthCookie(/*EncryptedCookieValue*/, false);
}
Đây có phải là an toàn? Có cách nào một người dùng độc hại có thể giả mạo IsLocal không?
'Request.IsLocal' trả về' true' khi _ "địa chỉ IP của trình khởi tạo yêu cầu là 127.0.0.1 hoặc [...] giống với IP của máy chủ" _. Vì vậy, nó có thể được giả mạo như địa chỉ IP có thể được giả mạo, và nó sẽ hoàn toàn nằm khi có một số loại máy chủ proxy hoặc cân bằng tải làm việc trên cùng một máy chủ. – CodeCaster
có thể trùng lặp: http://stackoverflow.com/questions/7148821/request-islocal – k3davis