2012-04-08 34 views
9

Tôi đang cố gắng tìm cách đặt cookie trong khung nội tuyến trong Safari. Safari có chính sách không cho phép iframe đặt cookie trừ khi người dùng nhấp vào nội dung nào đó trong khung nội tuyến.Kỹ thuật để đặt cookie của bên thứ ba trong iframe trong Safari vẫn hoạt động?

Tôi đã đọc qua các câu hỏi/câu trả lời trên Stackoverflow và các bài viết khác. Dưới đây là một số liên kết:

Họ tất cả các biến đề cập đến một kỹ thuật để thực hiện điều này. Ý tưởng cơ bản là tạo một phần tử biểu mẫu và làm cho nó gửi yêu cầu POST thông qua các cuộc gọi JavaScript hoặc thông qua người dùng nhấp vào một nút. Khi một yêu cầu POST được gửi, Safari xem người dùng đã tương tác với trang web và sau đó cho phép cookie được đặt.

Tôi đã thực hiện một vài nỗ lực để triển khai kỹ thuật này. Tôi không thành công.

Tôi tìm thấy một bài viết (http://online.wsj.com/article/SB10001424052970204880404577225380456599176.html) trên Tạp chí Phố Wall nói về cách Google sử dụng kỹ thuật này để đặt các nút +1 của họ vào quảng cáo DoubleClick của họ. Bài báo cũng trích dẫn bài đăng trên blog của Anant Garg (liên kết ở trên) về cách làm việc xung quanh giới hạn.

Dưới đây là một trích dẫn từ bài viết:

Để có được xung quanh chặn mặc định của Safari, Google khai thác một lỗ hổng trong cài đặt bảo mật của trình duyệt. Trong khi Safari chặn hầu hết theo dõi, nó làm cho một ngoại lệ cho các trang web mà một người tương tác theo một cách nào đó — ví dụ, bằng cách điền vào biểu mẫu. Vì vậy, Google đã thêm mã hóa vào một số quảng cáo của mình khiến Safari nghĩ rằng một người đã gửi biểu mẫu vô hình cho Google. Sau đó, Safari sẽ cho phép Google cài đặt cookie trên điện thoại hoặc máy tính.

Một quote:

Một quan chức của Apple cho biết: "Chúng tôi đang làm việc để chấm dứt" với gian lận cài đặt bảo mật trình duyệt Safari.

Tôi đang làm việc với Safari 5.1.5 đã được phát hành vào ngày 26 tháng 3 năm 2012. Bài viết WSJ được xuất bản vào ngày 17 tháng 2 năm 2012. Có khả năng Apple đã thay đổi Safari để giải pháp này không còn hoạt động? Bất cứ ai có thể xác nhận rằng kỹ thuật này hoạt động trên Safari 5.1.5?

+0

bản sao có thể có của [Safari khung cookie iframe bên thứ ba không còn hoạt động nữa?] (Http://stackoverflow.com/questions/9930671/safari-3rd-party-cookie-iframe-trick-no-longer-working) – philfreo

Trả lời

7

Xem chủ đề này: Safari 3rd party cookie iframe trick no longer working?

Safari đã thực thi chính sách cookie với 5.1.4.

+0

Điều đó có nghĩa là, không thể bằng bất kỳ phương tiện nào, để đặt cookie trên trang tên miền chéo trong iframe trên Safari? – Eydun

+1

Đúng. Người dùng phải tương tác * và * cookie chỉ có thể được đặt khi tên miền phù hợp. Giải pháp hiện tại của tôi: http: //www.reizbombardement.de/archives/safari-5-1-4-thi hành-cookie-policy – vwoelm

+1

Nếu bạn kiểm soát cả hai tên miền, bạn có thể hướng người dùng đến miền b, đặt cookie và sau đó hướng người dùng quay lại miền a. Safari sẽ chuyển cùng một cookie trong iframe đã được đặt, bạn không thể tạo cookie mới. –

Các vấn đề liên quan