25/11/2019 | Autor: Igor Abade V. Leite | Categoria: Técnico | Comentários

É hora de parar de usar credenciais alternativas

Desde o princípio o Azure DevOps Services oferece um mecanismo para autenticação de ferramentas legadas. Mas, em breve, isso vai parar de funcionar.

Quando o Azure DevOps Services foi lançado (então ainda conhecido como Visual Studio Online), eram poucas as ferramentas que conseguiam se autenticar diretamente usando credenciais federadas como Azure AD ou Microsoft Account. Por isso, era necessário oferecer uma maneira de essas ferramentas se autenticarem usando o único jeito que elas suportavam - usuário e senha.

Um dos exemplos mais comuns à época era o Git na linha de comando. Para poder usá-lo, era necessário criar uma Credencial Alternativa (“Alternate Credential”). Com ela, você tinha à disposição um usuário/senha que podia ser usado para se logar via linha de comando.

Janela de exemplo de configuração de Credenciais Alternativas
Janela de exemplo de configuração de Credenciais Alternativas

O problema é que esse modelo é extremamente inseguro. Isso porque:

  1. Não permite configurar uma expiração automática. Ou seja, se sua senha “vazar” ela permanece válida por tempo indeterminado e poderia ser usada para acessar seus dados; e
  2. Não permite definição de escopo. Com isso, a mesma senha pode ser usada para acessar TODOS OS DADOS a que você tem acesso no Azure DevOps. Não dá para, por exemplo, criar uma senha que tenha acesso apenas aos repositórios Git mas não acessa work items ou builds.

Esse problemas foram resolvidos desde que a Microsoft introduziu no Azure DevOps o conceito de Personal Access Tokens (PAT). Esse é o mecanismo adequado para usar no lugar das Credenciais Alternativas. Ah, e se sua ferramenta suporta SSH (como o Git), você pode também usar chaves SSH como mecanismo de autenticação.

E agora fechou o anúncio derradeiro: a Microsoft vai descontinuar o suporte a Credenciais Alternativas. A recomendação é que você passe a usar PATs ou chaves SSH como o mecanismo de autenticação para ferramentas que não suportam a autenticação nativa do Azure DevOps.

Suporte acaba em 2020

A partir de Dezembro/2019 a funcionalidade de Credenciais Alternativas vai ser gradualmente desabilitada. Veja mais detalhes no anúncio do time de produto.

Você utiliza esse recurso hoje? Tem ferramentas que ainda dependem de Credenciais Alternativas e vai ser impactado pela mudança? Comente com a gente!

Um abraço,
  Igor