Neu Cookie Manager zum EuGH Urteil zum selbsteinbau

tafechner

Offizieller Servicepartner
SPBanner
31. Juli 2010
780
102
Berlin
Wir haben es ja bereits umgesetzt und einige Hinweise von User erhalten und stetig verfeinert.
https://www.com-ins-netz.de/Cookie-Manager
Das Design z.B. etwas kleiner zu machen oder nur in einer Ecke oder als Balken unterzubringen kann jeder selber vornehmen oder durch uns oder Dritte umsetzen lassen.
Wir liefern ersteinmal einen Standard.

viele Erfolg damit und Grüße aus Berlin Torsten
 

ekpegleg

Gut bekanntes Mitglied
20. April 2016
108
10
Berlin
Ich poste hier mal meine derzeitige config.js

JavaScript:
// By default, Klaro will load the config from  a global "klaroConfig" variable.
// You can change this by specifying the "data-config" attribute on your
// script take, e.g. like this:
// <script src="klaro.js" data-config="myConfigVariableName" />
// You can also disable auto-loading of the consent notice by adding
// data-no-auto-load=true to the script tag.
var klaroConfig = {
    // You can customize the ID of the DIV element that Klaro will create
    // when starting up. If undefined, Klaro will use 'klaro'.
    elementID: 'klaro',

    // You can customize the name of the cookie that Klaro uses for storing
    // user consent decisions. If undefined, Klaro will use 'klaro'.
    cookieName: 'klaro',

    // You can also set a custom expiration time for the Klaro cookie.
    // By default, it will expire after 120 days.
    cookieExpiresAfterDays: 365,

    // You can customize the name of the cookie that Klaro will use to
    // store user consent. If undefined, Klaro will use 'klaro'.

    // Put a link to your privacy policy here (relative or absolute).
    privacyPolicy: '/Datenschutz',

    // Defines the default state for applications (true=enabled by default).
    default: false,

    // If "mustConsent" is set to true, Klaro will directly display the consent
    // manager modal and not allow the user to close it before having actively
    // consented or declines the use of third-party apps.
    mustConsent: true,

    // You can define the UI language directly here. If undefined, Klaro will
    // use the value given in the global "lang" variable. If that does
    // not exist, it will use the value given in the "lang" attribute of your
    // HTML tag. If that also doesn't exist, it will use 'en'.
    //lang: 'en',

    // You can overwrite existing translations and add translations for your
    // app descriptions and purposes. See `src/translations.yml` for a full
    // list of translations that can be overwritten:
    // https://github.com/DPKit/klaro/blob/master/src/translations.yml

    // Example config that shows how to overwrite translations:
    // https://github.com/DPKit/klaro/blob/master/src/configs/i18n.js
    translations: {
        // If you erase the "consentModal" translations, Klaro will use the
        // defaults as defined in translations.yml
        de: {
            consentModal: {
                title:'Cookies die wir setzen!',
                description:
                    'Seit dem EuGH Urteil vom Dienstag den 01.10.2019 sind wir verpflichtet von unseren Besuchern eine "AKTIVE" Cookie abfrage zu stellen. Leider sind Urteile nicht immer Userfreundlich auch wenn wir das Urteil als einen richtigen Schritt sehen.',
            },
            inlineTracker: {
                description: 'Mautic',
            },
            externalTracker: {
                description: 'Facebook + AdWords Retargeting',
            },
            adsense: {
                description: 'Anzeigen von Werbeanzeigen (Beispiel)',
            },
            matomo: {
                description: 'Sammeln von Besucherstatistiken, nur interner Gebrauch',
            },
            camera: {
                description: 'Eine �berwachungskamera (nur ein Beispiel zu IMG-Tags)',
            },
            cloudflare: {
                description: 'Schutz gegen DDoS-Angriffe',
            },
            intercom: {
                description: 'Zammad',
            },
            mouseflow: {
                description: 'Echtzeit-Benutzeranalyse (nur ein Beispiel)',
            },
            googleFonts: {
                description: 'Web-Schriftarten von Google gehostet',
            },
            purposes: {
                analytics: 'Besucher-Statistiken',
                security: 'Sicherheit',
                livechat: 'Live Chat',
                advertising: 'Anzeigen von Werbung',
                styling: 'Styling',
            },
        },
        en: {
            consentModal: {
                description:
                    'Here you can see and customize the information that we collect about you. Entries marked as "Example" are just for demonstration purposes and are not really used on this website.',
            },
            inlineTracker: {
                description: 'Example of an inline tracking script',
            },
            externalTracker: {
                description: 'Example of an external tracking script',
            },
            adsense: {
                description: 'Displaying of advertisements (just an example)',
            },
            matomo: {
                description: 'Collecting of visitor statistics',
            },
            camera: {
                description: 'A surveillance camera (just a silly example for an IMG tag)',
            },
            cloudflare: {
                description: 'Protection against DDoS attacks',
            },
            intercom: {
                description: 'Chat widget & collecting of visitor statistics (just an example)',
            },
            mouseflow: {
                description: 'Real-Time user analytics (just an example)',
            },
            googleFonts: {
                description: 'Web fonts hosted by Google',
            },
            purposes: {
                analytics: 'Analytics',
                security: 'Security',
                livechat: 'Livechat',
                advertising: 'Advertising',
                styling: 'Styling',
            },
        },
        tr: {
            consentModal: {
                description:
                    'Hakkınızda topladığımız bilgileri burada görebilir ve özelleştirebilirsiniz. "Örnek" olarak belirtilenler sadece gösterim amaçlıdır ve gerçekte bu site için kullanılmazlar.',
            },
            inlineTracker: {
                description: 'Satıriçi takip kodu için bir örnek',
            },
            externalTracker: {
                description: 'Dışarıdan çağırılan bir takip kodu için örnek',
            },
            adsense: {
                description: 'Reklam görüntüleme (sadece örnek)',
            },
            matomo: {
                description: 'Ziyaretçi istatistiklerini toplama',
            },
            camera: {
                description: 'İzleme kamerası (IMG tag icin saçma bir örnek daha)',
            },
            cloudflare: {
                description: 'DDoS saldırılarına karşı koruma',
            },
            intercom: {
                description: 'Sohbet aracı ve ziyaretçi istatistiklerini toplama (sadece bir örnek)',
            },
            mouseflow: {
                description: 'Gerçek zamanlı kullanıcı istatistiği (sadece bir örnek)',
            },
            googleFonts: {
                description: 'Google tarafından barındırılan Web Yazıtipi bilgileri',
            },
            purposes: {
                analytics: 'Analitik',
                security: 'Güvenlik',
                livechat: 'Canlı Sohbet',
                advertising: 'Reklam',
                styling: 'Biçimlendirme',
            },
        },
    },

    // This is a list of third-party apps that Klaro will manage for you.
    apps: [
        {
            name : 'onlineshop',
            default: true,
            title : 'Shopsystem',
            purposes : ['security'],
            cookies : ['JTLSHOP','language'],
            callback : function(consent, app){
            },
            required: true,
            optOut: true,
            onlyOnce: false,
        },
        {
            // Each app should have a unique (and short) name.
            name: 'matomo',

            // If "default" is set to true, the app will be enabled by default
            // Overwrites global "default" setting.
            // We recommend leaving this to "false" for apps that collect
            // personal information.
            default: false,

            // The title of you app as listed in the consent modal.
            title: 'Matomo / Piwik',

            // The purpose(s) of this app. Will be listed on the consent notice.
            // Do not forget to add translations for all purposes you list here.
            purposes: ['analytics'],

            // A list of regex expressions or strings giving the names of
            // cookies set by this app. If the user withdraws consent for a
            // given app, Klaro will then automatically delete all matching
            // cookies.
            cookies: [
                // you can also explicitly provide a path and a domain for
                // a given cookie. This is necessary if you have apps that
                // set cookies for a path that is not "/" or a domain that
                // is not the current domain. If you do not set these values
                // properly, the cookie can't be deleted by Klaro
                // (there is no way to access the path or domain of a cookie in JS)
                [/^_pk_.*$/, '/', 'analyse.lichte-kraft.eu'], //for the production version
                'piwik_ignore',
            ],

            // An optional callback function that will be called each time
            // the consent state for the app changes (true=consented). Passes
            // the `app` config as the second parameter as well.
            callback: function(consent, app) {
                // This is an example callback function.
                console.log(
                    'User consent for app ' + app.name + ': consent=' + consent
                );
            },

            // If "required" is set to true, Klaro will not allow this app to
            // be disabled by the user.
            required: false,

            // If "optOut" is set to true, Klaro will load this app even before
            // the user gave explicit consent.
            // We recommend always leaving this "false".
            optOut: false,

            // If "onlyOnce" is set to true, the app will only be executed
            // once regardless how often the user toggles it on and off.
            onlyOnce: false,
        },

        // The apps will appear in the modal in the same order as defined here.
        {
            name: 'mautic',
            default: false,
            title: 'Mautic (Newsletter)',
            purposes: ['analytics'],
            cookies: ['inline-tracker'],
            optOut: false,
            onlyOnce: false,
        },
        {
            name : 'google-analytics',
            default: false,
            title : 'Google Analytics',
            purposes : ['statistics'],
            cookies : [/^ga/i],
            callback : function(consent, app){
            },
            optOut: false,
            onlyOnce: false,
        },
        {
            name: 'adwords-facebookpixel',
            default: false,
            title: 'Google Adwords + Facebook',
            purposes: ['analytics'],
            cookies: ['external-tracker'],
            optOut: false,
            onlyOnce: false,
        },
        {
            name: 'payment',
            default: false,
            title: 'Amazon Payment',
            purposes: ['analytics','security'],
            cookies: ['amazon-pay-connectedAuth','apay-session-set','amazon-pay-abtesting-new-widgets','amazon-pay-abtesting-apa-migration','lpa_redirect'],
            optOut: false,
            onlyOnce: false,
        },
    ],
};

So hier mal ein paar Codeschnippsel zu den sogenannten APPS!!

JTL- Shop
JavaScript:
        {
            name : 'onlineshop',
            default: true,
            title : 'Shopsystem',
            purposes : ['security'],
            cookies : ['JTLSHOP','language'],
            callback : function(consent, app){
            },
            required: true,
            optOut: true,
            onlyOnce: false,
        },

Google Analytics
JavaScript:
        {
            name : 'google-analytics',
            default: false,
            title : 'Google Analytics',
            purposes : ['statistics'],
            cookies : [/^ga/i],
            callback : function(consent, app){
            },
            optOut: false,
            onlyOnce: false,
        },

Hi irgendwie funktioniert es bei mir nicht die cookies ein/aus zu schalten. @NETZdinge.de: Kann man dass nicht in "https://www.netzdinge.de/Lizenz-Plugin-Google-Codes" mit integrieren?

Ich denke die Callback-Funktion bekomme ich nicht hin.

Besten Gruss
Enrico
 

simran

Gut bekanntes Mitglied
14. Januar 2010
164
2
[QUOTE="
Wer diesen Manager mal sehen will. Mein eigener kleiner Webshop und Testobjekt sollte dafür genügen. https://www.magisches-laedchen.de/
Christian[/QUOTE]

War eben auf deiner Seite. Also als "User" würde ich da nicht so wirklich durchblicken. Schaut auch nicht gut aus mit den ganzen Zeichen statt der Umlaute. Und den Kasten unten rechts in der Ecke finde ich auch nicht so schön, und- da muss man ja auch erstmal durchblicken als User.

Ich respektiere deine Arbeit und deine Info hier, klar. Wollte nur mal diese Punkte aufzählen, kann man das vielleicht noch irgendwie optimieren?

Gruß...simran
 

holzpuppe

Sehr aktives Mitglied
14. Oktober 2011
1.683
242
Leipzig
Für die, die gern eine Rechtsanwaltsmeinung hätten und die nicht durch "Interpredationen" ihr Geschäft betreiben:



Das hier der Text gequotet wird, wurde mit der IT-Recht-Kanzlei abgesprochen, ohne Angabe der Namensnennung.

Eine schriftliche Aussage von Ama/PP liegt uns (natürlich) noch immer nicht vor.
Wenn ich das richtig gesehen habe, dann ist Amapay permanent auf allen Seiten geladen?
Das wäre natürlich ein Ausschlussgrund. Oder kann man die Amapay-Cookies nicht erst auf der "Bezahlseite" aktivieren? Halt wie es PayPal macht.
 

holzpuppe

Sehr aktives Mitglied
14. Oktober 2011
1.683
242
Leipzig
ob er sicher und zulässig ist, dafür gebe ich keine Garantie.

Aber wir haben ihn so laufen, wenn gewünscht kann ich es ja nochmal posten wie dieser eingebaut wird.

Alternativ kann dieser unter: https://opt-out.ferank.eu/en/install/ geladen werden
Dieses Cookie-Ding sieht nicht schlecht aus. Und sicherlich enorm anpassbar. zumindest Ghostery schlägt nicht an, wie bei dem anderen.

Naja, ich warte mal noch auf das "Tool" seitens IT-Rechtskanzlei. Das Mitte November kommen soll.
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.154
1.073
Wenn ich das richtig gesehen habe, dann ist Amapay permanent auf allen Seiten geladen?

Korrekt, überall und auf jeder Seite werden JS und Cookies von Ama gesetzt/geladen, egal was du im Plugin einstellst (auch wenn du zb. nur Bezahlen willst und kein Amazon Login anbieten willst, immer wird alles sofort geladen).

Das wäre natürlich ein Ausschlussgrund. Oder kann man die Amapay-Cookies nicht erst auf der "Bezahlseite" aktivieren? Halt wie es PayPal macht.

Nein, kann man nicht.

Warum nicht? Da am besten Solution360 fragen, die sind der Anbieter vom Plugin und haben es bis dato nicht der Mühe wert gefunden, hier irgendwas mitzuteilen.
 

admorris

Offizieller Servicepartner
SPBanner
Hallo Miteinander,

ich möchte euch gerne auch unsere Lösung präsentieren:
Demo: https://pro-demo5.admorris.com/
Infos/Preise: https://admorris.com/pro/sales-booster/
Doku: https://admorris.atlassian.net/wiki/spaces/APSD/pages/672432129/Cookiehinweis+Pro

Je nach Einstellungen kann der Kunde auch direkt zur Konfiguration der Cookies gezwungen werden.
Für unsere Salesbooster und die wichtigsten externen Scripts wie Google Analytics, Tagmanager, Facebook Pixel ... haben wir direkt fertige Vorlagen.

Design, etc. kann alles individuell eingestellt werden.

Schöne Grüße,

Moritz
 

eRock Marketing

Offizieller Servicepartner
SPBanner
9. Januar 2018
490
188
Meine Meinung ist: Investiert eure Zeit in die Lösung von Cookielosen Dingen.

Und sollten dann noch 1-2 Dienste übrig bleiben die aktuell nicht wegzudenken sind, so kann nach eigener Ermessungssache(Rat von Datenschutzbeauftragtem/Anwalt/DSGVO Dienstleister einholen) dafür noch ein Cookie-Banner mit Einwilligung eingesetzt werden.

Alles andere ist meiner Meinung nach sinnlos, denn: Das nutzt kaum einer (in Tests Tracking-Daten vs. Accesslog, kleiner als 3% wurden akzeptiert, und davon sind auch noch viele Daten unbrauchbar, wohl weil erst auf der nächsten Seite oder ähnliches akzeptiert wurde, aber es fehlen deutlich mehr woher die Besucher kommen - in dem Test haben wir es aber richtig eingebunden, nicht pseudo via Tools die im Nachgang noch Cookies löschen, sprich sauber: Erst Einwilligung und dann Skripte überhaupt integrieren).

Darf jeder gerne selbst entscheiden, aber die Zeit ist nach meiner Meinung verschwendet, sofern man bereits auf den "sicheren" Zug aufspringt. Es hat jedoch kaum einer Mut das Problem richtig anzusprechen - nämlich dass es mit Cookies nicht mehr sauber möglich ist zu tracken.

Es wird Lösungen geben müssen von den Herstellern der einzelnen Dienste für Remarketing und Co.
Bei einem anderen Kunden haben wir das Remarketing durch Interessenslisten ersetzt, es ist nicht das gleiche, aber die Conversionrate ist nahezu wieder erreicht worden.
Aber leider verschafft man sich natürlich einen Nachteil gegenüber der Konkurrenz wenn man sauber arbeitet.

Und da ist der Knackpunkt: Der Verlust an Trackingdaten bei sauberer Implementierung mit Cookie-Tools ist meiner Meinung nach höher als die Alternative Verwendung von cookielosen oder generell alternativen Methoden (Beispiel Remarketing vs. Interessenslisten). Mit den Daten der großen zu arbeiten (Google, Facebook, ...) ist ja nicht das Vergehen des Shopbetreibers, so würde ich das vorsichtig einschätzen (vorausgesetzt man arbeitet nicht wie Cambridge Analytica ;) ).

P.S.: Bitte nicht als rechtliche Empfehlung ansehen.

Zum Amazon Plugin: Amazon kann man z.B. über andere Plugins/eigene Programmierung auf den nicht relevanten Seiten wieder ausschließen (Skripte noch PHP seitig, sprich vor der Ausgabe wieder aus dem Quelltext entfernen) .
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.154
1.073
Meine Meinung ist: Investiert eure Zeit in die Lösung von Cookielosen Dingen.

So einfach ist dass dann leider auch nicht.
Sofern es tracking ist, reicht auch (angeblich) cookieless nicht ohne Zustimmung (Stichwort: Fingerprinting), daher auch Piwik wertlos.

Es wird Lösungen geben müssen von den Herstellern der einzelnen Dienste für Remarketing und Co.
Ja, absolut.
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.154
1.073
[QUOTE="
Wer diesen Manager mal sehen will. Mein eigener kleiner Webshop und Testobjekt sollte dafür genügen. https://www.magisches-laedchen.de/
Christian

Naja, also sowas find ich dann schon eher "suboptimal":

Hallo! Diese Seite ist transparent und lässt Ihnen die Wahl der externen Services, die aktiviert werden dürfen.
Bitte deaktivieren Sie Ihren 'Werbeblocker' um Cookie-Einstellungen vornehmen zu können.

Als User mit AdBlocker darf man da wohl nichts kaufen :D
 
  • Gefällt mir
Reaktionen: simran

eRock Marketing

Offizieller Servicepartner
SPBanner
9. Januar 2018
490
188
So einfach ist dass dann leider auch nicht.
Sofern es tracking ist, reicht auch (angeblich) cookieless nicht ohne Zustimmung (Stichwort: Fingerprinting), daher auch Piwik wertlos.

Jein - man kann ja auch in Piwik sagen ob man Fingerprinting aktivieren will.
Und im Gegensatz zu den allgemeinen Consent Tool Managern kann man mit Piwik Pro ebenfalls einen solchen schalten, der nicht das vollständige Aus bedeutet.
Der entscheidende Unterschied: Bei Ablehnung durch den Nutzer werden die Daten jedoch anonym (ohne Fingerprinting) erhoben und man geht nicht leer aus.

Siehe dazu Grafik: https://uploads.clearcode.cc/piwikpro.de/2018/11/Diagramm_Daten-Anonymisierung.svg?ver=1547733278
respektive der volle Beitrag dazu: https://piwikpro.de/blog/anonymes-tracking-analytics-ohne-personenbezogene-daten/
 

eRock Marketing

Offizieller Servicepartner
SPBanner
9. Januar 2018
490
188
Wie im vorherigen Beitrag angesprochen, sehe ich auch so.
Aber dass es mit Piwik nicht möglich sein sollte, sehe ich nicht so.

Piwik: Ohne Cookies und nur anonymisierte Daten (ohne Fingerprinting) - sehe ich aktuell nicht bedenklich.
Piwik mit Consent Manager: Entspricht der gleichen Hürde wie andere Consent Tools, aber: Bei Ablehnung wird wenigstens grundlegendes gemessen, nur eben nicht geräteübergreifend, keine genaue Standortbestimmung, keine wiederkehrenden Besucher, ... also alles was auf einen Nutzer zurückzuführen wäre. Aber woher Besucher kommen, wie lange die Aufenthaltsdauer/Absprungrate/... sind, was über welche Kampagnen verkauft wurde sollte alles gehen.
 

hula1499

Sehr aktives Mitglied
22. Juni 2011
5.154
1.073
Piwik PRO: ich kann Firmen/Seiten absolut nicht ausstehen, die keine transparente Preispolitik haben und Preise nicht "sofort" sichtbar sind.

Auch mag ich keine Monatsabos, aber ich gebe zu, dass ich das Teil von admorris mal wirklich testen werde nächste Woche, schon allein wegen Ama Pay, denn bis da Solution360/Amazon was macht, vergehen sicher wieder Monate.
 
  • Gefällt mir
Reaktionen: webworker

Shop-Schmied

Sehr aktives Mitglied
4. Februar 2014
335
57
Kann mir bitte mal jemand helfen, dass zu verstehen:

Mal angenommen ich möchte meine Analytics-IP nicht (ganz) via Backend entfernen... , dann kann ich dennoch das cookie-tracking via .tpl-Datei deaktivieren?!

Die google analytics-Einstellungen finde ich ja in der footer.tpl bzw. footer_custom.tpl (müssen beide .tpl geändert werden? oder hat eine Vorrang?)

Dort steht normalerweise so etwas:
Code:
      {if $Einstellungen.global.global_google_analytics_id}
         <script type="text/javascript">
            var _gaq = _gaq || [];
            _gaq.push(['_setAccount', '{$Einstellungen.global.global_google_analytics_id}']);
            _gaq.push(['_gat._anonymizeIp']);
            _gaq.push(['_trackPageview']);

            (function() {ldelim}
               var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
               ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
               var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
            {rdelim})();
         </script>
      {/if}
   </div>
   {/if}
{if !$bExclusive}

Wenn ich das richtig interpretiere, müsste og. Code durch folgenden ersetzt werden:
Code:
ga('create', 'UA-XXXXX-Y', {
  storeGac: false,
});

Kann und darf das funktionieren?
Und sind dann die Daten, die noch ankommen brauchbar?

Auf einer anderen, nicht so wichtigen Website, habe ich das mal so eingetragen - zumindest finde ich dort jetzt wirklich keine cookies mehr (die Statistik geht noch / aber eben sehr eingeschränkt).
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu JTL Cookie Banner vs Consent Mode v2 für Google ADs Allgemeine Fragen zu JTL-Shop 6
Neu Insecure cookie setting: missing flags JTL-Shop - Fehler und Bugs 3
PayPal - Consent-Manager Einrichtung JTL-Shop5 0
Neu ASIN einem Produkt zuordnen zum aufschalten bei amazon JTL-Wawi 1.6 6
Neu Template anpassen - parallel zum bestehenden, ohne Aktivierung? Templates für JTL-Shop 2
Neu GLS Bank stellt FinTS/HBCI Serveradressen zum 13.03.2024 um (+ GenoBanken) User helfen Usern 2
Neu Stripe - Einstellung Sofortüberweisung zum 15.5.2024 Business Jungle 0
Neu Verbindungsproblem Wawi (1.8.12.0) zum JTL-Shop (5.2.4) über localhost User helfen Usern - Fragen zu JTL-Wawi 0
In Diskussion JTL-POS: Erkenntnisse zum Betrieb auf Windows (virtuell oder hardware) JTL-POS - Fragen zu Hardware 4
Neu Richtige Hook zum Berechnen der Lieferzeit in Artikel.php Technische Fragen zu Plugins und Templates 1
Neu Nach Installation eines neuen SQL Servers klappt die Verbindung vom Benutzer-PC zum Server-PC nicht mehr. Installation von JTL-Wawi 5
Kein Abgleich zum Shop, ich komme nicht in Plattformen/Verkaufskanäle rein JTL-Wawi 1.8 3
Neu Ameise - Logikfrage zum Import von Artikeln mit und ohne Varkombis gemäß Guide User helfen Usern - Fragen zu JTL-Wawi 0
Neu Wunschzettel Name verleitet zum Missbrauch JTL-Shop - Fehler und Bugs 0
Wunschzettel Name verleitet zum Missbrauch Einrichtung JTL-Shop5 5
Neu Hilfe zum Thema Versandart ändern User helfen Usern - Fragen zu JTL-Wawi 1

Ähnliche Themen