Pergunta

Estou trabalhando em uma página de login de logon único usando Shibolete que será usado para uma variedade de aplicações web.Obviamente, gostaríamos de tornar esta página o mais segura e utilizável possível, limitando ao mesmo tempo os efeitos dos golpes de phishing.

Quais são as práticas recomendadas a serem lembradas ao criar uma página de login?

Algumas perguntas que surgiram em torno deste problema:

  • É importante que a página de login sempre tenha a mesma aparência em todas as telas?
  • Por outro lado, seria benéfico que a página de login tivesse um design aleatório?
  • É melhor que a página de login tenha a mesma aparência de todas as outras páginas ou deve ter um design exclusivo?
  • Se a página de login tiver seu próprio design exclusivo, ela deverá incorporar outros elementos constantes do design do seu site (como navegação global)?
  • A página de login é um local apropriado para fornecer ao usuário conteúdo adicional (como as últimas notícias)?
  • Existem recursos de segurança adicionais que devem ser incluídos para ajudar a manter as pessoas seguras?
Foi útil?

Solução

Notas de usabilidade:

Pessoalmente eu odiar Quando os sites colocam a "senha esquecida" ou "Esqueci o nome de usuário ou" ajuda "vincula entre o campo de senha e o botão de login. Como usuário do teclado, eu não deveria ter que guardar sobre eles para chegar ao botão Enviar.

Melhor ainda, capture também o keypress Enter no campo Senha para que eu possa submitar automaticamente com a tecla Enter.

Outras dicas

Manter o mesmo design em sua página de login informará aos seus usuários que eles estão tentando fazer login na sua página se o design do design alterar aleatoriamente o usuário pode pensar que o site foi movido ou serem vítimas de pishing. Então, eu recomendaria para manter as mesmas diretrizes que suas páginas de conteúdo

Não importa o que você projete, um phisher poderá imitá -lo. Prevenir completamente o phishing é um problema difícil. Você terá que ter alguns meios de identificar seus usuários antes da Eles fazem login. Alguns bancos fazem isso agora. Você insere seu nome e eles mostram uma imagem que você mesmo selecionou e, depois de ter certeza de que é a mesma imagem, você insere sua senha. Isso pode ser um nível maior de complexidade do que o que seu site exige.

No lado técnico, o Bank of America realiza isso usando um objeto compartilhado local flash chamado Passmark. Seu navegador envia silenciosamente esses dados se identificando para o banco. Se você excluir o LSO, não será mostrado sua imagem porque o Bofa não pode identificá -lo. Mesmo isso ainda é vulnerável a ataques de homem no meio.

Uma outra coisa "sem duh" que eu ainda vejo em muitos aplicativos que eu vou, se as credenciais especificadas forem inválidas, não indique qual é inválido. Basta dizer algo como "combinação inválida de usuário/senha" em vez de "senha inválida" que impedirá que essas pessoas engenharia social conheçam uma base de usuários acessa o seu site.

A Smashing Magazine tem um resumo bastante completo sobre os formulários de login.Padrões de design de formulários da web: formulários de inscrição

Inclua prevenção do DOS no nível do aplicativo

Seja não específico com falhas de login. Um "login falhou" genérico em vez de "nome de usuário desconhecido".

Use um Captcha ou outro teste de Turing.

Parece um acéfalo, mas use https se o aplicativo exigir. Caramba, mesmo que isso não o justifique, porque as pessoas tendem a reutilizar as mesmas senhas. Você pode obter um certificado SSL barato hoje em dia. Se eles levantarem uma senha do seu site, poderão experimentá -la em outro lugar. Mesmo muitos bancos não têm a página de login em uma linha segura. Ele publica em uma página HTTPS, mas ainda não há proteção de um homem no ataque do meio do meio.

Eu concordo com Omniwombat. Phishing é um problema difícil de resolver bem e aparentemente impossível resolvê -lo completamente.

Pense tanto como um usuário quanto como um segurança:se você fizer com que eles façam um captcha toda vez que fizerem login, eles ficarão muito cansados ​​disso.

Se você está tentando evitar a negação de serviço, talvez faça um captcha aparecer somente depois que houver tentativas de login suficientes (com falha?) Em um determinado período de tempo.

Considere usar NTLM, OpenID ou Shibboleth para tornar o login o mais automático possível para a maioria dos usuários.

Não faça as pessoas irem para uma página separada para se registrar.Presumivelmente, você terá campos de nome de usuário e senha e um botão de login/enviar.Basta adicionar também um botão "registrar como novo usuário", para que novos usuários possam usar os campos de nome de usuário/senha existentes.Se você precisar coletar detalhes adicionais para novos usuários, abra um formulário (usando DHTML, não uma janela pop-up) para coletá-los.

Uma dica útil para as circunstâncias: você pode desativar a economia de senha do lado do cliente adicionando autocomplete = "off" ao campo de senha.

Isso não funciona em todos os navegadores (se bem me lembro, ou seja, 6+ e Firefox 3+)

O melhor que já vi até agora na tentativa de parar de phishing é a interface de login de um banco. O login é feito em 3 partes, primeiro o usuário insere o número da conta (número do cartão de débito, número do cartão de crédito ...), a segunda etapa lista aleatoriamente 1 de 3 perguntas especificadas por um usuário (por exemplo: que escola você frequentou Para a 10ª série), a última parte, se os dois primeiros forem bem -sucedidos, será exibir uma imagem e algum texto especificado pelo usuário na inscrição, com o campo de senha abaixo.

Perceba que seu usuário gastará todos os 10 segundos nessa página em geral, na verdade não importa como é, desde que seja óbvio onde colocar seu ID de usuário e senha. Fora isso, simplesmente não seja um desses sites que se oferecem para me enviar minha senha, se eu esquecer. Pelo menos, deixe -me acreditar que está escondido em um belo hash salgado em algum lugar onde você não pode recuperá -lo nunca.

@Joe Lencioni e todos os demais interessados ​​em Shibboleth

As páginas do seu site devem ter a mesma aparência geral em cada página.

Em relação a Shibboleth e SSO.É importante observar a qual função sua organização está associada.Você é um Provedor de Identidade - IdP (autentica o usuário e depois envia a resposta ao SP), ou é o Provedor de Serviços - SP (que concederá a autenticação com base na resposta e nos atributos enviados pelo IdP.

Se você for um SP, terá a flexibilidade que desejar para vincular seus usuários a um IdP para que eles façam login.Muitos SP criam sua própria página WAYF (Where Are You From) que redirecionará o usuário para a página de login do IdP.

Se você for um IdP, deverá ter uma página de login que pareça familiar ao usuário para que ele possa fazer login e ser redirecionado ao SP com os atributos necessários para que o SP conceda o acesso adequado.

No que diz respeito aos golpes de phishing, é importante manter os metadados do Shibboleth atualizados.Acredito que muitas Federações recomendam baixar metadados a cada (1) hora.

Muitas perguntas do Shibboleth podem ser respondidas aqui: https://spaces.internet2.edu/display/SHIB2/Home

Espero que isso ajude você.

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