Připravte se na nové atributy SameSite a Secure pro soubory cookie

Automaticky přeloženo z Deepl

Schopnosti souborů cookie v průběhu let rostly a vyvíjely se, ale zanechaly po sobě některé problémy. Prohlížeče (včetně prohlížečů Safari, Chrome, Firefox a Edge) kvůli tomu mění své chování, pokud jde o atributy SameSite a Secure, a zavádějí pro soubory cookie model secure-by-default.

Jako vývojáře webu 4D vás může zajímat soubor cookie relace webu 4D, pokud chcete svou aplikaci ochránit před Cross-site request forgery.

Abyste zabránili tomu, že váš soubor cookie webové relace bude nesmyslně kolovat po webu nebo že ho prohlížeče nepochopí kvůli použité výchozí hodnotě, měli byste se zeptat, zda je:

  • soubor cookie třetí strany: spojený s jiným názvem domény, než je název stránky, na které se soubor cookie vyskytuje. Soubor cookie třetí strany je umístěn objektem stránky( např. reklamou), který pochází z jiné domény, než je doména, na které je stránka umístěna.

nebo

  • soubor cookie první strany: spojený s doménou stránky.

V závislosti na případu použití byste měli zvolit vhodnou hodnotu atributu SameSite souboru cookie relace webu.

Pro posílení bezpečnosti musí být u souboru cookie webové relace nastaven atribut Secure, pokud je připojení zabezpečené (HTTPS), aby bylo prohlížeči naznačeno, že soubor cookie může být odeslán bezpečně.

Čtěte dále a dozvíte se, jak vám společnost 4D kryje záda, aby zlepšila soukromí a zabezpečení na webu.

Abychom vám umožnili zvolit, jak se má webový server chovat, rozšířili jsme objekt webového serveru o novou vlastnost sessionCookieSameSite.

Nastavení hodnoty atributu Samesite

Ve výchozím nastavení nastaví webový server atribut SameSite souboru cookie relace na hodnotu„Strict“. Tuto hodnotu jsme zvolili, protože je nejbezpečnější.

Pokud chcete jinou hodnotu, použijte příkaz WEB Server:

var $webServer; $settings: Object

$settings :=New object()
$webServer :=WEB Server
$settings .sessionCookieSameSite:=Web SameSite Lax

$webServer .stop()
$webServer .start($settings)

Každá hodnota citlivosti pro atribut SameSite je v jazyce 4D uvedena pomocí specifických konstant:

  • Web SameSite Lax = „Lax“.
  • Web SameSite Strict = „Strict“.
  • Web SameSite None = „None“

Zde je přehled toho, co se zobrazí v prohlížeči:

a atribut secure?

Pokud je hodnota atributu SameSite „None“, mohou některé prohlížeče pro odeslání vyžadovat nastavení atributu Secure na jinou hodnotu (pouze pokud je připojení HTTPS).

Dobrou zprávou je, že webový server 4D to zvládá automaticky.

Pokud je připojení HTTPS, je soubor cookie relace automaticky nastaven s atributem Secure, takže jej prohlížeče odešlou.

Zde je přehled toho, co se zobrazí v prohlížeči při připojení HTTPS:

blank

Nyní pojďme bezpečně pracovat s našimi webovými aplikacemi a diskutovat o tom na fóru!

Avatar
• Product Owner • Marie-Sophie Landrieu-Yvert se připojila k programovému týmu 4D jako Product Owner v roce 2017. Jako Product Owner má na starosti psaní uživatelských příběhů a jejich převod do funkčních specifikací. Její úlohou je také zajistit, aby implementovaná funkce odpovídala potřebám zákazníka. Marie-Sophie vystudovala inženýrskou školu ESIGELEC a svou kariéru zahájila jako inženýrka v IBM v roce 1995. Podílela se na různých projektech (projekty údržby nebo výstavby) a pracovala jako vývojářka Cobol. Poté pracovala jako UML designer a Java developer. V poslední době byly jejími hlavními rolí analyzovat a psát funkčních požadavky a koordinovat obchodní a vývojové týmy.