Sunday, January 2, 2011

IE Blocking IFrame Cookies

Microsoft.
A company wishes to set development standards.
A company you must know how to work with.
A company we all hate to love.

A little story, if I may.
I work in a company that supply sports betting solutions for online gaming web sites.  About 2 months ago we got a new client with a slightly weird request - The solution should be placed in an existing site's IFrame.

The minute I heard that request I thought to myself that the amount of problems we'll encounter will give us tremendous amount of work.  But as always - The client's always right.

Three weeks ago we were almost ready for beta when our QA discovered some small issues regarding user preferences: Odds, Time Zone and Languages are not displayed correctly only on IE 7 and IE 8.

After wishing some bad things to happen to Bill, my next action was to open the HttpWatch tool IE has and locating where the cookies are being set.  I saw that whenever the cookies are set as Session Cookie i all work as it should, the problem then lays with cookies that have expiration date.

Since I was responsible for deploying 3 white labels (each project is called white label) this whole process took me about 2 weeks!

So, after writing some angry emails to Microsoft (but not sending them) I started looking for someone's solution to that problem.  And that it was when I encountered a very small and cute article talking about P3P or as you might know it: "Platform for Privacy Preferences (P3P) Project".

In short, unless you have some identifier in the page's header - IE wont except you third-party cookie.  So you need to set the P3P header in every page you wish the cookie to appear.

I took the time to write the header addition in some languages / platforms:

PHP:
   header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

ASP.Net:
   HttpContext.Current.Response.AddHeader("p3p","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

Django:
   response = render_to_response('mytemplate.html')
    response["P3P"] = 'CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"'

JSP:
   response.addHeader("P3P","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"")


If you want to read more about these boring technical stuff (and I know you do) you can enter Platform for Privacy Preferences (P3P) Project.
Good luck,
Elad Shalom,
CTO at ITweetLive.com

7 comments:

  1. World expand walked with omega replica sale that will sturdiness together with Tissot is certainly at this time the main supplier within the long-established Switzerland see community during sum of gadgets. For sale by just 18, 000 Sales and profits sites all around your five continents, Tissot products and services have access to a wide-ranging bunch of pieces to accomodate numerous fake rolex necessities together with flavor. Don't just are definitely the pieces quality however , happen to be enjoyed by way of the consumers. Any identity gives you a nice amount of pieces meant for both ladies and men you could use. By using a shifting choice of high-quality timepieces for reasonable price tags, Tissot is certainly tremendously controlable by just most of. Any see varieties one could get hold of within outdoor patio umbrella ingredients label happen to be T- Impression range, Ballade range, Couturier range and plenty of many other hublot replica uk things. With genuine synthetic leather straps that will great titanium styles, one will discover numerous middle-priced timepieces, that can be relatively reasonable. To your wives any span is certainly with effortless round knobs that will flower-shaped styles, pc training courses synthetic leather cartier replica uk or simply gold-plated. Any St. Valentine's pieces grab any allure within the point in time and tend to be an excellent treasure meant for the. Stomach muscles will better identity Tissot provides valuation together with layout. Across the quite a few years the Switzerland watchmaker well-known has built meant for tag heuer replica sale a good notable good reputation when the designer for most of the world’s premier pieces.

    ReplyDelete