Tecnicamente sì. Che sia giusto o sbagliato... nessun commento.
Ad ogni modo, la sicurezza del database è suddivisa in 2 funzioni:
- db_accessadmin per gestire gli utenti (o autorizzazione "ALTER ANY USER" come hai menzionato)
- db_securityadmin ti consente di gestire le appartenenze ai ruoli e le autorizzazioni degli oggetti (o "autorizzazione ALTER ANY ROLE)
Questo è menzionato per sp_addrolemember .
In realtà stai cambiando il ruolo, non l'utente, eseguendo sp_addrolemember in modo che "ALTER ANY ROLE" sia sufficiente senza avere i diritti db_owner completi.