I'm afraid all commands are run as the build user.
Então, qualquer pessoa que enviar uma versão pode ver e até mesmo interferir nos trabalhos de outro usuário. Executar uma compilação pode executar código arbitrário; Isso permite que qualquer pessoa que envie uma compilação não apenas execute ps
, mas também leia e grave arquivos pertencentes a outras tarefas. Se você não pode confiar nos usuários que enviam compilações, você deve executar as compilações como usuários separados.
Se estiver preocupado apenas com usuários que tenham uma conta nesse servidor de IC, mas não tenham permissão para enviar versões, A opção hidepid
pode ajudá-lo. Como alternativa, edite os remetentes da versão para passar informações confidenciais em arquivos ou variáveis de ambiente em vez de argumentos da linha de comando. Note que o comando ps
não é o que você precisa para cuidar, é apenas uma impressora bonita para informações encontradas no proc sistema de arquivos . A linha de comando do processo 1234 pode ser impressa com cat /proc/1234/cmdline
.
Se você tiver preocupações de confidencialidade com compilações, recomendo que, em vez de tentar conectar um possível vazamento de informações de cada vez, execute todas as compilações em um contêiner ou máquina virtual.