A única maneira de fazer isso é através de um hack muito sujo. Eu não recomendo isso.
setfacl -R -m u:another_user:rwx "${SSH_AUTH_SOCK%/*}"
sudo -u another_user SSH_AUTH_SOCK="$SSH_AUTH_SOCK" composer update
A razão para isso é que suas chaves SSH são acessadas através de um soquete nomeado. Esse soquete nomeado está em um diretório de sua propriedade e não pode ser acessado por mais ninguém. A única maneira de conceder acesso ao outro usuário é alterando as permissões no soquete.
O acima faz isso através de atributos estendidos do sistema de arquivos. Se o seu sistema de arquivos /tmp
não suportar ACLs, a única maneira de fazer isso é chmod o+rwx
, e isso é terrivelmente inseguro.
A melhor solução é corrigir o que está impedindo você de executar esse comando como seu próprio usuário.