Forneça sua senha de e-mail

Várias pessoas cujas opiniões eu respeito muito me indicaram o Yelp nos últimos seis meses, aproximadamente. O Yelp é um site de avaliação da comunidade e uma ótima maneira de descobrir novos lugares legais em qualquer bairro em que o senhor esteja.

Gostei de usar o Yelp e queria participar enviando minha primeira avaliação, por isso criei uma nova conta lá. Como parte do processo de criação da conta, o senhor me apresentou o seguinte.

Verificação de amigos do Yelp

A ideia é que eu informe ao Yelp qual serviço de e-mail eu uso e, em seguida, forneça minhas informações de login e senha para que o Yelp possa determinar se algum dos meus contatos de e-mail é membro do Yelp. Que conveniente!

É assim que vejo essa página.

Verificação de amigos no Yelp: FALHA ÉPICA

Estou disposto a dar ao Yelp o benefício da dúvida aqui, mas vamos pensar no que significa fornecer sua conta de e-mail e senha para qualquer pessoaindependentemente de quão ostensivamente confiável ela possa ser:

  1. Número um com uma bala: sua conta de e-mail é uma senha mestra de fato para sua identidade on-line. A maioria, se não todas, de suas contas on-line é protegida por meio de seu e-mail. O senhor se lembra de todos aqueles links “esqueci a senha” e “esqueci a conta”? Adivinhe para onde eles acabam sendo direcionados? Se alguém controlar sua conta de e-mail, terá acesso quase ilimitado a todas as identidades on-line que o senhor possui em todos os sites que visita.
  2. Se o senhor for como eu.., seu e-mail é um tesouro de informações financeiras e pessoais altamente confidenciais. Considere todas as notificações por e-mail que o senhor recebe no mundo da Web altamente interconectado de hoje. É como um balcão único para roubo de identidade abrangente e sistemático. Como posso saber se o Yelp não vai entrar em outras áreas do meu e-mail?
  3. Mesmo que eu confie totalmente no Yelp, como sei que eles não vão armazenar minha senha de e-mail?, talvez de forma inseguraem um local onde algum programador ou hacker insatisfeito possa eventualmente acessá-la? A divulgação de sua senha coloca o destinatário na infeliz posição de ter que proteger sua senha. Se o senhor divulgar bastante essa senha de e-mail, ficará vulnerável a dezenas de lugares espalhados pela Web. As chances começam a parecer bastante terríveis.

Tenho certeza de que o Yelp tem boas intenções. Eles só querem me ajudar a encontrar meus amigos, que se dane! Mas a própria natureza da solicitação é incrivelmente ofensivo; eles efetivamente pediram as chaves da minha casa para vasculhar minha agenda de endereços.

Não me parece.

Francamente, é irresponsável até mesmo fazer essa pergunta. Os usuários ingênuos da Internet podem não entender por que é uma péssima ideia fornecer suas credenciais de e-mail a sites aleatórios. Pior ainda, eles podem acabar tendo a ideia de que fornecer suas credenciais de e-mail é comum ou normal.

Não é. Isso está descrito literalmente na maioria das políticas de privacidade:

A segurança da sua conta também depende da manutenção da confidencialidade da senha da sua conta, e o senhor não deve compartilhar o nome ou a senha da sua conta com ninguém. Se o senhor compartilhar as informações da sua conta com terceiros, eles terão acesso à sua conta e às suas informações pessoais. — Google Checkout

Se uma senha for usada para ajudar a proteger suas contas e informações pessoais, é sua responsabilidade mantê-la confidencial. Não compartilhe essas informações com ninguém. Se estiver compartilhando um computador com alguém, o senhor deve sempre optar por fazer logout antes de sair de um site ou serviço para proteger o acesso às suas informações de usuários subsequentes. — Microsoft Passport

Sua ID Yahoo! e senha são informações confidenciais. Um funcionário do Yahoo! nunca pedirá sua senha em uma ligação telefônica ou e-mail não solicitado. Não responda a nenhuma mensagem que solicite sua senha. — Yahoo

Como fomos parar em um mundo em que é minimamente aceitável pedir as credenciais de e-mail de alguém? O que aconteceu com todos aqueles anos que passamos estabelecendo políticas de privacidade para proteger nossos usuários? O que aconteceu com o princípio fundamental do senso comum de segurança que diz que que divulgar sua senha, em qualquer circunstância, é uma má ideia?

Posso entender o desejo cruel de criar redes de “amigos” monetizáveis por qualquer meio necessário. Mesmo que isso signifique incentivar seus usuários a fornecer suas credenciais de login para sites concorrentes. Mas como posso levar a sério suas políticas de privacidade se o senhor não está disposto a tratar as credenciais de login de seus concorrentes com o mesmo respeito com que trata as suas próprias credenciais? Isso não passa de conversa fiada.

O e-mail é a senha mestra de fato para uma grande parte de sua identidade on-line. Tenha cuidado:

  • Como desenvolvedor de software, o senhor deve nunca peça a um usuário suas credenciais de e-mail. Isso não é ético. É irresponsável. É errado. Se alguém está pedindo que o senhor codifique isso, por quê? Com que finalidade?
  • Como usuário, o senhor deve nunca forneça suas credenciais de e-mail a ninguém, exceto ao seu serviço de e-mail. Os sites que solicitam essas informações devem ser vistos com extrema suspeita, se não com total desconfiança.

Além dessas diretrizes éticas, eu me pergunto por que a solução tecnológica para esse problema quase não foi abordada. Se tudo o que o Yelp quer é o meu catálogo de endereços, o senhor pode ter certeza de que o Yelp não é o único, por que não posso conceder a eles acesso temporário ao meu catálogo de endereços de e-mail público? sem dar as chaves do meu reino de e-mail?

Se mesmo uma fração do esforço de codificação que é feito regularmente para convencer as pessoas a fornecerem suas credenciais de login de e-mail ou de site fosse usada para encontrar outras soluções mais razoáveis para esse problema, talvez já pudéssemos ter chegado a uma solução mais saudável. E podemos começar com retirando completamente da mesa as solicitações de credenciais detestáveis e totalmente inadequadas.

ATUALIZAÇÃO: Vários comentaristas trouxeram à tona alguns esforços em andamento para resolver esse problema pernicioso:

Uma solução mais geral pode ser OAuth, anunciado como um padrão aberto para delegação de acesso à API. Em outras palavras, uma chave de acesso para sites:

Atualmente, muitos carros de luxo vêm com uma chave de manobrista. É uma chave especial que o senhor dá ao funcionário do estacionamento e, ao contrário da chave comum, não permite que o carro ande mais do que um ou dois quilômetros. Algumas chaves de manobrista não abrem o porta-malas, enquanto outras bloqueiam o acesso ao catálogo de endereços do seu celular a bordo. Independentemente das restrições impostas pela chave do manobrista, a ideia é muito inteligente. O senhor dá a alguém acesso limitado ao seu carro com uma chave especial, enquanto usa sua chave normal para destravar tudo.

Chris Messina, do projeto OAuth, teve a gentileza de fornecer uma série de links relacionados nos comentários e um post de acompanhamento no blog do OAuth também.

Fiquei animado ao saber de alguns dos progressos recentes que fizemos nessa frente. Se o senhor estiver procurando uma maneira de fazer parte da solução, em vez de ser o problema, leia sobre essas soluções e participe!