As capacidades dos biscoitos cresceram e evoluíram ao longo dos anos, mas deixaram algumas questões legadas. Para lidar com isto, os navegadores (incluindo Safari, Chrome, Firefox, e Edge) estão a mudar o seu comportamento em relação ao SameSite e aos atributos Secure para um modelo seguro por defeito para cookies.
Como programador web 4D, pode estar preocupado com o cookie de sessão web 4D se quiser evitar a sua aplicação de pedidos de falsificação em vários sites.
Para evitar que o cookie da sua sessão web circule na web inutilmente ou seja mal compreendido pelos navegadores devido a um valor padrão aplicado, deve perguntar se o é:
- um cookie de terceiros: associado a um nome de domínio diferente do da página onde o cookie é encontrado. Um cookie de terceiros é colocado por um objecto de página(por exemplo, um anúncio) proveniente de um domínio que não seja o que aloja a página
ou
- um cookie de primeira mão: associado ao domínio da página
Dependendo do seu caso de utilização, deverá escolher o valor adequado para o atributo SameSite do seu cookie de sessão web.
Para reforçar a segurança, o atributo Secure deve ser definido para o cookie de sessão web quando a ligação é segura (HTTPS) para indicar ao navegador que o cookie pode ser enviado em segurança.
Continue a ler para saber como 4D tem as suas costas para melhorar a privacidade e a segurança em toda a web.
Para lhe permitir escolher como o seu servidor web deve comportar-se, melhorámos o objecto do servidor web adicionando uma nova propriedade sessionCookieSameSite.
Defina um valor do atributo Samesite
Por defeito, o servidor web irá definir o atributo SameSite do cookie da sessão para“Strict”. Escolhemos este valor porque é o mais seguro.
Se quiser outro valor, utilize o comando Servidor WEB:
var $webServer; $settings: Object
$settings :=New object()
$webServer :=WEB Server
$settings .sessionCookieSameSite:=Web SameSite Lax
$webServer .
stop()
$webServer .
start($settings)
Cada valor de sensibilidade para o atributo SameSite é fornecido na língua 4D com constantes específicas:
- Web SameSite Lax = “Lax”
- Web SameSite Strict = “Strict” (Estrito)
- Web SameSite Nenhum = “Nenhum”
Aqui está uma visão geral do que vai ver no seu navegador:
e o atributo seguro?
Se o valor do atributo SameSite for “Nenhum”, alguns navegadores podem exigir que o atributo Seguro seja definido para outro valor a fim de o enviar (apenas se a ligação for HTTPS).
A boa notícia é que o servidor web 4D trata disto automaticamente.
Se uma ligação for HTTPS, o cookie de sessão é automaticamente definido com o atributo Secure, para que os navegadores o enviem.
Aqui está uma visão geral do que verá no seu navegador com uma ligação HTTPS:
Agora vamos trabalhar em segurança com as nossas aplicações web e discutir isto no fórum!