Je pense que l’option la plus solide ici est d’utiliser un fournisseur d’authentification externe (OAuth, peu importe) avec l’option « auth overrides username » :
Remplace le nom complet local par le nom complet du site externe à chaque connexion et empêche les modifications locales. S’applique à tous les fournisseurs d’authentification.