PrivacySetZonePreferenceW-Funktion (wininet.h)
Legt die Datenschutzeinstellungen für eine bestimmte URLZONE und PrivacyType fest.
Syntax
DWORD PrivacySetZonePreferenceW(
[in] DWORD dwZone,
[in] DWORD dwType,
[in] DWORD dwTemplate,
[in, optional] LPCWSTR pszPreference
);
Parameter
[in] dwZone
Wert vom Typ DWORD , der die URLZONE angibt, für die Datenschutzeinstellungen festgelegt werden.
[in] dwType
Wert vom Typ DWORD , der den PrivacyType angibt, für den Datenschutzeinstellungen festgelegt werden.
[in] dwTemplate
Wert vom Typ DWORD , der angibt, welche der Datenschutzvorlagen zum Festlegen der Datenschutzeinstellungen verwendet werden soll.
[in, optional] pszPreference
Wenn dwTemplate auf PRIVACY_TEMPLATE_CUSTOM festgelegt ist, ist dieser Parameter die Zeichenfolgendarstellung der benutzerdefinierten Einstellungen. Andernfalls sollte er auf NULL festgelegt werden. Eine Beschreibung dieser Zeichenfolgendarstellung ist im Abschnitt Hinweise enthalten.
Rückgabewert
Gibt 0 zurück, wenn erfolgreich. Andernfalls wird einer der in "winerr.h" definierten Fehler zurückgegeben.
Hinweise
Diese Datenschutzeinstellungen für die Internetzone finden Sie im Dialogfeld Internetoptionen auf der Registerkarte Datenschutz.
Das Festlegen der Datenschutzoptionen für die URLZONE_INTERNET beinhaltet das Festlegen der Datenschutzvorlagen für beide PrivacyTypes. Der Schieberegler im Menü "Datenschutz " in Internetoptionen wird nur verschoben, wenn datenschutz für beide PrivacyTypes festgelegt ist.
Benutzerdefinierte Datenschutzeinstellungen für eine bestimmte URLZONE und PrivacyType können über den pszPreference-Parameter festgelegt werden. Der pszPreference-Parameter kann eine Reihe von Regeln enthalten, die durch Leerzeichen getrennt sind, die die Datenschutzeinstellungen beschreiben. Es ist wichtig zu beachten, dass die Regeln selbst keine Leerzeichen enthalten können. Die pszPreference verfügt über die folgende Struktur, in der mehrere logische Regeln vorhanden sein können: <signature><logical-rule><special-rule>.
Derzeit muss die Signatur auf IE6-P3PSettings/V1:festgelegt werden.
Logische Regeln haben das folgende Format: /<expression>=<decision>/.
Ein Ausdruck ist eine boolesche Anweisung, die aus kompakten Richtlinientoken besteht, die die Operatoren & (logisches AND) und ! (logisches NOT). Beim kompakten Richtlinientoken wird die Groß-/Kleinschreibung beachtet. (Weitere Informationen zu P3P-Datenschutzrichtlinien (Platform for Privacy Preferences) und kompakten Richtlinientoken finden Sie in der Projektspezifikation W3C: Platform for Privacy Preferences (P3P). ) Die Entscheidung ist ein einzelnes Kleinbuchstaben, das die Aktion definiert, die für das Cookie ausgeführt werden soll, dessen kompakte Richtlinie die angegebenen Token enthält. In der folgenden Tabelle sind gültige Entscheidungszeichen aufgeführt.
Zeichen | Definition |
---|---|
a | Akzeptieren Sie das Cookie. |
p | Fordern Sie den Benutzer auf, das Cookie zu akzeptieren oder zu verweigern. |
r | Lehnen Sie das Cookie ab. |
l | Leinen Sie das Cookie (senden Sie es nur in einem Erstanbieterkontext). |
T | Wenn es sich um ein persistentes Cookie handelt, wird das Cookie zu einem Sitzungscooky herabgestuft. |
Logische Regeln werden in der Reihenfolge ausgewertet, in der sie aufgelistet sind. Die erste logische Regel, die abgeglichen werden soll, falls vorhanden, bestimmt die Cookieaktion.
Ein leerer Ausdruck ist ebenfalls zulässig. Wenn ein Ausdruck leer ist, wird die linke Seite mit true ausgewertet. Diese Form einer logischen Regel kann am Ende eines Regelsatzes verwendet werden, um alle Situationen abzufangen, die nicht in die anderen Kategorien fallen.
Die folgenden Beispiele zeigen gültige logische Regeln.
/DEM=d/
Deny a cookie whose compact policy contains the DEM token
/CON&!TEL=a/
Accept a cookie whose compact policy contains the CON token
and does not contain the TEL token
/=a/
Accept all cookies
Spezielle Regeln werden mit den Symbolen nopolicy, session und always angegeben. Das Nopolicy-Symbol wird verwendet, um die Aktion anzugeben, die ausgeführt werden soll, wenn keine kompakte Richtlinie vorhanden ist. Nopolicy=d gibt beispielsweise an, alle Cookies ohne kompakte Richtlinie auf Sitzungscookies herabzustufen. Das Sitzungssymbol wird verwendet, um die Aktion anzugeben, die für Sitzungscookies ausgeführt werden soll, und kann nur auf ein festgelegt werden. Wenn session=a angegeben ist, werden alle Sitzungscookies unabhängig vom Inhalt der kompakten Richtlinie akzeptiert. Wenn diese Regel nicht angegeben ist, unterliegen Sitzungscookies den gleichen Regeln wie persistente Cookies. Schließlich wird das Always-Symbol verwendet, um anzugeben, dass die gleiche Aktion für alles ausgeführt wird. Beispielsweise gibt always=d an, dass alle Cookies verweigert werden, unabhängig davon, ob eine kompakte Richtlinie vorhanden ist. Beachten Sie, dass always=d entspricht /=d/.
Das folgende Beispiel zeigt eine Zeichenfolge der Datenschutzeinstellungen, die angibt, Cookies zu akzeptieren, für die die kompakte Richtlinie ein FIN/CONi-Tokenpaar enthält, Cookies mit kompakten Richtlinien, die FIN/CON-, FIN/CONo-, FIN/CONa- und GOV/PUB-Token oder ein TEL-Token enthalten, ablehnen und den Benutzer auffordern, wenn die kompakte Richtlinie eines Cookies das UNR-Token enthält. Es gibt auch an, Cookies ohne eine kompakte Richtlinie auf Sitzungscookies herabzustufen und alle Cookies zu akzeptieren, die einer der angegebenen Regeln nicht entsprechen. Beachten Sie, dass die erste Regel, die als "true" ausgewertet wird, die Cookieaktion bestimmt.
IE6-P3PSettings/V1: /FIN&CONi=a/ /FIN&CONo=r/ /FIN&CONa=r/ /FIN&CON=r/
/GOV&PUB=r/ /TEL=r/ /UNR=p/ nopolicy=d /=a/
Wie alle anderen Aspekte der WinINet-API kann diese Funktion nicht sicher innerhalb von DllMain oder den Konstruktoren und Destruktoren globaler Objekte aufgerufen werden.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wininet.h (einschließlich Wininet.h) |
Bibliothek | Wininet.lib |
DLL | Wininet.dll |
Weitere Informationen
InternetClearAllPerSiteCookieDecisions
InternetEnumPerSiteCookieDecision
InternetGetPerSiteCookieDecision