Desative o armazenamento de senha em texto simples do svn para todos os usuários

Desative o armazenamento de senha em texto simples do svn para todos os usuários

Por padrão, o Subversion permite que os usuários salvem suas senhas em texto simples no formato ~/.subversion/auth/svn.simple. Estou investigando opções paraarmazenando senhas criptografadas no svn, mas pelo menos e o mais rápido possível, quero desabilitar completamente a capacidade de armazenar senhas para todos os nossos usuários. Estamos executando o Subversion 1.6.17.

Posso desabilitar isso no diretório inicial de um usuário por meio do arquivo de configuração.

~/.subversion/servers:

[global]
# Password / passphrase caching parameters:
store-passwords = no
store-plaintext-passwords = no

No entanto, o usuário poderia alterar o arquivo de configuração se quisesse. Não existe um arquivo de configuração svn para todo o sistema? Algumas opções que vi:

Opção 1

No 1.8-dev, o script de configuração do Subversion aceita uma opção --disable-plaintext-password-storage para ignorar a lógica que armazena senhas de texto simples e senhas de certificados de cliente.

Prefiro não atualizar para uma versão de desenvolvimento.

opção 2

/etc/subversion/config

AFAIK, este arquivo de configuração só é usado quando um usuário ainda não possui um arquivo de configuração em seu diretório inicial.

Opção 3

Adicione um cron job para excluir o cache de autenticação do usuário no ~/.subversion/auth/svn.simple. Portanto, mesmo que eles alterem seu arquivo de configuração svn, nosso cron eliminaria todas as senhas armazenadas. No entanto, mesmo executá-lo a cada minuto não garante que nosso sistema de backup não capturaria o(s) arquivo(s) contendo senhas em texto simples.

Ideias?

Responder1

Você não pode.

Faça o que fizer, seus usuários podem ignorá-lo e armazenar suas senhas em um arquivo de texto simples de qualquer maneira. Se você desabilitar o recurso no binário do cliente, eles baixarão ou compilarão um cliente diferente. Como regra geral, se você configurar medidas de segurança desagradáveis ​​(como ter que digitar uma senha para cada operação svn), seus usuários irão contorná-las de uma forma que piorará a segurança. (Por exemplo, escrever um script wrapper que contenha sua senha. Que eles deixarão legível para todos.) Portanto, não faça isso.

Para reiterar: você não pode, apenas com medidas técnicas, impedir que os usuários armazenem suas senhas em um arquivo. Você pode proibi-lo, mas se isso dificultar a vida deles, eles farão isso de qualquer maneira.

Se você estiver preocupado com roubo de laptop ou backup, criptografe o diretório inicial dos usuários. Isso protegerá as senhas e também os dados. Se todo o diretório inicial estiver criptografado, a senha de criptografia geralmente é a mesma que a senha de login, por motivos de usabilidade. Certifique-se de ter uma política de backup de senha (por exemplo, um envelope lacrado), pois a perda de uma senha criptografada é irrecuperável.

Se você estiver preocupado com a reutilização de senhas, imponha uma senha aleatória (portanto, exclusiva), que eles digitarão de uma vez por todas em seu cliente. Tenha um processo simples para alterar senhas comprometidas, é claro.

Responder2

Aliás, antes mesmo de criptografar qualquer coisa, eu cuidaria das permissões de arquivo: apenas verifiquei minha própria configuração por curiosidade e descobri que isso é legível por todo o mundo. Para um arquivo contendo uma senha clara, parece-me uma falha de segurança.

informação relacionada