Ich habe eine Site, die ich portiere, um den Code aufzuräumen und die Dinge zu vereinfachen. Ich benutze die asp-Mitgliedschaft und Profilanbieter, aber ich frage mich, ob ich das richtig für meine Situation mache. Ich bin ziemlich neu in MVC, also möchte ich das in den frühen Stadien richtig machen.Benutzereinschränkungen für zugehörige Daten in ASP-Mitgliedschaft
Benutzer sind Einzelpersonen und sie sind Teil größerer "Institutionen", die sie bei der Registrierung einrichten oder auswählen. In diesem Fall ist die Institution ein Weingut. Ich möchte, dass die Benutzer alle Weine von jedem Weingut sehen können, aber nur diejenigen bearbeiten, die zu ihnen gehören.
Was ist der beste Weg, dies zu tun? Im Moment rendere ich den Link zum Bearbeitungsfeld in meiner Indexansicht basierend auf ihrer Installations-ID und der Hersteller-ID. Ich habe das Gefühl, dass eine Datenanmerkung hier besser funktionieren könnte, aber ich weiß nicht genau, wie ich das für eine Gruppe von Weinen umsetzen soll. Brauche ich mehrere Anbieter? Ich benutze Rollen, um die Bearbeitung einzuschränken, aber im Moment könnte eine Redakteursrolle den Pfad eines anderen Weins manuell eingeben, um ihn zu bearbeiten, wenn dieser Wein nicht zu ihnen gehört.
Alle Hinweise hier wäre super. Ich weiß, dass ich es in den Controller-Methoden machen kann, aber ich suche nach dem "richtigen" Weg, es zu tun. Vielen Dank.
ich dies tatsächlich heraus mit einem benutzerdefinierten AuthorizeAttribute. Ich werde es in meiner Antwort veröffentlichen. – user576838