A única maneira de pensar nisso envolve o uso de grupos. Você configuraria grupos que correspondem a cada gerenciador de janelas e adicionaria uma conta aos grupos do gerenciador de janelas (ou gerentes) de sua escolha. Altere o proprietário do grupo de cada gerenciador de janelas para o grupo correspondente. Remover permissões para "outro" para executar os diferentes gerenciadores de janelas. Agora, para iniciar um gerenciador de janelas, você precisará ter permissão para executá-lo. Como você só tem permissão para executar os gerenciadores de janelas que correspondem à sua participação no grupo, você pode fazer com que usuários específicos possam executar apenas determinados gerenciadores de janelas.
Isso realmente parece muito difícil de manter e não é particularmente escalável e eu não recomendaria isso. Você também pode configurar a conta com um alias para o gerenciador de janelas "correto" e solicitar que seus usuários invoquem o gerenciador de janelas por meio do alias. Isso não impedirá um determinado usuário, mas poderá realizar a maior parte do que você deseja sem as complicações de manter os grupos.