Asp.Net in generale (non specifico per MVC) ha un modo integrato per gestire l'autenticazione.
Viene eseguito tramite MembershipProvider, RoleProvider e PrincipalProvider. Puoi cercarli su Google per maggiori dettagli.
Nel tuo scenario, in cui devi controllare le credenziali utente rispetto a uno schema esistente, puoi semplicemente implementare il tuo MembershipProvider personalizzato (e, se necessario, RoleProvider e/o PrincipalProvider) derivante dalla classe base.
All'interno del tuo provider personalizzato implementerai i metodi di firma con il codice specifico del tuo dominio.
Infine, devi semplicemente registrare il tuo provider personalizzato come predefinito in web.config e sei pronto. La tua app può utilizzare l'API di appartenenza predefinita per autenticare utenti e credenziali del gestore.