Các trang web như cửa hàng Facebook đã đăng nhập người dùng trong cookie (phía máy khách) hoặc phiên (phía máy chủ)? Bài kiểm tra của tôi cho thấy rằng họ làm việc đầu tiên.Các trang web như cửa hàng Facebook đã đăng nhập người dùng trong cookie hoặc phiên?
Trả lời
Thông thường, thông tin nhạy cảm như người dùng hiện đang đăng nhập phải được lưu trữ ở phía máy chủ - hãy nhớ, người dùng có thể đọc và sửa đổi cookie miễn phí.
Điều bạn có thể thấy là cookie phiên liên kết một khách hàng cụ thể với một phiên cụ thể trên máy chủ - đó là máy chủ biết phiên nào sẽ sử dụng cho bạn. Trong trường hợp này, thứ duy nhất mà cookie chứa là một ID phiên dài, ngẫu nhiên - dài và ngẫu nhiên nên không thể dễ dàng đoán được bởi kẻ tấn công.
Hành vi ăn cắp cookie phiên của người dùng khác được gọi là session hijacking.
Thông tin thêm:
- Cookie VS Session
- Session chapter trong cuốn hướng dẫn PHP
Cảm ơn Pekka ... nhưng bạn có thể giải thích thêm ... tôi nghĩ rằng một phiên trên một máy chủ là một tập tin ... tại sao bạn sẽ cần cả hai? – jon
Cookie có thể được mã hóa và sử dụng tổng kiểm tra để tránh bị sửa đổi hoặc đọc: P – Esailija
@jon đọc về cách phiên hoạt động (ví dụ: trong chương Phiên trong hướng dẫn sử dụng PHP). Cookie cần thiết cho Facebook để biết người dùng nào có phiên nào. –
Họ sử dụng phiên phía máy chủ kết hợp với một cookie.
Cookie giữ ID, ID này được gửi tới FaceBook và máy chủ kiểm tra chi tiết cho phiên có ID đó.
Cảm ơn Richard, nhưng tại sao họ cần phiên làm việc? .. khi chúng ta đang nói về các phiên, chúng ta đang nói về ví dụ: $ _SESSION ['user'] – jon
Tôi nghĩ ý tưởng đằng sau $_sessions
là máy chủ xử lý thông tin của chính nó nhanh hơn và hiệu quả hơn là nhận thông tin hàng loạt từ khách hàng.
Nhìn vào nó theo cách này:
Bạn (máy chủ) và một người bạn (khách hàng) đang nói xấu về người bạn khác của bạn Cindy, không bạn bạn cung cấp cho bạn mọi chi tiết thông tin về cô ấy (màu tóc, chiều cao , v.v ...)? Không, đó sẽ là một sự lãng phí thời gian. Việc xử lý thông tin bạn đã biết về Cindy nhanh hơn rất nhiều (trên tệp $_session
, phía máy chủ) và chỉ nhận được thông tin duy nhất ($_cookies
) từ bạn của bạn (khách hàng).
Hiệu quả: "Này, bạn có nghe những gì Cindy đã làm tối qua không?"
KHÔNG hiệu quả: "Này bạn có nghe thấy những gì Cindy với mái tóc nâu, mắt xanh, vừa xây dựng, vv ... đã làm đêm qua?"
Rõ ràng, điều này không tóm tắt đầy đủ $_sessions
và $_cookies
, nhưng có thể nó sẽ giúp ai đó hiểu được quản lý dữ liệu ngắn hạn hiệu quả.
Họ sử dụng các phiên sử dụng và sau đó lưu trữ một số thông tin vào cookie, như user_id được đăng nhập với session_id = .../sau đó đăng ký phiên session_id đó để xem liệu người dùng đó có còn đăng nhập không. là một sự lãng phí tài nguyên. Theo quan điểm của tôi, tôi lưu trữ thông tin quan trọng vào các phiên và thông tin lớn vào cookie
- 1. Đăng nhập Facebook cho trang web: Phương pháp hay nhất để xử lý đăng xuất Facebook của người dùng?
- 2. Trang khác cho người dùng đã đăng nhập và người dùng chưa đăng nhập tại gốc
- 3. Nhận facebook Việc đăng nhập người dùng
- 4. Trang web, API và Ứng dụng iPhone cho phép người dùng đăng nhập qua Facebook
- 5. Cookie phiên đăng nhập cửa hàng trong trình duyệt bằng cách sử dụng cơ chế ruby
- 6. Theo dõi người dùng đã đăng nhập
- 7. Kiểm tra xem người dùng đã đăng nhập có thích Trang Facebook của tôi không
- 8. Phiên người dùng trong suốt trên một số trang web (đăng nhập một lần + đăng xuất một lần)
- 9. Duy trì ID người dùng Facebook trong phiên
- 10. Tự động đăng nhập vào trang web hiện tại nếu người dùng đăng nhập vào một trang web khác
- 11. Kết hợp đăng nhập facebook, sử dụng facebook php-sdk (v.3.0.0), với phiên và cookie
- 12. Tải UPN hoặc email cho người dùng đã đăng nhập trong ứng dụng web .NET
- 13. Hệ thống đăng nhập cookie/phiên
- 14. Tạo và đọc cookie để xác nhận người dùng đã đăng nhập trong C# MVC3
- 15. Android: đăng nhập vào trang web và duy trì phiên/cookie bằng cách sử dụng DefaultHttpClient
- 16. Nhận id người dùng đã đăng nhập
- 17. Cách giữ người dùng SecureSocial đăng nhập?
- 18. Cách sử dụng Shiro để xác thực người dùng dựa trên cookie hoặc facebook?
- 19. Xóa phiên Facebook của người dùng trong Webview
- 20. Một số cách để xác định người dùng đã đăng nhập trên web là gì?
- 21. Plugin Facebook Like Box không hiển thị cho người dùng đã đăng xuất; chỉ dành cho người dùng đã đăng nhập
- 22. Lưu trữ chi tiết người dùng đã đăng nhập
- 23. Nhận cookie của trình duyệt web để đăng nhập
- 24. Phiên PHP hoặc cookie
- 25. Làm cách nào để biết người dùng đã đăng nhập vào Facebook?
- 26. Đăng nhập vào Facebook API với tên người dùng và mật khẩu đã biết
- 27. Thông tin phiên cửa hàng trong Cookie ASP.Net hoặc Phiên trạng thái?
- 28. Mật khẩu người dùng ASP.Net Store trong cookie phiên?
- 29. Đăng nhập Facebook Android và máy chủ web
- 30. Lợi ích của hình ảnh bảo mật, như đăng nhập trang web ngân hàng là gì?
Nếu chúng lưu trữ thông tin mà người dùng đăng nhập vào cookie, mọi người có thể đăng nhập với tư cách là người khác. Vì vậy, nó * có thể * không phải vậy;) –
Phiên thường được khóa tắt của một giá trị ngẫu nhiên được lưu trữ trong cookie. Cookie thường sẽ không chứa bất kỳ dữ liệu nhận dạng nào do hậu quả, và nếu có, nó sẽ được xác thực bởi phía máy chủ bằng một số phương tiện khác. –
cookie lưu trữ id duy nhất.Máy chủ sử dụng id duy nhất này để xác thực. –