![]() |
O que são estes estranhos bolinhos que um website certamente já lhe ofereceu?
Na maior parte do tempo, quando um servidor web propõe um cookie, os utilizadores ignoram este termo e clicam em “OK” sem estar a preocupar-se sobre a sua evolução. Um cookie é na realidade um ficheiro armazenado no disco duro do utilizador, para permitir ao servidor web reconhecê-lo de uma página web a outro. Os cookies são utilizados nomeadamente pelos sites de comércio electrónico a fim de conservar a preferência do utilizador (por exemplo, as opções que assinalou) para evitar que tenha de escrever ou seleccionar tudo de novo. |
O problema essencial dos cookies vem de informações que contêm. Com efeito, quando um utilizador se liga a um síte personalizável, este vai colocar-lhe algumas perguntas a fim de elaborar o seu perfil, seguidamente vai armazenar estes dados num cookie. De acordo com o síte, a maneira como a informação é armazenada pode revelar-sese prejudicial para o utilizador.
Com efeito, um síte de venda em linha pode por exemplo recolher informações sobre as preferências dos utilizadores por meio de um questionário, para lhes propor ulteriormente artigos que lhes possam interessar.
Por exemplo, sabendo se o utilizador é um homem ou uma mulher, um síte poderá direccioná-lo directamente para a página adequada para fazer poupar tempo (e sobretudo para vender melhor). Se além disso, o utilizador indicar no seu perfil que é amador de ténis, o síte estará em condições de lhe propor uma selecção personalizada dos últimos artigos na matéria.
Um cookie é assim um mecanismo previsto para criar uma associação entre a sessão do utilizador (navegação entre páginas de um mesmo síte durante um período dado) e os dados relativos.
Idealmente, o cookie deve conter uma cadeia aleatória (identificador de sessão) única e dificilmente adivinhável, válida unicamente durante um tempo dado. Só o servidor deve poder estar em condições de associar as preferências do utilizador a este identificador. Assim, após expiração do cookie, o identificador de sessão será inútil e o cookie não conterá nenhuma informação relativa ao utilizador.
Em nenhum caso o cookie deve conter directamente as informações relativas ao utilizador e a sua duração de vida deve ser o mais próxima possível da que corresponde à sessão do utilizador.
Por outro lado, os dados armazenados num cookie são enviados pelo servidor, com base nos dados informados pelo utilizador (com excepção do endereço IP e a identificação do navegador transmitida automaticamente ao servidor). Assim, o cookie não pode em nenhum caso conter informações sobre o utilizador que ele não deu ou informações sobre o conteúdo do computador, ou noutros termos: o cookie não pode recolher informações sobre o sistema do utilizador.
Assim, recuse dar informações pessoais a um síte que não lhe inspira confiança, porque não tem nenhuma razão para recolher informações dessas.
Um cookie não tem por conseguinte nada de perigoso se o utilizador não der informações pessoais.
Os cookies fazem parte das especificações do protocolo HTTP, ou seja, o protocolo que permite surfar nas páginas web. O protocolo HTTP permite trocar mensagens entre o servidor e o cliente através de pedidos HTTP e de respostas HTTP.
Os pedidos e respostas HTTP contêm rubricas que permitem enviar informações específicas de maneira bilateral. Uma destas rubricas está reservada para a escrita de ficheiros no disco duro: os cookies.
A rubrica HTTP reservada à utilização dos cookies chama-se Set-Cookie, trata-se de uma simples linha de texto como esta:
Set-Cookie : NOM=VALEUR; domain=NOM_DE_DOMAINE; expires=DATE
Eis um quadro das principais chaves (chamados atributos) possíveis para um cookie :
| Atributo | Valor | Sintaxe | Descrição |
|---|---|---|---|
| NOME_DO_COOKIE | VALOR | O nome e o valor não podem conter os caracteres ponto e vírgula (;), vírgula (,) e espaço (). Para usar tal valor é necessário recorrer à codificação URL | Este atributo é obrigatório (é, de resto, o único) |
| expires | DATA | Dia, DD-Mês-YYYY HH:MM:SS GMT | O atributo expires permite definir a data na qual o cookie já não deve ser armazenado no disco, e não deve ser tido em conta pelo servidor |
| domain | nom_du_domaine | xxx.xxx.xxx |
O nome de domínio é deixado geralmente vazio porque o nome do servidor é atribuído por defeito (é o que se deseja geralmente). Quando é indicado, o nome de domínio deve conter pelo menos dois pontos (ie pt.kioskea.net). Uma máquina que provém de um domínio específico pode especificar apenas um nome de subdomínio ou o seu próprio nome de domínio |
| path | /repertoire | /chemin/ |
O atributo path (caminho) permite definir uma subdirectoria ou um ficheiro do servidor sobre o qual o cookie é válido, a fim de reduzir o seu campo de acção |
| secure | nenhum |
O atributo secure é opcional. Permite especificar que o cookie será enviado unicamente se a conexão for protegida (por SSL ou S-HTTP |
Quando um cliente se liga a um síte (por conseguinte ao servidor), os cookies para o domínio e o caminho especificado são enviados automaticamente nas rubricas do pedido HTTP. A rubrica apresenta-se então sob a forma :
Cookie : NOM1=VALEUR1; NOM2=VALEUR2; ...
Um certificado CGI (ou outro como ASP ou PHP) pode então verificar a presença do cookie:
Os cookies estão sujeitos a diversos constrangimentos: