• Berechtigungsprüfungen auf bereits im Speicher befindlichen Datensätzen sind immer Constant-Time, also sehr schnell.
  • Massenprüfungen von Datensätzen auf Berechtigungen sind immer langsam. Diese werden derzeit nur für Leserechte angeboten.

Leserechte

Für Leserechte wurden besondere Optimierungen vorgenommen, um auch Massenprüfungen einigermaßen schnell zu absolvieren.

Allerdings führt kein Weg daran vorbei, dass die Datenbank bereits, um nur die Anzahl der (lesbaren) Datensätze in einer Ansicht zu ermitteln, alle Datensätze einzeln prüfen muss. Die Geschwindigkeit der Leserechte skaliert also immer mit der Gesamtzahl der zu einer Ansicht gehörenden Datensätze. DevExpress ermittelt die Anzahl immer, bevor ein Grid angezeigt wird.

Wenn die Leserechte für einzelne Datentabellen deaktiviert werden (falls nicht benötigt), kann die Geschwindigkeit für diese massiv erhöht werden. Dazu muss in der Datentabellen-Konfiguration unter „Alles Lesen“ die Rolle „Jeder“ zugewiesen werden.

In Programmierungen sollte auch immer im Einzelfall gut überlegt werden, ob die Leserechte bei einer Query geprüft werden müssen. In manchen Fällen führen weitere Bedingungen bei der Query oder den nachfolgenden Joins dazu, dass ohnehin nur lesbare Sätze geliefert werden. Doppelprüfungen sollten vermieden werden, sofern der Benutzer nicht die Möglichkeit hat das Zwischenergebnis zu manipulieren (z.B. im Browser).