Pergunta

Estamos criando um novo aplicativo Web ASP.NET voltado para o consumidor/público. Existem duas preocupações:

-Use Cookie ou Cookieless Forms Autentication?

-Se decidirmos não usar cookies, como você armazenaria os dados que, de outra forma, seriam armazenados no cookie (ID do cliente, afiliateID etc.). A estrutura de autenticação ASP.NET rastreia algo como CustomerID?

Foi útil?

Solução

Para um aplicativo da Web normal, não há boas razões para usar a autenticação de cozinheira - o medo de biscoitos morreu cerca de uma década atrás.

Para dados reais, o objeto de sessão geralmente é uma escolha melhor do que os cookies individuais - o cookie da sessão é um único valor que efetivamente fornece uma chave para os dados da sessão que você armazenou no servidor. Existem certos casos especializados em que há problemas no uso da sessão, por exemplo, em implantações multi-servidores, mas para a maioria dos aplicativos é simples e adequada.

O sistema de autenticação de formulários padrão rastreia o nome de usuário - geralmente isso é suficiente para procurar os dados necessários do seu banco de dados, se você não quiser manter nada na sessão.

Outras dicas

Se você está fazendo autenticação, os cookies são o método usual. Hoje em dia é muito raro que as pessoas terão biscoitos desligados porque muitos sites já dependem deles.

Dito isto, o ASP.NET suporta a autenticação de "cookieless". Basicamente, ele apenas adiciona o token de autenticação como um parâmetro no URL. Ele analisa todos os URLs de saída para garantir que eles também incluam as informações do token. Pessoalmente, eu não me incomodaria com isso e apenas exigia cookies. Existem algumas dores de cabeça adicionais ao tentar cozinhar (por exemplo, isso pode tornar o SEO muito mais difícil, porque os mecanismos de pesquisa verão um URL diferente toda vez que rasteja a página).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top