Internet Explorer में IFRAME में कुकी को अवरुद्ध / सहेजा नहीं गया है


392

मैं दो वेबसाइटों है, चलो कहते हैं कि वे कर रहे हैं जाने example.comऔर anotherexample.net। पर anotherexample.net/page.html, मैं ए IFRAME SRC="http://example.com/someform.asp"। वह IFRAME उपयोगकर्ता को भरने और सबमिट करने के लिए एक फॉर्म प्रदर्शित करता है http://example.com/process.asp। जब मैं someform.aspअपनी ब्राउज़र विंडो में फ़ॉर्म (" ") को खोलता हूं , तो सभी अच्छी तरह से काम करते हैं। हालाँकि, जब मैं someform.aspIE 6 या IE 7 में IFRAME के ​​रूप में लोड करता हूं , तो example.com के लिए कुकीज़ सहेजे नहीं जाते हैं। फ़ायरफ़ॉक्स में यह समस्या प्रकट नहीं होती है।

परीक्षण उद्देश्यों के लिए, मैंने http://newmoon.wz.cz/test/page.php पर एक समान सेटअप बनाया है ।

example.comकुकी-आधारित सत्रों का उपयोग करता है (और इसके बारे में मैं ऐसा कुछ भी नहीं कर सकता), इसलिए कुकीज़ के बिना, process.aspनिष्पादित नहीं होगा। मैं उन कुकीज़ को बचाने के लिए IE को कैसे मजबूर करूं?

HTTP ट्रैफ़िक को सूँघने के परिणाम: GET /someform.asp प्रतिसाद पर, एक मान्य प्रति-सत्र सेट-कुकी शीर्षलेख (उदा Set-Cookie: ASPKSJIUIUGF=JKHJUHVGFYTTYFY) है, लेकिन POST /process.asp अनुरोध पर, कोई कुकी शीर्ष लेख नहीं है।

Edit3: कुछ AJAX + सर्वरिंग स्क्रिप्टिंग स्पष्ट रूप से समस्या को दूर करने में सक्षम है, लेकिन यह बग की तरह बहुत अधिक दिखता है, साथ ही यह सुरक्षा छेदों का एक नया सेट खोलता है । मैं नहीं चाहता कि मेरे एप्लिकेशन बग + सुरक्षा छेद के संयोजन का उपयोग करें क्योंकि यह आसान है।

संपादित करें: P3P नीति मूल कारण थी , नीचे पूर्ण विवरण।


एक अच्छा समाधान वास्तव में .. मैंने गोपनीयता नीति बनाने की कोशिश की .. मेरे संदर्भ रूट में जोड़ा ... और मेरे जेएसपी पेज में मैं हेडर सेट कर रहा हूं .. फिर भी उस लाल आंख से छुटकारा पाने में सक्षम नहीं हूं .. क्या आप मदद कर सकते हैं मुझे समस्या का समाधान ..
user902490

डेमो साइट @Piskvor के लिए धन्यवाद, मैंने इसे यहां इस सुरक्षा पर
goodguys_activate

@ makerofthings7: YW मैं इसे एक गैर-अस्थायी (sic!) साइट पर माइग्रेट करूँगा और Security.se पर एक संपादन का सुझाव दूंगा, यह पेज कुछ हद तक हैक-प्रूफ-ऑफ-कॉन्सेप्ट था।
पिस्कवर ने बिल्डिंग

2
विंडोज 10 / इंटरनेट एक्सप्लोरर 11 ( msdn.microsoft.com/en-us/library/… ) में P3P रन बनाने की कोशिश करने से परेशान न हों । P3P बिल्कुल काम नहीं करता है, इसलिए आप जो भी करते हैं, वह कुकीज़ जमा नहीं होगा। यहाँ सबूत के रूप में अच्छी तरह से enhanceie.com/test/cookie
puco

जवाबों:


429

मुझे यह काम करने के लिए मिला, लेकिन समाधान थोड़ा जटिल है, इसलिए मेरे साथ सहन करें।

क्या हो रहा है

जैसा कि यह है, इंटरनेट एक्सप्लोरर IFRAME पृष्ठों पर निम्न स्तर का विश्वास देता है (IE इसे "तृतीय-पक्ष" सामग्री कहता है)। यदि IFRAME के ​​अंदर के पृष्ठ में गोपनीयता नीति नहीं है, तो इसकी कुकीज़ अवरुद्ध हो जाती हैं (जो कि स्टेटस बार में आंखों के आइकन द्वारा इंगित की जाती है, जब आप उस पर क्लिक करते हैं, तो यह आपको अवरुद्ध URL की सूची दिखाता है)।

the evil eye
(स्रोत: piskvor.org )

इस स्थिति में, जब कुकीज़ अवरुद्ध हो जाती हैं, तो सत्र पहचानकर्ता नहीं भेजा जाता है, और लक्ष्य स्क्रिप्ट 'सत्र नहीं मिला' त्रुटि फेंकता है।

(मैंने सत्र पहचानकर्ता को फ़ॉर्म में सेट करने और POST चर से लोड करने की कोशिश की है। यह काम किया होगा , लेकिन राजनीतिक कारणों से मैं ऐसा नहीं कर सका।)

IFRAME के ​​अंदर पृष्ठ को अधिक विश्वसनीय बनाना संभव है: यदि आंतरिक पेज एक गोपनीयता नीति के साथ एक P3P हेडर भेजता है जो IE को स्वीकार्य है, तो कुकीज़ को स्वीकार किया जाएगा

इसे कैसे हल किया जाए

एक p3p पॉलिसी बनाएं

एक अच्छा प्रारंभिक बिंदु W3C ट्यूटोरियल है । मैंने इसके माध्यम से जाना है, आईबीएम गोपनीयता नीति संपादक डाउनलोड किया है और वहां मैंने गोपनीयता नीति का प्रतिनिधित्व किया और इसे (यहां यह था policy1) इसका संदर्भ देने के लिए एक नाम दिया ।

नोट : इस बिंदु पर, आपको वास्तव में यह पता लगाने की आवश्यकता है कि क्या आपकी साइट की गोपनीयता नीति है, और यदि नहीं, तो इसे बनाएं - क्या यह उपयोगकर्ता डेटा एकत्र करता है, किस प्रकार का डेटा है, इसके साथ क्या करता है, इसकी पहुंच किसके पास है, आदि आपको यह जानकारी खोजने और इसके बारे में सोचने की आवश्यकता है। बस एक साथ थप्पड़ मारने से कुछ टैग नहीं कटेंगे। यह कदम पूरी तरह से सॉफ्टवेयर में नहीं किया जा सकता है, और अत्यधिक राजनीतिक हो सकता है (उदाहरण के लिए "क्या हमें अपने क्लिक आंकड़े बेचने चाहिए?")।

(उदाहरण के लिए "साइट एसीएमई लिमिटेड द्वारा संचालित है, यह अपने ऑपरेशन के लिए अनाम प्रति-सत्र पहचानकर्ताओं का उपयोग करता है, केवल तभी उपयोगकर्ता डेटा एकत्र करता है, जब स्पष्ट रूप से अनुमति दी जाती है और केवल निम्नलिखित उद्देश्यों के लिए, डेटा केवल तब तक संग्रहीत किया जाता है, जब तक केवल हमारी कंपनी इस तक पहुंच है, आदि आदि ")।

(जब इस टूल के साथ संपादन किया जाता है, तो नीति में त्रुटियों / चूक को देखना संभव है। टैब "HTML नीति" भी बहुत उपयोगी है: सबसे नीचे, इसमें "नीति मूल्यांकन" है - एक त्वरित जांच अगर नीति अवरुद्ध हो जाएगी IE की डिफ़ॉल्ट सेटिंग्स द्वारा)

संपादक एक .p3p फ़ाइल का निर्यात करता है, जो उपरोक्त नीति का XML प्रतिनिधित्व है। इसके अलावा, यह इस नीति के "कॉम्पैक्ट संस्करण" का निर्यात कर सकता है।

पॉलिसी से लिंक करें

फिर एक नीति संदर्भ फ़ाइल ( http://example.com/w3c/p3p.xml) की आवश्यकता थी (गोपनीयता नीतियों का एक सूचकांक जो साइट का उपयोग करता है):

<META>
  <POLICY-REFERENCES>
    <POLICY-REF about="/w3c/example-com.p3p#policy1">
      <INCLUDE>/</INCLUDE>
      <COOKIE-INCLUDE/>
    </POLICY-REF>
  </POLICY-REFERENCES>
</META>

<INCLUDE>शो सभी यूआरआई कि (मेरे मामले, पूरी साइट में) इस नीति का प्रयोग करेंगे। मैंने संपादक से जो नीति फ़ाइल निर्यात की है, उसे अपलोड किया गया थाhttp://example.com/w3c/example-com.p3p

प्रतिक्रियाओं के साथ कॉम्पैक्ट हेडर भेजें

मैंने इस तरह से प्रतिक्रियाओं के साथ कॉम्पैक्ट हेडर भेजने के लिए example.com पर वेबसर्वर सेट किया है:

HTTP/1.1 200 OK 
P3P: policyref="/w3c/p3p.xml", CP="IDC DSP COR IVAi IVDi OUR TST"
// ... other headers and content

policyrefनीति संदर्भ फ़ाइल के लिए एक सापेक्ष URI है (जो बदले में गोपनीयता नीतियों का संदर्भ देता है), CPकॉम्पैक्ट नीति प्रतिनिधित्व है। ध्यान दें कि उदाहरण में P3P हेडर का संयोजन आपकी विशिष्ट वेबसाइट पर लागू नहीं हो सकता है; आपके P3P हेडर सच में आपकी अपनी गोपनीयता नीति का प्रतिनिधित्व करते हैं!

फायदा!

इस कॉन्फ़िगरेशन में, ईविल आई दिखाई नहीं देता है, कुकीज़ IFRAME में भी सहेजे जाते हैं, और एप्लिकेशन काम करता है।

संपादित करें: जब तक आप मुकदमों से बचाव करना पसंद नहीं करते, तब तक क्या करें

कई लोगों ने सुझाव दिया है कि "अपने P3P हेडर में कुछ टैग्स को थप्पड़ मारो, जब तक कि ईविल आई नहीं छोड़ देता"।

टैग केवल बिट्स का एक गुच्छा नहीं हैं, उनके पास वास्तविक दुनिया के अर्थ हैं , और उनका उपयोग आपको वास्तविक दुनिया की जिम्मेदारियां देता है !

उदाहरण के लिए, यह दिखाते हुए कि आप कभी भी उपयोगकर्ता डेटा एकत्र नहीं करते हैं, ब्राउज़र को खुश कर सकता है, लेकिन यदि आप वास्तव में उपयोगकर्ता डेटा एकत्र करते हैं, तो P3P वास्तविकता के साथ विरोध कर रहा है। सादा और सरल, आप उद्देश्यपूर्ण रूप से अपने उपयोगकर्ताओं से झूठ बोल रहे हैं , और यह कुछ देशों में आपराधिक व्यवहार हो सकता है। के रूप में, "जेल जाना है, $ 200 इकट्ठा न करें"।

कुछ उदाहरण ( टैग के पूर्ण सेट के लिए p3pwriter देखें ):

  • NOI : "वेब साइट पहचान किए गए डेटा एकत्र नहीं करता है।" (जैसे ही कोई अनुकूलन, एक लॉगिन, या कोई डेटा संग्रह (***** विश्लेषिकी, कोई भी?), आपको इसे अपने Ch3P में स्वीकार करना होगा )
  • एसटीपी : सूचना को बताए गए उद्देश्य को पूरा करने के लिए रखा गया है। इसके लिए जानकारी को जल्द से जल्द त्याग दिया जाना चाहिए। साइटें एक अवधारण नीति है जो विनाश टाइम टेबल स्थापित करती हैं। अवधारण नीति को साइट की मानव-पठनीय गोपनीयता नीति से शामिल किया जाना चाहिए या इसे शामिल किया जाना चाहिए। "(इसलिए यदि आप भेजते हैं STPलेकिन आपके पास अवधारण नीति नहीं है, तो आप धोखाधड़ी सकते हैं। यह कितना अच्छा है? बिल्कुल नहीं)

मैं एक वकील नहीं हूं, लेकिन मैं यह देखने के लिए अदालत में जाने को तैयार नहीं हूं कि क्या पी 3 पी हेडर वास्तव में कानूनी रूप से बाध्यकारी है या यदि आप अपने उपयोगकर्ताओं को वास्तव में अपने वादों का सम्मान करने के लिए तैयार किए बिना कुछ भी वादा कर सकते हैं।


मैं 95% पूर्ण था, लेकिन मेरे हेडर ने केवल इतना ही कहा: P3P: CP = "...." और इसमें नीतिगत लिंक शामिल नहीं था, जिसने IE7 में काम किया, लेकिन IE6 नहीं ... अब अच्छा काम करता है। धन्यवाद!
एंड्रियास्कैनड्सन

4
IBM संपादक का लिंक अब काम नहीं कर रहा है। : के माध्यम से वेबैक मशीन मैं इस काम कर लिंक मिल करने में सक्षम था www6.software.ibm.com/sdfdl/1v2/regs2/awadmin/p3peditor/Xa.2/...
ripper234

34
इस विषय पर कुछ समाचार: -IBM के संपादक को यहां पाया जा सकता है: softpedia.com/get/Security/Security-Related/…--P3P मानक 'मृत' प्रतीत होते हैं। Google और facebook जैसी बड़ी कंपनियां अब IE सुरक्षा को बायपास करने के लिए अमान्य P3P हेडर का उपयोग करती हैं। ये पोस्ट देखें: सिलेंडर। cmu.edu/research/techreports/2010/tr_cylab10014.html zdnet.com/blog/facebook/… techpolicy.com/…
Davide

7
एक और जानकारी जो किसी को एक समान समस्या में मदद कर सकती है: मेरे परीक्षणों से यदि डोमेन अलग-अलग सुरक्षा क्षेत्रों में हैं (उदाहरण के लिए प्रथम-पक्ष इंटरनेट है और तृतीय-पक्ष इंट्रानेट है) तो यह संभव नहीं है कि P3P सही ढंग से होने पर तृतीय पक्ष कुकी को भी स्वीकार कर सके। कॉन्फ़िगर किया गया। कुकी हमेशा अवरुद्ध होती है।
डेविड इकार्डी

1
यह ध्यान रखना महत्वपूर्ण है कि 'थर्ड-पार्टी' शब्द उतना स्पष्ट नहीं है जितना कोई सोच सकता है। यदि किसी iframe में एन्क्लोज़िंग साइट के सापेक्ष थर्ड-पार्टी कंटेंट है और उसकी वैध गोपनीयता नीति है, और यह मुख्य साइट से आने वाले iframe में एक दृश्य को पुनर्निर्देशित करता है, तो जब तक कि उस दृश्य की वैध गोपनीयता नीति नहीं है, IE नहीं होगा इसकी कुकीज़ पर भरोसा करें। यहां तक ​​कि अगर वह दृश्य उसी साइट से आ रहा है, जिसमें इफराम है।
किराए

168

मैंने अपने दिन का एक बड़ा हिस्सा इस P3P चीज़ में देखा है और मुझे जो कुछ भी मिला है, उसे साझा करने की आवश्यकता महसूस हो रही है।

मैंने देखा है कि P3P अवधारणा बहुत पुरानी है और केवल इंटरनेट एक्सप्लोरर (IE) द्वारा वास्तव में उपयोग / लागू किया जा रहा है।

सबसे सरल स्पष्टीकरण है: IE यदि आप कुकीज़ का उपयोग कर रहे हैं तो आप P3P हेडर को परिभाषित करना चाहते हैं।

यह एक अच्छा विचार है, और सौभाग्य से अधिकांश समय यह हेडर प्रदान नहीं करने से कोई समस्या नहीं होगी (ब्राउज़र चेतावनी पढ़ें)। जब तक आपकी वेबसाइट / वेब एप्लिकेशन को एक (i) फ़्रेम का उपयोग करके दूसरी वेबसाइट में लोड नहीं किया जाता है। यह वह जगह है जहां IE *** में एक बड़े पैमाने पर दर्द बन जाता है। जब तक P3P हेडर सेट नहीं होता है, यह आपको कुकी सेट करने की अनुमति नहीं देगा।

यह जानकर मैं निम्नलिखित दो प्रश्नों का उत्तर खोजना चाहता था:

  1. किसे पड़ी है? दूसरे शब्दों में, क्या मैं शीर्षक में "आलू" शब्द डाल सकता हूं?
  2. अन्य कंपनियाँ क्या करती हैं?

मेरे निष्कर्ष हैं:

  1. कोई परवाह नहीं करता है। मुझे एक भी दस्तावेज नहीं मिला है जिससे पता चलता हो कि इस तकनीक का कोई कानूनी वजन है। अपने शोध के दौरान मुझे दुनिया भर में एक भी ऐसा देश नहीं मिला जिसने एक कानून अपनाया हो जो आपको P3P हेडर में "आलू" शब्द डालने से रोकता है।
  2. Google और Facebook दोनों ने अपने P3P हेडर फ़ील्ड में एक लिंक डाला, जिसमें एक पृष्ठ का वर्णन है कि उनके पास P3P हेडर क्यों नहीं है।

अवधारणा 2002 में पैदा हुई थी और यह मुझे चकित करता है कि यह पुरानी और कानूनी रूप से गैर-कार्यान्वित अवधारणा अभी भी IE के भीतर डेवलपर्स पर मजबूर है। यदि इस हेडर में कोई कानूनी अड़चन नहीं है, तो इस हेडर को अनदेखा किया जाना चाहिए (या वैकल्पिक रूप से, कंसोल में एक चेतावनी या सूचना उत्पन्न करें)। लागू नहीं! मैं अब अपने कोड में एक लाइन डालने के लिए मजबूर हूं (और क्लाइंट को हेडर भेजना) जो बिल्कुल कुछ भी नहीं करता है।

संक्षेप में - IE को खुश रखने के लिए - अपने PHP कोड में निम्नलिखित पंक्ति जोड़ें (अन्य भाषाओं को समान दिखना चाहिए)

header('P3P: CP="Potato"');

समस्या हल हो गई, और IE इस आलू से खुश है।


6
दरअसल, 2008 के बाद से यह मुद्दा काफी बदल गया है, जब यह पोस्ट किया गया था। वेब आगे बढ़ गया है, और P3P पर आम सहमति "कोई भी परवाह नहीं करता है" पर बस गया है। यह जानने के लिए अच्छा है कि इस मामले में IE अवैध इनपुट के साथ क्या करता है।
पिस्कोर ने

19
ओह यार, यह उन छिपे हुए इंटरनेट एक्सप्लोरर रत्नों में से एक है! HttpContext.Current.Response.AddHeader ("p3p", "CP = \" इंटरनेट एक्सप्लोरर Idiots द्वारा प्रोग्राम किया गया था ""); कि एक मेरे लिए काम करता है!
मिकिएल कॉर्निले

6
@ संशोधन डेवलपर्स को दोष न दें, यह वकीलों और प्रबंधन से जुड़ा मुद्दा है। मैं अनुमान लगा रहा हूं कि अधिकांश डेवलपर ने महसूस किया कि इस सुविधा के परिणामस्वरूप आलू में समाधान होगा :-)
KajMagnus

5
ASP.Net के लिए, आप इसे अपने वेब कॉन्फ़िगरेशन में जोड़ सकते हैं: '<system.webServer> <हैंडलर> <httpProtocol> <customHeaders> <add name = "p3p" value = "CP = & quot; इंटरनेट एक्सप्लोरर के लिए यह आवश्यक है। तृतीय पक्ष कुकीज़ सेट करें & quot; " /> </ customHeaders> </ httpProtocol> </ handlers> </system.webServer> '
रिक कियनेर

1
ओह, यह अधिक होने की जरूरत है! मैं एक IE 11 iframe में कुकीज़ काम करने की कोशिश कर घंटों बिताया। P3P संयोजनों के सभी प्रकारों की कोशिश करना और कुकी प्रकार / समाप्ति के आधार पर विभिन्न परिणाम प्राप्त करना। अंत Potatoमें मेरे P3P में डालकर इसे हल किया। haha!
dtbaker

55

मैं IFrame (PHP समाधान) में साइट पर इस छोटे हेडर को जोड़कर बुरी नज़र को दूर करने में सक्षम था:

header('P3P: CP="NOI ADM DEV COM NAV OUR STP"');

अपनी साइट या एक्सप्लोरर को फिर से लोड करने के लिए ctrl + F5 दबाने के लिए याद रखें , इस तथ्य के बावजूद कि यह ठीक काम कर रहा है, फिर भी बुरी नजर दिखा सकता है। शायद यही मुख्य कारण है कि मुझे काम करने में इतनी दिक्कतें हुईं।

कोई भी नीति फ़ाइल बिल्कुल भी नहीं थी।

संपादित करें: मुझे एक अच्छी ब्लॉग प्रविष्टि मिली जो IFrames में कुकीज़ के साथ समस्या बताती है। इसमें C # कोड: फ्रेम्स, ASPX पेज और रिजेक्टेड कुकीज का क्विक फिक्स भी है


10
IANAL, लेकिन P3P नीति कानूनी रूप से बाध्यकारी है। क्या आप जानते हैं कि आप यहां उपयोगकर्ताओं के लिए क्या वादा कर रहे हैं, या क्या आपने केवल टैग मिलाया है जब तक कि EvilEye गायब नहीं हो गया? मुझे लगता है कि ब्राउज़र कैशिंग आपके साथ इन सबसे बड़ी समस्या नहीं होगी: " NOI : वेब साइट पहचाने गए डेटा को एकत्र नहीं करती है। एसटीपी : सूचना को निर्धारित उद्देश्य को पूरा करने के लिए रखा जाता है। इसके लिए जल्द से जल्द समय पर सूचना को छोड़ दिया जाना चाहिए। एक अवधारण नीति है जो एक विनाश टाइम टेबल स्थापित करती है। अवधारण नीति को साइट की मानव-पढ़ने योग्य गोपनीयता नीति से शामिल किया जाना चाहिए या उसमें शामिल होना चाहिए। "
पिस्कोर ने

28
मुझे स्वीकार करना चाहिए कि मुझे वास्तव में परवाह नहीं है कि इसका क्या मतलब है, मुझे एक्सप्लोरर में काम करने के लिए बस सामान की आवश्यकता है। साइटें हमारी स्वयं की गैर-सार्वजनिक साइटें हैं, जिनमें से एक कुकी को 'याद रखने' के लिए उपयोग करती है कि साइट को किस शैली में दिखाया जाए। इसलिए, हां, मैं सिर्फ टैग मिलाता हूं जब तक कि बुरी नजर गायब न हो जाए।
हेलो

एक अच्छी ब्लॉग प्रविष्टि मिली जो यहाँ की समस्या बताती है: aspnetresources.com/blog/frames_webforms_and_rejected_cookies
हेलो

6
P3P की बढ़ती अप्रासंगिकता। cylab.cmu.edu/files/pdfs/tech_reports/CMUCyLab10014.pdf यह इतना कानूनी रूप से बाध्यकारी है, वहाँ अब इस तरह के प्रमाण देकर मुकदमा पूर्वता होगी। यह इतने उच्च सम्मान के साथ देखा जाता है कि सभी लेकिन मेरे एक प्रतियोगी भी पहली जगह में एक पोस्ट करने से परेशान हैं। उन्हें यह पता लगाना चाहिए कि यदि उनके ग्राहक माध्यम पर IE सेटिंग नहीं छोड़ सकते हैं, तो वे प्रयास के लायक नहीं हैं। एक साइट पर खोई हुई बिक्री बहुत अधिक होगी यदि कुकीज़ काम नहीं करती हैं, तो गाड़ी उनके बिना मर जाती है।
फासको लैब्स

3
यह उत्तर एक डमी हेडर का उपयोग करने का सुझाव देता है CP="This_is_not_a_privacy_policy"। ऐसा करना कम कानूनी रूप से बाध्यकारी लगता है, मुझे लगता है (चूंकि NOI और STP और ऐसा कुछ भी नहीं है जिसका उल्लेख किया गया है), और जाहिरा तौर पर IE को खुश करता है :-)
KajMagnus

21

यह अन्य उत्तरों की टिप्पणियों में दफन है, लेकिन मैं इसे लगभग याद कर रहा था, इसलिए ऐसा लगता है जैसे यह अपने स्वयं के उत्तर के हकदार हैं।

समीक्षा करने के लिए: IE में 3 पार्टी कुकीज़ को स्वीकार करने के लिए, आपको अपनी फ़ाइलों को http हेडर के साथ परोसने की आवश्यकता होती है, जिसे प्रारूप में p3p कहा जाता है:

CP="my compact p3p policy"

लेकिन, p3p इस बिंदु पर एक मानक के रूप में बहुत अधिक मृत है और आप वास्तविक p3p पॉलिसी बनाने में समय और कानूनी संसाधनों को निवेश किए बिना IE को आसानी से काम कर सकते हैं। ऐसा इसलिए है क्योंकि यदि आपकी कॉम्पैक्ट p3p पॉलिसी हेडर अमान्य है, तो IE वास्तव में इसे एक अच्छी पॉलिसी मानता है और 3rd पार्टी कुकीज़ स्वीकार करता है। तो आप इस तरह से एक p3p हेडर का उपयोग कर सकते हैं

CP="This site does not have a p3p policy."

आप वैकल्पिक रूप से एक पृष्ठ का लिंक शामिल कर सकते हैं जो बताता है कि आपके पास p3p नीति क्यों नहीं है, जैसा कि Google और Facebook करते हैं (वे यहां इंगित करते हैं: https://support.google.com/accounts/answer/151657 और यहां: https : //www.facebook.com/help/327993273962160/ )।

अंत में, यह नोट करना महत्वपूर्ण है कि 3rd पार्टी साइट से सेवा की जाने वाली सभी फाइलों को p3p हेडर की आवश्यकता है, न कि केवल कुकी को सेट करने वाली, ताकि आप अपने PHP, asp.net, आदि में ऐसा करने में सक्षम न हों। कोड। आप शायद वेब सर्वर स्तर (यानी IIS या अपाचे में) की स्थापना से बेहतर हैं।


20

मेरे पास यह मुद्दा भी था, मुझे लगा कि मैं अपने MVC2 प्रोजेक्ट में उपयोग किए गए कोड को पोस्ट करूंगा। जब आप शीर्ष लेख में जोड़ते हैं तो पृष्ठ सावधान रहें या आपको एक HttpException मिल जाएगी " HTTP हेडर भेजे जाने के बाद सर्वर हेडर को जोड़ नहीं सकता है ।" मैंने OnActionExecuting पद्धति पर एक कस्टम ActionFilterAttribute का उपयोग किया (जिसे कार्रवाई निष्पादित होने से पहले कहा जाता है)।

/// <summary>
/// Privacy Preferences Project (P3P) serve a compact policy (a "p3p" HTTP header) for all requests
/// P3P provides a standard way for Web sites to communicate about their practices around the collection, 
/// use, and distribution of personal information. It's a machine-readable privacy policy that can be 
/// automatically fetched and viewed by users, and it can be tailored to fit your company's specific policies.
/// </summary>
/// <remarks>
/// More info http://www.oreillynet.com/lpt/a/1554
/// </remarks>
public class P3PAttribute : ActionFilterAttribute
{
    /// <summary>
    /// On Action Executing add a compact policy "p3p" HTTP header
    /// </summary>
    /// <param name="filterContext"></param>
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        HttpContext.Current.Response.AddHeader("p3p","CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

        base.OnActionExecuting(filterContext);
    }
}

उदाहरण का उपयोग करें:

[P3P]
public class HomeController : Controller
{
    public ActionResult Index()
    {
        ViewData["Message"] = "Welcome!";

        return View();
    }

    public ActionResult About()
    {
        return View();
    }
}

14

इस मुद्दे पर यह एक महान विषय है, हालांकि मैंने पाया कि एक महत्वपूर्ण विवरण (जो मेरे मामले में कम से कम आवश्यक था) जो कि यहां या कहीं और पोस्ट नहीं किया गया था (अगर मैं इसे याद करता हूं तो माफी मांगता हूं) यह था कि पी 3 पी लाइन होनी चाहिए 3 पार्टी सर्वर से भेजे गए हर फ़ाइल के हेडर में पास किया गया, यहां तक ​​कि जावास्क्रिप्ट या फाइलों जैसी छवियों को सेट या उपयोग नहीं करने वाली फाइलें। अन्यथा कुकीज़ अवरुद्ध हो जाएंगी। मैं यहाँ एक पोस्ट में इस पर अधिक है: http://posheika.net/?p=110


5

किसी को भी नोड में इस समस्या है।

फिर इस p3p मॉड्यूल को जोड़ें, और इस मॉड्यूल को मिडलवेयर पर सक्षम करें।

npm install p3p

मैं एक्सप्रेस का उपयोग कर रहा हूं इसलिए मैं इसे app.js में जोड़ता हूं

सबसे पहले app.js में उस मॉड्यूल की आवश्यकता होती है

var express = require('express');
var app = express();
var p3p = require('p3p');

फिर इसे मिडलवेयर के रूप में उपयोग करें

app.use(p3p(p3p.recommended));

यह Res ऑब्जेक्ट में p3p हेडर जोड़ेगा। कोई अतिरिक्त काम करने की जरूरत नहीं है।

आपको अधिक जानकारी यहां मिलेगी:

https://github.com/troygoode/node-p3p


5

यदि कोई अपाचे लाइन की तलाश में है; हमने इसका उपयोग किया।

हैडर ने P3P "CP = \" धन्यवाद IE8 \ "सेट किया

जब तक पी 3 पी हेडर है, तब तक वास्तव में इससे कोई फर्क नहीं पड़ता कि हम सीपी मूल्य निर्धारित करते हैं।


4

एक संभव बात यह है कि अनुमत साइटों में डोमेन को जोड़ने के लिए उपकरण -> इंटरनेट विकल्प -> गोपनीयता -> साइटें: somedomain.com -> अनुमति -> ठीक है।


23
हां, यदि आप केवल यह ध्यान रखते हैं कि यह आपके कंप्यूटर पर काम करे। प्रत्येक आगंतुक को यह सुझाव देने के लिए पूरी तरह से व्यावहारिक नहीं है।
पिस्कोर ने

3

यह पोस्ट P3P पर कुछ टिप्पणी और एक शॉर्ट-कट समाधान प्रदान करता है जो IE7 और IE8 के साथ समस्याओं को कम करता है।


1
लेख को उद्धृत करने के लिए: "यह मूल रूप से कहता है" हम आपके किसी भी व्यक्तिगत डेटा को एकत्र नहीं कर रहे हैं "" - इसके साथ सौभाग्य। मैंने शून्य साइटें देखी हैं जो वास्तव में उस नीति में निर्धारित टोकन को पूरा करती हैं ( किसी भी डेटा को एकत्रित नहीं करना , यहां तक ​​कि अनाम सांख्यिकीय डेटा - सर्वर एक्सेस लॉग, किसी को भी नहीं?)। प्रदान की गई अन्य नीति भी प्राप्त करने के लिए बहुत कठिन है (आपके पास किसी भी प्रकार का वेब विश्लेषिकी है? बाम, आपने अभी-अभी अपनी P3P नीति को तोड़ा है)। इसलिए, इस लेख को "बस स्पष्ट रूप से झूठ, किसी को परवाह नहीं" के रूप में अभिव्यक्त किया जा सकता है। पूरे इंटरनेट पर सबसे उपयोगी लेख , वास्तव में।
पिस्कोर ने

लेख के एक अन्य भाग को उद्धृत करने के लिए: "आश्चर्यजनक रूप से थोड़ा अच्छा है, P3P, कॉम्पैक्ट नीतियों और IE7 की आवश्यकताओं के बारे में इंटरनेट पर मुफ्त जानकारी - और IE7 बिल्कुल कोई उपयोगी डिबगिंग आउटपुट नहीं देता है जैसे कि आपका कुकी अवरुद्ध क्यों था।" यह पूरी तरह से सच प्रतीत होता है! अपने दिन का अधिकांश समय यह जानने की कोशिश में बिताया कि IE7 / 8 ने हर दूसरे ब्राउज़र से अलग व्यवहार क्यों किया, मुझे यह पोस्ट पाकर बेहद खुशी हुई। यह शायद यह महसूस करने का समय है कि पी 3 पी एक मृत कल्पना है, और ज्यादातर लोग इसके बजाय बस काम करेंगे। यह पोस्ट इस विषय पर शायद सबसे उपयोगी है।
हेनरिक एसोरेंसन

"इंटरनेट पर आश्चर्यजनक रूप से बहुत अच्छी, मुफ्त जानकारी है" - यह 2007 में सच हो सकता है (जब यह लिखा गया था), लेकिन अब इंटरनेट पर बहुत सारी जानकारी है, यहां तक ​​कि मुफ्त टूल जो आपको P3P नीति बनाने में मदद करते हैं आपकी विशिष्ट स्थिति। मैं P3P का बचाव नहीं कर रहा हूं, लेकिन यह कह रहा है "एह पेंच, बस इसे दूर कर दें" इसके महंगे परिणाम हो सकते हैं (जैसा कि आप अपनी साइट के बारे में बहुत ही अस्पष्ट दावे कर रहे हैं)। अन्य P3P वास्तव में कानूनी रूप से बाध्यकारी नहीं है। ' अभी तक (IIRC) परीक्षण नहीं किया गया है, लेकिन मैं उस मुकदमे के अंत में नहीं रहना चाहता।
पिस्कोर ने

1
@Piskvor - कृपया निशुल्क P3P टूल पोस्ट करें। मेरे पास जाने की कोशिश करने वाले सभी लोग लिंक फार्म और नकली खोज द्वारा खरीदे गए हैं। आईबीएम ने अपना मुफ्त टूल निकाला। P3P समर्थन से लगता है कि 2012 में सूखे में घास मर जाएगी।
फासको लैब्स

2
सॉफ्टबेडिया पर आईबीएम अल्फावर्क्स p3p के संपादक यहां मिले: softpedia.com/get/Security/Security-Related/…
Fiasco Labs

3

एक समाधान जो मैंने यहां नहीं देखा है, वह कुकीज़ के बजाय सत्र भंडारण का उपयोग कर रहा है । बेशक यह सभी की आवश्यकताओं के अनुरूप नहीं होगा, लेकिन कुछ मामलों में यह एक आसान तरीका है।


1
अच्छी बात। ध्यान दें कि जिस समय यह प्रश्न पोस्ट किया गया था, सत्र भंडारण के लिए समर्थन कुछ भी नहीं था, विशेष रूप से IE में। लेकिन समय, वे बदल रहे हैं;)
पिस्कोर ने

3

मैं Azure Access Control Services के माध्यम से लॉगिन-ऑफ के संबंध में इस समस्या की जाँच कर रहा था, और किसी भी चीज़ के सिर और पूंछ को जोड़ने में सक्षम नहीं था।

फिर, इस पोस्ट पर ठोकर खाई https://blogs.msdn.microsoft.com/ieinternals/2011/03/10/beware-cookie-sharing-in-cross-zone-scenarios/

संक्षेप में, IE, जोनों में कुकीज़ साझा नहीं करता है (जैसे। इंटरनेट बनाम विश्वसनीय साइटें)।

इसलिए, यदि आपका IFrame टारगेट और html पेज अलग-अलग ज़ोन के P3P में है तो कुछ भी मदद नहीं करेगा।


मुझे आश्चर्य है कि यह 2016 में अभी भी प्रासंगिक है :)
पिस्कवर ने

1
IE में P3P की स्थिति यहाँ प्रलेखित है: msdn.microsoft.com/en-us/library/mt146424(v=vs.85).aspx , भविष्य उज्ज्वल दिखता है :)
फ्रोड निल्सन

2

इसी तरह की समस्या है, आज सुबह P3P पॉलिसी कैसे जेनरेट की जाती है, इसकी जांच करने के लिए यहां पर गया, यहां मेरी पोस्ट है कि आप अपनी पॉलिसी कैसे बनाएं और वेब साइट में कैसे उपयोग करें :) http://everydayopenslikeaflower.blogspot.com/2009-08 कैसे करने के लिए बनाने-पी 3 पी-नीति और implement.html


2

मैंने पहले एक पूर्ण P3P नीति लागू की है, लेकिन मैं जिस नए प्रोजेक्ट पर काम कर रहा था, उसके लिए फिर से परेशानी से नहीं गुजरना चाहता। मैंने इस लिंक को समस्या के सरल समाधान के लिए उपयोगी पाया, केवल "सीएओ पीएसओ हमारा" की एक न्यूनतम कॉम्पैक्ट P3P नीति निर्दिष्ट करने के लिए:

http://blog.sweetxml.org/2007/10/minimal-p3p-compact-policy-suggestion.html

आलेख Microsoft kb लेख के लिए (अब टूटा हुआ) लिंक उद्धृत करता है। नीति ने मेरे लिए किया छल!


1

आप p3p.xml और policy.xml फ़ाइलों को इस तरह से भी जोड़ सकते हैं:

/home/ubuntu/sites/shared/w3c/p3p.xml

<META xmlns="http://www.w3.org/2002/01/P3Pv1">
  <POLICY-REFERENCES>
    <POLICY-REF about="#policy1">
      <INCLUDE>/</INCLUDE>
      <COOKIE-INCLUDE/>
    </POLICY-REF>
  </POLICY-REFERENCES>
  <POLICIES>
    <POLICY discuri="" name="policy1">
      <ENTITY>
        <DATA-GROUP>
          <DATA ref="#business.name"></DATA> 
          <DATA ref="#business.contact-info.online.email"></DATA> 
        </DATA-GROUP>
      </ENTITY>
      <ACCESS>
        <nonident/>
      </ACCESS>
      <!-- if the site has a dispute resolution procedure that it follows, a DISPUTES-GROUP should be included here -->
      <STATEMENT>
        <PURPOSE>
          <current/>
          <admin/>
          <develop/>
        </PURPOSE>
        <RECIPIENT>
          <ours/>
        </RECIPIENT>
        <RETENTION>
          <indefinitely/>
        </RETENTION>
        <DATA-GROUP>
          <DATA ref="#dynamic.clickstream"/>
          <DATA ref="#dynamic.http"/>
        </DATA-GROUP>
      </STATEMENT>
    </POLICY>
  </POLICIES>
</META>

मैंने हेडर जोड़ने का सबसे आसान तरीका अपाचे के माध्यम से प्रॉक्सी और mod_headers का उपयोग किया, जैसे कि:

<VirtualHost *:80>
  ServerName mydomain.com

  DocumentRoot /home/ubuntu/sites/shared/w3c/

  ProxyRequests off
  ProxyPass /w3c/ !
  ProxyPass / http://127.0.0.1:8080/
  ProxyPassReverse / http://127.0.0.1:8080/
  ProxyPreserveHost on

  Header add p3p 'P3P:policyref="/w3c/p3p.xml", CP="NID DSP ALL COR"'
</VirtualHost>

इसलिए हम अपने एप्लिकेशन सर्वर पर /w3c/p3p.xml को छोड़कर सभी अनुरोधों को प्रॉक्सी करते हैं।

आप W3C सत्यापनकर्ता के साथ यह सब परीक्षण कर सकते हैं


क्या यह शीर्ष लेख 304 अनुरोधों के साथ भेजता है? यदि आप एक 304 के साथ एक P3P हेडर भेजते हैं तो IE के कुछ संस्करण वास्तव में कुकीज़ को हटा देंगे।
जोशुआ

क्षमा करें, मुझे नहीं पता कि मैं अब इस कोड पर काम नहीं करता हूं। अगर इसकी समस्या है तो आप शायद अपाचे में स्टेटस कोड को 200 के लिए मजबूर कर सकते हैं।
क्रिस

1

यदि आपके पास वह डोमेन है जिसे एम्बेड करने की आवश्यकता है , तो आप उस पेज को कॉल करने से पहले, जिसमें IFrame भी शामिल है, उस डोमेन पर पुनर्निर्देशित कर सकते हैं, जो कुकी और रीडायरेक्ट को बनाएगा, जैसा कि यहाँ बताया गया है: http: //www.mendoweb। हो / ब्लॉग / इंटरनेट एक्सप्लोरर-सफारी-तृतीय-पक्ष-कुकी समस्या /

यह इंटरनेट एक्सप्लोरर के लिए काम करेगा लेकिन सफारी के लिए भी (क्योंकि सफारी थर्ड-पार्टी कुकीज़ को भी ब्लॉक करता है)।


1

मुझे पता है कि इस विषय पर अपना योगदान देने में थोड़ी देर हो गई है लेकिन मैं इतने घंटे हार गया कि शायद इस जवाब से किसी को मदद मिलेगी।

मैं अपनी साइट पर एक तीसरी पार्टी कुकी को कॉल करने की कोशिश कर रहा था और निश्चित रूप से यह इंटरनेट एक्सप्लोरर 10 पर काम नहीं कर रहा था, यहां तक ​​कि कम सुरक्षा स्तर पर भी ... मुझसे मत पूछो क्यों। Iframe में मैं ajax के साथ read_cookie.php (echo $ _COOKIE) कह रहा था।

और मुझे नहीं पता कि मैं समस्या को हल करने के लिए P3P नीति को स्थापित करने में असमर्थ क्यों था ...

अपनी खोज के दौरान मैंने JSON में काम करते हुए कुकी प्राप्त करने के बारे में कुछ देखा। मैं कोशिश भी नहीं करता क्योंकि मुझे लगा कि अगर कुकी एक iframe से नहीं गुजरेगी, तो वह किसी सरणी से नहीं गुजरेगी ...

लगता है क्या, यह करता है! इसलिए यदि आप अपने कुकी को json_encode करते हैं तो अपने ajax अनुरोध के बाद डिकोड करें, आपको मिल जाएगा!

हो सकता है कि कुछ ऐसा है जो मैंने याद किया और अगर मैंने किया, तो मेरी सभी क्षमा याचना, लेकिन मैंने कभी कुछ इतना बेवकूफ नहीं देखा। सिक्योरिटी के लिए थर्ड पार्टी कुकीज को ब्लॉक करें, क्यों नहीं, लेकिन इनकोड होने पर पास होने दें? अब सुरक्षा कहां है?

मुझे उम्मीद है कि यह पोस्ट किसी और को मदद करेगी, अगर मुझे कुछ याद आया और मैं गूंगा हूं, तो कृपया मुझे शिक्षित करें!


दिलचस्प ... तो आप JS में कुकी को डिकोड कर रहे हैं?
पिस्कोर ने

नहीं, मैं सिर्फ php फ़ंक्शन json_encode () के साथ एक JSON सरणी में कुकी लिख रहा हूं, फिर ajax JSON कॉल के माध्यम से वापस आ रहा हूं।

1

यह अंत में मेरे लिए काम किया (बहुत जल्दबाजी के बाद और आईबीएम नीति जनरेटर का उपयोग करके कुछ नीतियों का निर्माण)। आप यहां नीति जनरेटर को समाप्त कर सकते हैं: http://www.softpedia.com/get/Security/Security-Related/P3P-Policy-Editor.shtml

मैं आधिकारिक आईबीएम वेबसाइट से किसी भी अधिक जनरेटर को डाउनलोड करने में सक्षम नहीं था।

मैंने इन फ़ाइलों को अपने वेब-ऐप के रूट फ़ोल्डर में बनाया है

/index.php
/w3c/policy.html (Human readable format)
/w3c/p3p.xml
/w3c/policy.p3p
  1. Index.php: बस एक अतिरिक्त हेडर भेजें:
header('P3P: policyref="/w3c/p3p.xml", CP="ALL DSP NID CURa ADMa DEVa HISa OTPa OUR NOR NAV DEM"');
  1. P3p.xml की सामग्री
<META>
    <POLICY-REFERENCES>
        <POLICY-REF about="/w3c/policy.p3p#App">
            <INCLUDE>/</INCLUDE>
            <COOKIE-INCLUDE/>
        </POLICY-REF>
    </POLICY-REFERENCES>
</META>
  1. मेरी नीति। Html फ़ाइल की सामग्री

<html>
<head>
<STYLE type="text/css">
title { color: #3333FF}
</STYLE>
<title>Privacy Statement for YOUR COMPANY NAME</title>
</head>
<body>
<h1 class="title">Privacy Policy</h1>
<!-- "About Us" section of privacy policy -->
<h2>About Us</h2>
<p>This is a privacy policy for YOUR COMPANY NAME.
Our homepage on the Web is located at <a href="YOURWEBSITE">
YOURWEBSITE</a>.
The full text of our privacy policy is available on the Web at 
<a href="ABSOLUTE URL OF THIS FILE">
ABSOLUTE URL OF THIS FILE</a>
This policy does not tell users where they can go to exercise their opt-in or opt-out options.
<p>We invite you to contact us if you have questions about this policy.
You may contact us by mail at the following address:
<pre>FIRSTNAME LASTNAME
YOUR ADDRESS HERE
</pre>
<p>You may contact us by e-mail at 
<a href="mailto:info@YOURMAIL.de">
info@YOURMAIL.eu</a>. 
You may call us at TELEPHONENUMBER.
<!-- "Privacy Seals" section of privacy policy -->
<h2>Dispute Resolution and Privacy Seals</h2>
<p>We have the following privacy seals and/or dispute resolution mechanisms.
If you think we have not followed our privacy policy in some way, they can help you resolve your concern.
<ul>
<li>
<b>Dispute</b>:
Contact us for further information
</ul>
<!-- "Additional information" section of privacy policy -->
<h2>Additional Information</h2>
<p>
This policy is valid for 1 day from the time that it is loaded by a client.
</p>
<!-- "Data Collection" section of privacy policy -->
<h2>Data Collection</h2>
<p>P3P policies declare the data they collect in groups (also referred to as "statements").
This policy contains 1 data group.
<hr width="50%" align="center">
<h3>Group "App control data"</h3>
<p>We collect the following information:
<ul>
<li>HTTP cookies</li>
</ul>
<p>This data will be used for the following purposes:</p>
<ul>
<li>Completion and support of the current activity.</li>
<li>Web site and system administration.</li>
<li>Research and development.</li>
<li>Historical preservation.</li>
<li>Other purposes<p>Control Flow of the application</p></li>
</ul>
<p>This data will be used by ourselves and our agents.
<p>The data in this group has been marked as non-identifiable. This means that there is no
reasonable way for the site to identify the individual person this data was collected from.
<p>The following explanation is provided for why this data is collected:</p>
<blockquote>This cookie data is only used to control the application within an iframe (e.g. a Facebook App)</blockquote>
<!-- "Use of Cookies" section of privacy policy -->
<hr width="50%" align="center">
<h2>Cookies</h2>
<p>Cookies are a technology which can be used to provide you with tailored information from a Web site. A cookie is an element of data that a Web site can send to your browser, which may then store it on your system. You can set your browser to notify you when you receive a cookie, giving you the chance to decide whether to accept it.
<p>Our site makes use of cookies.
Cookies are used for the following purposes:
<ul>
<li>Site administration
<li>Completing the user's current activity
<li>Research and development
<li>Other
(Control Flow of the application)
</ul>
<!-- "Compact Policy Explanation" section of privacy policy -->
<hr width="50%" align="center">
<h2>Compact Policy Summary</h2>
<p>The compact policy which corresponds to this policy is:
<pre>
    CP="ALL DSP NID CURa ADMa DEVa HISa OTPa OUR NOR NAV"
</pre>
<p>The following table explains the meaning of each field in the compact policy.
<center><table width="80%" border="1" cols="2">
<tr><td align="center" valign="top" width="20%"><b>Field</b></td><td align="center" valign="top" width="80%"><b>Meaning</b></td></tr>
<tr><td align="left" valign="top" width="20%"><tt>CP=</tt></td>
<td align="left" valign="top" width="80%">This is the compact policy header; it indicates that what follows is a P3P compact policy.</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>ALL</tt></td>
<td align="left" valign="top" width="80%">
Access to all collected information is available.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>DSP</tt></td>
<td align="left" valign="top" width="80%">
The policy contains at least one dispute-resolution mechanism.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>NID</tt></td>
<td align="left" valign="top" width="80%">
The information collected is not personally identifiable.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>CURa</tt></td>
<td align="left" valign="top" width="80%">
The data is used for completion of the current activity.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>ADMa</tt></td>
<td align="left" valign="top" width="80%">
The data is used for site administration.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>DEVa</tt></td>
<td align="left" valign="top" width="80%">
The data is used for research and development.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>HISa</tt></td>
<td align="left" valign="top" width="80%">
The data is used for historical archival purposes.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>OTPa</tt></td>
<td align="left" valign="top" width="80%">
The data is used for other purposes.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>OUR</tt></td>
<td align="left" valign="top" width="80%">
The data is given to ourselves and our agents.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>NOR</tt></td>
<td align="left" valign="top" width="80%">
The data is not kept beyond the current transaction.
</td></tr>
<tr><td align="left" valign="top" width="20%"><tt>NAV</tt></td>
<td align="left" valign="top" width="80%">
Navigation and clickstream data is collected.
</td></tr>
</table></center>
<p>The compact policy is sent by the Web server along with the cookies it describes.
For more information, see the P3P deployment guide at <a href="http://www.w3.org/TR/p3pdeployment">http://www.w3.org/TR/p3pdeployment</a>.
<!-- "Policy Evaluation" section of privacy policy -->
<hr width="50%" align="center">
<h2>Policy Evaluation</h2>
<p>Microsoft Internet Explorer 6 will evaluate this policy's compact policy whenever it is used with a cookie.
The actions IE will take depend on what privacy level the user has selected in their browser (Low, Medium, Medium High, or High; the default is Medium.
In addition, IE will examine whether the cookie's policy is considered satisfactory or unsatisfactory, whether the cookie is a session cookie or a persistent cookie, and whether the cookie is used in a first-party or third-party context.
This section will attempt to evaluate this policy's compact policy against Microsoft's stated behavior for IE6.
<p><b>Note:</b> this evaluation is currently experimental and should not be considered a substitute for testing with a real Web browser.
<p><b>Satisfactory policy</b>: this compact policy is considered <em>satisfactory</em> according to the rules defined by Internet Explorer 6.
IE6 will accept cookies accompanied by this policy under the High, Medium High, Medium, Low, and Accept All Cookies settings.
</body></html>

  1. नीति की सामग्री ।p3p
<?xml version="1.0"?>
<POLICIES xmlns="http://www.w3.org/2002/01/P3Pv1">
    <!-- Generated by IBM P3P Policy Editor version Beta 1.12 built 2/27/04 1:19 PM -->

    <!-- Expiry information for this policy -->
    <EXPIRY max-age="86400"/>

<POLICY
    name="App"
    discuri="ABSOLUTE URL TO policy.html"
    xml:lang="de">
    <!-- Description of the entity making this policy statement. -->
    <ENTITY>
    <DATA-GROUP>
<DATA ref="#business.name">COMPANY NAME</DATA>
<DATA ref="#business.contact-info.online.email">info@YOURMAIL.eu</DATA>
<DATA ref="#business.contact-info.online.uri">YOURWEBSITE</DATA>
<DATA ref="#business.contact-info.telecom.telephone.number">YOURPHONENUMBER</DATA>
<DATA ref="#business.contact-info.postal.organization">FIRSTNAME LASTNAME</DATA>
<DATA ref="#business.contact-info.postal.street">STREET</DATA>
<DATA ref="#business.contact-info.postal.city">CITY</DATA>
<DATA ref="#business.contact-info.postal.stateprov">STAGE</DATA>
<DATA ref="#business.contact-info.postal.postalcode">POSTALCODE</DATA>
<DATA ref="#business.contact-info.postal.country">Germany</DATA>
    </DATA-GROUP>
    </ENTITY>

    <!-- Disclosure -->
    <ACCESS><all/></ACCESS>


    <!-- Disputes -->
    <DISPUTES-GROUP>
        <DISPUTES resolution-type="service" service="YOURWEBSITE CONTACT FORM" short-description="Dispute">
            <LONG-DESCRIPTION>Contact us for further information</LONG-DESCRIPTION>
    <!-- No remedies specified -->
        </DISPUTES>
    </DISPUTES-GROUP>

    <!-- Statement for group "App control data" -->
    <STATEMENT>
        <EXTENSION optional="yes">
            <GROUP-INFO xmlns="http://www.software.ibm.com/P3P/editor/extension-1.0.html" name="App control data"/>
        </EXTENSION>

    <!-- Consequence -->
    <CONSEQUENCE>
This cookie data is only used to control the application within an iframe (e.g. a Facebook App)</CONSEQUENCE>

    <!-- Data in this statement is marked as being non-identifiable -->
    <NON-IDENTIFIABLE/>

    <!-- Use (purpose) -->
    <PURPOSE><admin/><current/><develop/><historical/><other-purpose>Control Flow of the application</other-purpose></PURPOSE>

    <!-- Recipients -->
    <RECIPIENT><ours/></RECIPIENT>

    <!-- Retention -->
    <RETENTION><no-retention/></RETENTION>

    <!-- Base dataschema elements. -->
    <DATA-GROUP>
    <DATA ref="#dynamic.cookies"><CATEGORIES><navigation/></CATEGORIES></DATA>
    </DATA-GROUP>
</STATEMENT>

<!-- End of policy -->
</POLICY>
</POLICIES>

यह मूल विंडो सर्वर dir या iframe सर्वर dir पर जाता है?
JackTheKnife

0

रेल में मैं इस मणि का उपयोग कर रहा हूं: https://github.com/merchii/rack-iframe Bawically यह एक संदर्भ फ़ाइल के बिना संक्षिप्त रूप का एक सेट सेट करता है: https://github.com/merchii/rack-iframe/blob-master /lib/rack/iframe.rb#L8

यह स्थापित करने के लिए आसान है जब आप p3p सामान के अर्थ के बारे में बिल्कुल भी परवाह नहीं करते हैं।


0

P3P कॉम्पैक्ट नीति को स्थिर सामग्री के साथ काम करने की कोशिश करने वाले किसी के लिए:

यह केवल तभी संभव है जब आप स्थिर सामग्री के साथ कस्टम सर्वर-साइड रिस्पांस हेडर भेजने में सक्षम हों।

अधिक विस्तृत विवरण के लिए मेरा उत्तर यहां देखें: HTML में P3P कोड सेट करें



-1

एक बेहतर उपाय यह होगा कि आप उस पेज के लिए iframe के अंदर एक अजाक्स कॉल करें जो कुकीज़ प्राप्त / सेट करेगा ...


1
AJAX यहां मदद नहीं करेगा: iframe के अंदर किसी भी कुकी को संभालने पर कम भरोसा किया जाता है ("तृतीय-पक्ष कुकीज़"), और IE में गोपनीयता नीति फ़िल्टर से गुजरने की आवश्यकता है - कोई बात नहीं अगर आप AJAX कॉल, दस्तावेज़ के साथ कुकीज़ सेट कर रहे हैं .Cookie हेरफेर या सामान्य पृष्ठों के माध्यम से (परीक्षण)।
पिस्कोवर ने 23:

नहीं, यदि आप एक अजाक्स कॉल करते हैं जो HTTP (iframe के अंदर) के साथ कुकीज़ सेट करता है Ie6 ​​सुरक्षा नीति को दरकिनार करता है और कुकी सेट करता है। कृपया आश्वस्त करें कि डाउनवोटिंग से पहले मेरा समाधान गलत है।
लुका मैटीसिस

Newmoon.wz.cz/test/page.php देखें । आप AJAX के माध्यम से कुकीज़ सेट कर सकते हैं, लेकिन आप या तो a) नया सत्र शुरू करते हैं, या b) JS से सत्र आईडी सेट करते हैं - एक बहुत बड़ा सुरक्षा छेद (XSRF)। पिछला पिछला टिप्पणी थी : गलत, मैं apologize.But, अपने समाधान दिखता है पहले की तुलना में wronger बनाने एक सुरक्षा छेद मेरे लिए बुरा लगता है।
पिस्कवर ने इमारत को

(कुछ भी जो "सुरक्षा नीति को दरकिनार करता है" कम से कम मेरे लिए एक बग की तरह दिखता है - अगर कोई नीति है, तो यह किसी कारण से है। "सुरक्षा नीति / उपयोगकर्ता की प्राथमिकताओं को खराब करने के लिए कहना, हम बेहतर जानते हैं" एक खतरनाक फिसलन ढलान है। , आप कार्यक्षमता (अभी तक) पर निर्भर करते हैं जाएगा ज्ञात बग unfixed)?
Piskvor इमारत छोड़ दिया

एक नया सत्र सेट करें? तुम्हारी किस बारे में बोलने की इच्छा थी? अधिकांश ब्राउज़र इसका समर्थन करते हैं, बिना p3p हेडर के सामान के बिना, इसलिए मुझे समझ नहीं आता है कि इसे अजाक्स के माध्यम से कैसे करना अलग है ...
Luca Matteis
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.