Frage

Es ist möglich, Ansprüche basierende Berechtigungen zu verwenden, um EF-Felder mit post Sharp zu sichern.Wir haben eine multi-tenantierte App, die wir in Ansprüche ziehen und auch Probleme haben, die in welche Felder lesen / schreiben können.Ich habe das gesehen, aber es scheint Rollenbasis zu sein.

Soweit ich sehen kann, wäre es nur ein Fall, den isehezierenden Teil umzuschreiben.

Wir hofften, ein Feld mit einer Erlaubnis dekorieren zu können, und ignorieren Sie unbedingt den Write, an dem der Benutzer keine Erlaubnis hatte.Wir hüpften auch, wenn sie es lesen, könnten wir in einem anderen Wert tauschen, z.Lesen Sie das Gehalt und erhalten Sie wieder 0, wenn Sie keinen Anspruchsanspruch haben.

Sind diese Standard-Art von Dingen, die ich tun kann, ich habe noch nie ernsthafte AOP getan.Ich wollte nur eine schnelle Bestätigung, bevor ich dies als Option erwähne.

War es hilfreich?

Lösung

ja, es ist möglich, in diesem Fall postsharp zu verwenden, und es sollte ziemlich einfach sein, ein gegebenes Beispiel von RBAC auf die Ansprüche basierend aufzuwandeln.

Eine Sache, die in Betracht gezogen werden muss, ist Leistung.Wenn ein dekorierte Felder während der Verarbeitung eines Anwendungsfalls häufig zugegriffen werden (z. B. in einer Schleife gelesen werden), wird in redundanten Sicherheitskontrollen viel Zeit verschwendet.Das Dekorieren einer Methode, die den Gebrauchsfall eines Endbenutzers darstellt, wäre angemessener.

Ich hätte Angst, die Werte von Feldern auszutauschen, wenn der Benutzer eine unzureichende Erlaubnis hat.Es könnte zu sehr überraschenden Ergebnissen führen, wenn ein Algorithmus von künstlichen nicht erwarteten Daten gespeist wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top