나는 그것이 효과가 있었지만 해결책은 약간 복잡하므로 나와 함께 견뎌야한다.
무슨 일이야
Internet Explorer는 IFRAME 페이지에 대한 신뢰 수준을 낮 춥니 다 (IE는이 "타사"컨텐츠를 호출합니다). IFRAME 내부의 페이지에 개인 정보 보호 정책이없는 경우 쿠키가 차단됩니다 (클릭하면 상태 표시 줄에 눈 아이콘으로 표시됨). 차단 된 URL 목록이 표시됩니다.
(출처 : piskvor.org )
이 경우 쿠키가 차단되면 세션 식별자가 전송되지 않고 대상 스크립트에서 '세션을 찾을 수 없음'오류가 발생합니다.
(세션 식별자를 양식으로 설정하고 POST 변수에서로드하려고 시도했습니다. 이것은 효과 가 있었지만 정치적 이유로는 그렇게 할 수 없었습니다.)
IFRAME 내부의 페이지를보다 신뢰할 수있게 만들 수 있습니다. 내부 페이지가 IE에 허용되는 개인 정보 보호 정책으로 P3P 헤더를 보내면 쿠키가 허용 됩니다.
그것을 해결하는 방법
p3p 정책 만들기
좋은 출발점은 W3C 튜토리얼 입니다. 이를 통해 IBM 개인 정보 보호 정책 편집기를 다운로드 한 후 개인 정보 보호 정책 의 표현을 작성하고이를 참조 할 이름을 지정했습니다 (여기서는 policy1
).
참고 :이 시점에서 실제로 사이트에 개인 정보 보호 정책이 있는지 확인하고 그렇지 않은 경우 사이트를 생성해야합니다. 사용자 데이터 수집 여부, 데이터 종류, 사이트 기능, 액세스 권한, 이 정보를 찾아서 생각 해야합니다. 몇 개의 태그를 함께 두드리면 잘리지 않습니다. 이 단계는 소프트웨어로만 수행 할 수 없으며 매우 정치적 일 수 있습니다 (예 : "클릭 통계를 판매해야합니까?").
(예 : "사이트는 ACME Ltd.에서 운영하며 운영에 익명 세션 당 식별자를 사용하고 명시 적으로 허용 된 경우에만 사용자 데이터를 수집하며 다음 목적을 위해서만 데이터를 필요한 경우에만 당사 회사 만 저장합니다. 등에 액세스 할 수 있습니다. ").
이 도구를 사용하여 편집 할 때 정책에서 오류 / 생략을 볼 수 있습니다. "HTML 정책"탭도 매우 유용합니다. 맨 아래에는 "정책 평가"가 있습니다. 정책이 차단되는지 빠르게 확인합니다. IE의 기본 설정에 따라)
Editor는 위 정책의 XML 표현 인 .p3p 파일로 내 보냅니다. 또한이 정책의 "컴팩트 버전"을 내보낼 수 있습니다.
정책에 연결
그런 다음 정책 참조 파일 ( 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>
쇼 (내 경우 전체 사이트)이 정책을 사용하는 모든 URI를. 에디터에서 내 보낸 정책 파일이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 헤더는 반드시 귀하의 개인 정보 보호 정책을 진실로 나타내야합니다!
이익!
이 구성에서는 Evil Eye가 나타나지 않고 IFRAME에도 쿠키가 저장되며 응용 프로그램이 작동합니다.
편집 : 소송에서 방어하는 것을 좋아하지 않는 한하지 말아야 할 것
몇몇 사람들은 "사악한 눈이 내릴 때까지 일부 태그를 P3P 헤더에 넣는 것"을 제안했습니다.
태그는 여러 비트 일뿐만 아니라 실제 의미를 지니고 있으며 그 사용은 실제 책임을 제공합니다 !
예를 들어, 사용자 데이터를 수집하지 않는 척하면 브라우저가 만족 스럽지만 실제로 사용자 데이터를 수집하는 경우 P3P는 실제와 충돌합니다. 간결하고 단순하게, 의도적으로 사용자에게 거짓말을 하고 있으며 이는 일부 국가에서 범죄 행위 일 수 있습니다. "감옥에 가서 200 달러를 모으지 마십시오".
몇 가지 예 ( 전체 태그 세트는 p3pwriter 참조 ) :
- NOI : "웹 사이트는 식별 된 데이터를 수집하지 않습니다." (맞춤 설정, 로그인 또는 데이터 수집 (***** Analytics, 누구나?)이있는 즉시 P3P에서 확인 해야합니다. )
- STP : 명시된 목적에 맞게 정보가 유지됩니다. 이를 위해서는 가능한 빨리 정보를 폐기해야합니다. 사이트에는 폐기 시간 테이블을 설정하는 보존 정책이 있어야합니다. 보존 정책은 반드시 사이트의 사람이 읽을 수있는 개인 정보 보호 정책에 포함되거나 연결되어야합니다. "(따라서
STP
보존 정책이없는 경우 사기를 저지른 것일 수 있습니다. 얼마나 멋진가요?
나는 변호사가 아니지만 P3P 헤더가 실제로 법적 구속력이 있는지 또는 실제로 약속을 지키지 않고 사용자에게 약속 할 수 있는지 알아보기 위해 법원에 가지 않을 것입니다.