Há muito tempo, se não me engano no extinto Buzz, eu comentei sobre a minha crescente preocupação com o fato de que eu estava usando serviços demais da Google (email, blogs, adsense, autenticação em outros sites…) e que se eventualmente alguém conseguisse invadir minha conta ia virar minha vida do avesso. Um leitor antigo (não lembro quem e não consegui achar a conversa nos meus arquivos) recomendou então usar a autenticação em duas etapas, que até então eu não conhecia.
A idéia é simples e se baseia em um conceito antigo de segurança: exigir do usuário algo que ele sabe e algo que ele tem. Conceito esse que todo cliente de banco já usa sem nem perceber: para usar um caixa eletrônico ele precisa da senha (sabe) e o cartão (tem). Já no caso de acesso a banco pela internet isso é menos comum. Só quem usa o “token” eletrônico ou cartão chave já está familiarizado com o processo.
Na época eu estudei rapidamente o assunto e decidi deixar para depois porque identifiquei três possiveis problemas:
- O sistema ia ficar me enchendo o saco pedindo confirmação de minhas credenciais até em meu próprio desktop;
- Eu corria o risco de algo dar errado na implantação e ficar impedido de usar minha própria conta;
- Alguns serviços da própria Google poderiam não funcionar mais direito;
Na semana passada eu decidi estudar de novo o assunto. Minha necessidade de usar serviços da Google em dispositivos de terceiros só tem crescido e o risco de ter minhas credenciais “chupadas” por um keylogger implantado por um hacker ou pelo próprio dono do dispositivo (já fui consultado pelo filho de um cliente sobre como fazer isso) é real e assustador.
Ou o processo ficou mais simples ou a explicação da google está mais clara, porque desta vez ao ler sobre o que eu tinha que fazer não tive medo de perder acesso à minha conta e ficou claro que eu podia marcar um dispositivo como confiável. E como hoje eu não me vejo mais andando por aí sem pelo menos um dispositivo Android no bolso, eu posso usar o Google Authenticator como token, sem precisar ficar “gastando” códigos impressos e ter que imprimir mais periodicamente. Mas tenha em mente que o Authenticator só pode ser usado em um dispositivo. Se você tiver vários aparelhos Android (como um tablet e um telefone), o programa ao ser instalado invalidará qualquer instalação anterior.
De fato a implantação foi simples e já me sinto muito mais seguro. Mas depois de uma semana já havia até me esquecido de que problemas poderiam ocorrer, porém hoje eu esbarrei no terceiro da minha lista: Meu Motorola Quench, que eu já havia configurado antes de implantar o novo sistema de autenticação parou de sincronizar. Depois de ter minha senha da conta recusada duas vezes eu fnalmente me toquei para a causa.
Os sintomas são os seguintes:
- O app Play Store insiste que minha senha está errada e não me dá outra opção de autenticação;
- Clicar em “Sign In” na página do Google pelo browser não me leva a lugar algum;
- O browser fica travado exibindo só o cabeçalho da página ao tentar acessar https://play.store.com
Para ter certeza de que não era problema de conectividade do telefone, instalei nele também a conta de minha mãe, sem problema algum. Tentei apagar minha conta para implantar de novo, mas o Android disse que eu só poderia fazer isso dando um factory reset. Como eu não tinha muito tempo a perder com isso e o telefone não tinha nada importante instalado, foi o que fiz.
Mesmo assim, minha senha continuou sendo recusada no “Setup Wizard”. Dei um “skip” para poder finalizar o setup sem adicionar uma conta (ainda bem que o Android permite isso) e testei dar um Sign In na minha conta google pelo browser de novo. Desta vez funcionou e me foi solicitado o código de verificação. Depois de inseri-lo, pude acessar minha conta normalmente, mas só pelo browser. O reset do telefone reverteu a app da Play Store para a antiga “Market” (o que com certeza só piora as coisas) e “adicionar conta” continuou rejeitando minha senha.
Então eu fiz uma rápida pesquisa no Google e descobri que a solução é simples, mas não muito intuitiva. O processo já tem suporte a esse problema na forma de ASPs (senhas específicas para aplicações) que você pode gerar de dentro da sua conta. O meu problema foi não ter visto o processo de instalação de conta no smartphone como uma “aplicação”. E então eu entendi que para a Google a “aplicação” é irrelevante. Qualquer coisa que apresentar seu email e a ASP passará na autenticação.
Claro que eu poderia ter feito uma pesquisa sobre como resolver esse problema ANTES, mas decidi sair esbarrando nas dificuldades de propósito para me familiarizar com os sintomas. Eu recomendo quee antes de implantar você leia a página sobre os problemas comuns, para se familiarizar com o que pode acontecer. Mas note que a Google não se esforça nem um pouquinho em alertar os usuários para os problemas que podem aparecer nos telefones baseados no seu próprio sistema.
Conclusão: Agora que eu entendi de verdade o papel das ASPs, estou plenamente satisfeito com o processo e não tenho mais medo algum (pelo menos por enquanto).
Estou usando o sistema a praticamente 1 ano e já estou totalmente acostumado. Tive algumas dificuldades no começo, pois só descobri o Authenticator mais tarde e quando precisa do código o Google enviava por SMS, o que me impedia de autenticar caso o celular estivesse sem sinal. Um dica extremamente importante é ter a lista de códigos impressos e bem guardada em mais que um local, já precisei usar os 10 primeiros códigos, e estou na segunda lista. Por fim, os criação de códigos no Authenticator possuir relação com a hora do celular, se alterá-la tem que fazer nova sincronização no próprio Authenticator.
Também utilizo esse sistema, acredito que se tornará padrão em muitos serviços.