Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:settings:persontypesettings_pcharacsbackwardcompatible

PersonTypeSettings: PCharacsBackwardCompatible

Seit Engine-Version 6.5.2, optional, globale Einstellung

Datentyp der Werte: bit

Nur für Installationen VOR Version 6.5.2 relevant und nur zur „PersonTypeID = 0“ konfigurierbar ! Ist hier „1“ angegeben, wird bzgl. lesendem und schreibendem Zugriff auf Personen-Eigenschaften durch „Pu“-Prozeduren (z.B. pm_GetPersonProperties_Pu oder pm_ModifyPersonData_Pu) das alte Verhalten (also VOR 6.5.2) sichergestellt.

Hintergrund :

Bis Version 6.5.2 konnten pro Personen-Merkmal zwei Einstellungen konfiguriert werden : „Visible“ und „ModificationAllowedByUser“ (oder auch kurz „Modify“).

Diese besagten, ob in „public“-Prozeduren Eigenschaften zu entsprechend konfigurierten Merkmalen („Visible = 0“) ausgegeben werden bzw. ob durch „public“-Prozeduren Eigenschaften zu entsprechend konfigurierten Merkmalen („ModificationAllowedByUser <> 1“) manipuliert (bzw. eingeschränkt geändert) werden dürfen.

In Version 6.5.2 sind diese beiden Einstellungen entfallen und durch allgemeinere Funktionalität ersetzt worden (s. pm_GetPChAccRestrForUsers_Ad und pm_GetPChAccRestrForGroups_Ad) : Man kann pro (Datenbank-)Benutzer („UserID“) und/oder Benutzer-Gruppe („UserGroupID“) Einschränkungen (lesend/schreibend) konfigurieren.

Etwaige „Visible“- und „ModificationAllowedByUser“-Einstellungen wurden im Update von 6.5.1 auf 6.5.2 daher durch entsprechende Regeln für den speziellen Benutzer „publicuser“ (dieser kann ausschließlich „public“-Prozedurn ausführen) ersetzt. Das stellt aber keine 100-prozentige Abwärtskompatibilität dar, weil „public“-Prozeduren auch von anderen Benutzern (JEDEM Benutzer um genau zu sein) ausgeführt werden können ! Andererseits konnte im Update von 6.5.1 auf 6.5.2 aber nicht einfach eine für ALLE Benutzer geltende Regel erstellt werden, weil dann auch „Ad“-Prozeduren betroffen wären (was ein schlimmerer Bruch der Abwärtskompatibilität wäre) ! Daher wurde eine Lösung über diesen „Kompatibilitäts-Schalter“ gewählt, der einfach so implementiert ist, daß (wenn aktiviert, also auf „1“ konfiguriert) in „public“-Prozeduren die Regeln IMMER für den „publicuser“ geprüft werden, egal welcher Benutzer tatsächlich die Prozedur ausführt.

ACHTUNG : Außerdem gehörte zum alten Verhalten (vor 6.5.2), daß ein MODIFIZIEREN (durch z.B. pm_ModifyPersonData_Pu) einer Eigenschaft zu einem Merkmal nur erlaubt war, wenn für das Merkmal „ModificationAllowedByUser = 1“ konfiguriert war, d.h. es wurde nicht genauer unterschieden nach „Anlegen, Ändern, Löschen“. Dieses Verhalten wird ebenfalls beibehalten, wenn diese Einstellung hier mit „1“ konfiguriert wird !

engine/settings/persontypesettings_pcharacsbackwardcompatible.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)