Sessionsvariabler går tabt ved brug af FRAMESET i Internet Explorer 6

Oversættelser af artikler Oversættelser af artikler
Artikel-id: 323752 - Få vist de produkter, som denne artikel refererer til.
Udvid alle | Skjul alle

På denne side

Symptomer

Hvis du implementerer et FRAMESET, hvis FRAMEs peger på andre websteder på dine partneres netværk eller på dit eget netværk, men du bruger forskellige domænenavne på øverste niveau, vil du muligvis opdage, at de eventuelle cookies, du forsøger at angive i disse FRAMEs i Internet Explorer 6, ser ud til at være gået tabt. Dette opleves ofte som et tab af sessionsstatus i et ASP- (Active Server Pages) eller et ASP.NET-webprogram. Du forsøger at få adgang til en variabel i objektet Session, som du forventer eksisterer, men der returneres i stedet en tom streng.

Du kan også opleve problemet i forbindelse med FRAMEs, hvis websiderne skifter mellem at bruge DNS-navne (Domain Name System) og IP-adresser (Internet Protocol).

Årsag

Med Internet Explorer 6 blev der introduceret understøttelse af P3P (Platform for Privacy Preferences). P3P-standard betyder, at hvis et FRAMESET eller et overordnet vindue refererer til et andet sted i en FRAME eller i et underordnet vindue, betragtes det underordnede sted som tredjepartsindhold. I Internet Explorer bruges standardindstillingen Mellem til beskyttelse af personlige oplysninger, og cookies fra tredjepartssteder afvises automatisk i Internet Explorer, uden at der vises en meddelelse for brugeren.

Løsning

Du kan føje en P3P-overskrift med en kort beskrivelse af politikken til beskyttelse af personlige oplysninger til det underordnede indhold, og du kan angive, at der ikke udføres nogen ondsindet handling på baggrund af brugerens data. Hvis der registreres en tilfredsstillende politik til beskyttelse af personlige oplysninger i Internet Explorer, tillader programmet, at der angives en cookie.

Du kan få vist en komplet oversigt over tilfredsstillende og utilfredsstillende koder til beskyttelse af personlige oplysninger på følgende MSDN-websted:

Beskyttelse af personlige oplysninger i Internet Explorer 6
http://msdn.microsoft.com/workshop/security/privacy/overview/privacyie6.asp

I det følgende er vist en eksempel på en politik til beskyttelse af personlige oplysninger, som opfylder kriterierne i Internet Explorer 6:

P3P: CP="CAO PSA OUR"
				
I dette kodeeksempel er det angivet, at du får adgang til dine egne kontaktoplysninger (CAO) via webstedet, at alle analyserede data kun "pseudo-analyseres", hvilket vil sige, at dataene udelukkende knyttes til din onlineidentitet og ikke til din fysiske identitet(PSA), og at dine data ikke videregives til andre eksterne institutioner (OUR).

Du kan angive denne overskrift, hvis du bruger metoden Response.AddHeader på en ASP-side. I ASP.NET kan du bruge metoden Response.AppendHeader. Du kan lave tilføjelser til en statisk fil ved hjælp af snap in-programmet IIS Management (inetmgr).

Du kan føje denne overskrift til en statisk fil ved at følge disse trin:
  1. Klik på Start, klik på Kør, og skriv derefter inetmgr.
  2. Klik på den relevante fil eller mappe på navigationssiden til venstre, som du vil føje overskriften til, højreklik på filen, og klik derefter på Egenskaber.
  3. Klik på fanen HTTP-headere.
  4. Klik på Tilføj i gruppefeltet Brugerdefinerede HTTP-headere.
  5. Skriv P3P som headernavn, og skriv derefter følgende korte streng for politikken til beskyttelse af personlige oplysninger CP=..., hvor "..." er den relevante korte kode for den politik, der anvendes.
Brugere af Internet Explorer kan også redigere indstillingerne for beskyttelse af personlige oplysninger, så der automatisk bliver spurgt, om tredjepartsindhold accepteres. I det følgende er beskrevet de trin, der skal udføres for at ændre indstillingerne for beskyttelse af personlige oplysninger:
  1. Start Internet Explorer.
  2. Klik på Funktioner, og klik derefter på Internetindstillinger.
  3. Klik på fanen Beskyttelse af personlige oplysninger, og klik derefter på Avanceret.
  4. Marker feltet Tilsidesæt automatisk behandling af cookies.
  5. Du kan tillade angivelse af cookies i ASP- og ASP.NET-sessioner ved at markere feltet Tillad altid cookies under sessionen.
  6. Klik på Prompt på listen Tredjepartscookies, hvis der skal vises en prompt i forbindelse med tredjepartsindhold.

Status

Denne funktionsmåde er tilsigtet.

Yderligere Information

Trin til genskabelse af funktionsmåden

  1. Opret en fil med navnet TestFrameset.asp.
  2. Lad en af filens FRAMEs pege på en anden computer på netværket ved hjælp af IP-adresser:
    <HTML>
    
    <FRAMESET ROWS="100%,*">
    <FRAME src="http://111.111.111.111/testFrame.asp"></FRAME>
    <FRAME src="about:blank"></FRAME>
    </FRAMESET>
    
    
    </HTML>
    					
  3. Opret en TestFrame.asp på fjerncomputeren med følgende indhold:
    <HTML>
    
    <BODY>
    
    <%
    
    Response.write "Session var is " & Session("TestVar")
    Session("TestVar") = "Hello, world!"
    
    %>
    
    <BODY>
    
    <FORM METHOD="POST">
    <INPUT type="submit" value="Print TestVar">
    </FORM>
    
    </BODY>
    
    </HTML>
    					
  4. Flyt til TestFrameset.asp, og klik derefter på Afsendelse af formular.
Bemærk, at efter indsendelsen udskrives posten Session("TestVar") som et tom post, selvom den burde indeholde "Hello, world!".

Referencer

Du kan finde flere oplysninger ved at klikke på nedenstående artikelnumre for at få vist artiklerne i Microsoft Knowledge Base:
283185 Sådan håndteres cookies i Internet Explorer 6
290333 Beskrivelse af P3P-projektet med platformen til beskyttelse af personlige oplysninger. Artiklen er evt. på engelsk.
293222 Standardindstillingerne for beskyttelse af personlige oplysninger i Internet Explorer 6. Artiklen er evt. på engelsk.

Egenskaber

Artikel-id: 323752 - Seneste redigering: 10. oktober 2006 - Redigering: 3.0
Oplysningerne i denne artikel gælder:
  • Microsoft Internet Explorer (Programming)
Nøgleord: 
kbprb KB323752
Ansvarsfraskrivelse i forbindelse med udgået indhold i Knowledge Base
Denne artikel beskriver produkter, som Microsoft ikke længere yder support til. Artiklen foreligger 'i forhåndenværende stand' og opdateres ikke længere.

Send feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com