Cookie von Contenido

Fragen zur Installation von CONTENIDO 4.10? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
lunsen_de
Beiträge: 213
Registriert: Mo 17. Okt 2005, 20:26
Wohnort: Weimar
Kontaktdaten:

Cookie von Contenido

Beitrag von lunsen_de » Mo 22. Jun 2020, 08:52

Hallo,

besteht die Möglichkeit dem Cookie von Contenido (1frontend) eine Beschreibung zu geben? Bspw.: Description: "Eindeutige ID, die die Sitzung des Benutzers identifiziert.“ Type: „Necessary“. Damit könnte man nach aktueller Urteilslegung auf Banner etc. verzichten.

Grüße larslunsen

Faar
Beiträge: 1657
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Faar » Mo 22. Jun 2020, 09:05

Man kann beliebiges rein schreiben, das ist kein brauchbares Argument.
Wichtig ist, was es ist. Und wenn es zum einen technisch ist, so wie "1frontend" als erster Frontendbesucher, dann handelt es sich um ein Session Cookie, um die Einstellungen für diesen Besucher zu speichern.
Session erkennt man im Bild.
Dort steht als Info dann, dass die Gültigkeitsdauer auf diese Sitzung beschränkt ist.
Beendet man die Sitzung, ist das Cookie weg.
Das ist Erklärung genug.
Kocki.JPG
Kocki.JPG (14.85 KiB) 1110 mal betrachtet
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

lunsen_de
Beiträge: 213
Registriert: Mo 17. Okt 2005, 20:26
Wohnort: Weimar
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von lunsen_de » Mo 22. Jun 2020, 09:50

Hallo, danke für die Info. Soweit verständlich, aber im Firefox (Konsole) steht bei einer Seite die nur das Frontend Cookie setzt:

Das Cookie “1frontend” wird in Zukunft bald abgelehnt werden, da es für das Attribut "sameSite" entweder "none" oder einen ungültigen Wert angibt, ohne das "secure"-Attribut zu verwenden. Weitere Informationen zum "sameSite"-Attribut finden Sie unter https://developer.mozilla.org/docs/Web/ ... e/SameSite

Ist hier nicht Handlungsbedarf, kann man das Attribut irgendwo eintragen/ändern?

Grüße larslunsen

xmurrix
Beiträge: 2930
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von xmurrix » Mo 22. Jun 2020, 10:32

Wenn die Webseite unter HTTPS läuft, was ja heutzutage der Standard sein sollte, kann man in der data/config/{environment}/config.misc.php den Wert zum Versenden von Cookies nur über sichere Verbindungen aktivieren.

Code: Alles auswählen

// (bool) Enforce HTTPS for cookies
$cfg['secure'] = true;
Damit erübrigt sich auch das Setzen der SameSite Option für das Cookie, falls der Browser eine nicht gesetzte SameSite Option als "None" interpretiert.

CONTENIDO kann momentan nicht die SameSite Option setzen, ich sehe hier auch Handlungsbedarf, das sollte konfigurierbar sein.

Nachtrag:
Das Setzen des SameSite Option für Cookies ist in PHP ab der Version 7.3 möglich. Wenn das eingebaut wird, muss für CONTENIDO die PHP-Voraussetzung von ">= 7.0" auf ">= 7.3" erhöht werden.
CONTENIDO downloads: CONTENIDO 4.10.1
CONTENIDO links: Documentation, API documentation
CONTENIDO @ Github: CONTENIDO 4.10

Faar
Beiträge: 1657
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Faar » Di 23. Jun 2020, 09:54

xmurrix hat geschrieben:
Mo 22. Jun 2020, 10:32
Nachtrag:
Das Setzen des SameSite Option für Cookies ist in PHP ab der Version 7.3 möglich. Wenn das eingebaut wird, muss für CONTENIDO die PHP-Voraussetzung von ">= 7.0" auf ">= 7.3" erhöht werden.
Da sowieso bei vielen Hostern PHP 7.2 auslaufen wird, sehe ich kein Problem, eine neuere Contenido Version ab PHP 7.3 freu zu geben.
Außer man baut IF(PHP<=7.2) ein, damit es abwärtskompatibel bleibt.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

xmurrix
Beiträge: 2930
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von xmurrix » Di 23. Jun 2020, 09:59

Faar hat geschrieben:
Di 23. Jun 2020, 09:54
...Außer man baut IF(PHP<=7.2) ein, damit es abwärtskompatibel bleibt...
Macht es die ganze Sache nicht komplizierter, wenn man eine neue Konfiguration einführt, die aber erst ab PHP 7.3 verwendet wird?
CONTENIDO downloads: CONTENIDO 4.10.1
CONTENIDO links: Documentation, API documentation
CONTENIDO @ Github: CONTENIDO 4.10

Faar
Beiträge: 1657
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Faar » Di 23. Jun 2020, 10:03

lunsen_de hat geschrieben:
Mo 22. Jun 2020, 09:50
Das Cookie “1frontend” wird in Zukunft bald abgelehnt werden, da es für das Attribut "sameSite" entweder "none" oder einen ungültigen Wert angibt, ohne das "secure"-Attribut zu verwenden. Weitere Informationen zum "sameSite"-Attribut finden Sie unter https://developer.mozilla.org/docs/Web/ ... e/SameSite

Ist hier nicht Handlungsbedarf, kann man das Attribut irgendwo eintragen/ändern?
Ich habe das SameSite-Cookie Thema noch nicht ganz intus, aber kann es sein, dass es Probleme gibt, wenn man folgende Installationen hat?
1. linear
Frontend: https://domain.tld/
Backend: https://backend.domain.tld/

2. gemischt
Frontend: https://domain.tld/
Backend: http://backend.domain.tld/

Ich habe beide Fälle, weil die Geschichte mit dem SSL-Zertifkat immer noch eine Scheiße ist und mal bekommt man eines für alle Subdomains und mal nur für die Hauptdomain.
Also gilt das Cookie dann nicht mehr für Subdomains oder mit und ohne SSL?
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

Faar
Beiträge: 1657
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Faar » Di 23. Jun 2020, 10:10

xmurrix hat geschrieben:
Di 23. Jun 2020, 09:59
Faar hat geschrieben:
Di 23. Jun 2020, 09:54
...Außer man baut IF(PHP<=7.2) ein, damit es abwärtskompatibel bleibt...
Macht es die ganze Sache nicht komplizierter, wenn man eine neue Konfiguration einführt, die aber erst ab PHP 7.3 verwendet wird?
:shock:
Ich weiß nicht, ob ich die Frage richtig verstanden habe.
Aber wenn die Browser das bisherige Cookie nicht akzeptieren wollen, wird die Frage sowieso obsolet, dann muss man es für php 7.3 anpassen, weil ohne das Cookie würde das Frontend nicht mehr richtig funktionieren, der Frontend-Login sowieso nicht mehr.
Praktisch wäre das komplette Thema Cookies in Contenido auf dem Prüfstand.
Oder?
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

emergence
Beiträge: 10605
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von emergence » Fr 26. Jun 2020, 10:15

dafür gibt es ne ganz simple lösung...
man kann ja den cookie path konfigurieren...

ist ja so definiert in class cSession
cRegistry::getConfigValue('cookie', 'path', $path);

definier doch einfach mal als path

/; sameSite=lax

sollte das thema mit cookie akzeptanz lösen...
*** make your own tools (wishlist :: thx)

lunsen_de
Beiträge: 213
Registriert: Mo 17. Okt 2005, 20:26
Wohnort: Weimar
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von lunsen_de » Fr 26. Jun 2020, 12:36

Hallo, wo finde ich das bei 4.9.12 und sogar vielleicht bei 4.8?

Grüße larslunsen

emergence
Beiträge: 10605
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von emergence » Mo 29. Jun 2020, 14:48

bei der 4.9.12 sollte das in der

data/config/{environment}/config.misc.php

gleich nach

Code: Alles auswählen

// (bool) Enforce HTTPS for cookies
$cfg['secure'] = false;
folgendes setzen...

Code: Alles auswählen

$cfg['cookie']['path'] = '/; sameSite=lax';
das sollte es tun...
*** make your own tools (wishlist :: thx)

Faar
Beiträge: 1657
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Faar » Di 17. Nov 2020, 16:57

emergence hat geschrieben:
Mo 29. Jun 2020, 14:48
bei der 4.9.12 sollte das in der

data/config/{environment}/config.misc.php

gleich nach

Code: Alles auswählen

// (bool) Enforce HTTPS for cookies
$cfg['secure'] = false;
folgendes setzen...

Code: Alles auswählen

$cfg['cookie']['path'] = '/; sameSite=lax';
das sollte es tun...
Mir fällt gerade auf, dass dieser Eintrag für das gesamte System gilt.
Was ist aber, wenn ein Mandant https hat und einer nicht?
Oder Frontend https aber das Backend nicht, weil ein Zertifikat keine Subdomains mit einschließt?
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

Oldperl
Beiträge: 4141
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Oldperl » Mi 18. Nov 2020, 09:25

Faar hat geschrieben:
Di 17. Nov 2020, 16:57
Mir fällt gerade auf, dass dieser Eintrag für das gesamte System gilt.
Was ist aber, wenn ein Mandant https hat und einer nicht?
Oder Frontend https aber das Backend nicht, weil ein Zertifikat keine Subdomains mit einschließt?
Dann setzt Du den Config-Wert in einer lokalen Config-Datei des Mandanten, sollte auch gehen.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

Faar
Beiträge: 1657
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Faar » Mi 18. Nov 2020, 10:38

Ok, danke Dir.

Überschreibt das dann also den Wert, der in der generellen Config steht.

Gruß,
Frank
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

Oldperl
Beiträge: 4141
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Cookie von Contenido

Beitrag von Oldperl » Mi 18. Nov 2020, 11:26

Faar hat geschrieben:
Mi 18. Nov 2020, 10:38
Ok, danke Dir.

Überschreibt das dann also den Wert, der in der generellen Config steht.
Sorry, ich habe nochmal geschaut. Leider funktioniert das nicht, da Contenido die startup-Datei des Core im Frontend erst nach dem Include der config-Dateien des Frontend einbindet. So ist leider das config-Array, und damit auch die Einstellungen der config-misc, dort noch gar nicht vorhanden.

Code: Alles auswählen

// Clients local configuration
if (file_exists($frontend_path . 'data/config/' . CON_ENVIRONMENT . '/config.local.php')) {
    @include($frontend_path . 'data/config/' . CON_ENVIRONMENT . '/config.local.php');
}

// CONTENIDO startup process
if (!is_file($contenido_path . 'includes/startup.php')) {
    die("<h1>Fatal Error</h1><br>Couldn't include CONTENIDO startup.");
}
include_once($contenido_path . 'includes/startup.php');
Alternativ könnte man die config.local.php in /data/config nehmen, müsste dann aber dort eine Erkennung für das Frontend und den Client mit einbauen um entsprechende Änderungen der Einstellung in der $cfg nur dort zu machen.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

Antworten