Questo è il mio primo post qui, quindi ciao :) Va bene, andiamo al punto ... Sto scrivendo la mia prima app in ASP.NET MVC Framework e io avere un problema con il controllo dei privilegi per usare istanze di classi modello (leggi, modifica). Il codice di esempio è simile al seguente:Autorizzazione ASP.NET MVC e permesso di utilizzare le classi modello
// Controller action
[CustomAuthorize(Roles="Editor, Admin")]
public ActionResult Stats(int id)
{
User user = userRepository.GetUser(id);
if (user == null || !user.Activated || user.Removed)
return View("NotFound");
else if (!user.IsCurrentSessionUserOwned)
return View("NotAuthorized");
return View(user);
}
Finora autorizzare attributo protegge solo azioni di controllo, quindi la mia domanda è: come fare CustomAuthorize attribuire a verificare non solo dei ruoli utente, nomi utente, ma anche fatto cioè risorse istanziati nei metodi d'azione (sopra: classe utente, ma ci sono altre classi ORM LINQ2SQL come notizie, foto ecc.) Tutti questi oggetti da controllare hanno i loro ID univoci, quindi l'entità utente ha un proprio ID, le notizie hanno il loro ID e il campo ID utente referenziato alla tabella Utenti. Come dovrei risolvere quel problema?