Lembre-se de que a linha de comando é analisada e os curingas são substituídos ANTES de serem executados.
Se você especificar o nome de usuário, o comando sudo ... poderá ver o arquivo porque está acessando-o como root.
Quando você digita '*', seu shell USER expande para os caminhos que ele pode ver , bem ... os caminhos que permitem ao usuário atual pesquisar os subdiretórios.
Você pode tentar colocar a string de caminho nas citações SINGLE para evitar a expansão, não tenho certeza se funcionará, pois a maioria dos programas unix espera que o shell expanda curingas e, portanto, não realize a ação globbing.
EDIT: Um pensamento sobre como realizar seu objetivo de ler os arquivos de chaves autorizados para todos os usuários:
sudo find /home -name "authorized_keys" -exec cat "{}" \; > all_the_data
Talvez bruto, mas funcionará já que você está executando a pesquisa de arquivos como raiz, não como usuário.
Eu suponho outra maneira:
sudo 'find /home -name "authorized_keys" -print0 | xargs -0 cat' > all_the_data
O que é melhor no processo conta, já que ele acumula todos os nomes de arquivo e depois 'gato deles ... mas eu gosto do primeiro, nenhuma citação especial é necessária.
As aspas (simples ou não) em todo o comando são necessárias devido ao comando pipe. Tanto o comando find como o comando xargs DEVEM ser executados como root. Sim, mais complicado que o primeiro.