Autorizzazione e modello di dominio

1

Ho un sistema aziendale rappresentato da un modello di dominio, parte del requisito che il sistema dovrebbe limitare l'accesso ad alcune delle funzionalità in base ai privilegi dell'utente connesso.

Devo inserire la convalida di questi privilegi all'interno del mio modello di dominio? ma ci sarà un problema che non sa quale utente è loggato, come devo passare ad esso?

O

Devo inserire la convalida dei privilegi a livello di presentazione nell'applicazione web stessa?

    
posta Sisyphus 11.05.2018 - 13:07
fonte

1 risposta

1

Should I put these privileges validation inside my domain model?

No. È necessario dividere il metodo sul modello di dominio in modo appropriato per consentire la granularità del controllo richiesto. Quindi limita l'accesso a questi metodi con l'autenticazione standard basata sui ruoli.

es .: (psudocode basato su c # mvc)

public class OrderController : Controller
{
    //this is for users
    [Authorize(Role="User")]
    public void DeleteMyOrder(string id)
    {
        orderService.DeleteMyOrder(id);
    }

    //this is for admins
    [Authorize(Role="Admin")]
    public void DeleteAnyOrder(string id)
    {
        orderService.DeleteAnyOrder(id)
    }
}
    
risposta data 11.05.2018 - 13:16
fonte

Leggi altre domande sui tag