Zum Hauptinhalt springen

User

User

Benutzer-Objekt der Benutzerverwaltung

Details

Dieses Objekt entspricht einem Benutzer der Datenbank. Mit diesem Benutzer ist eine Anmeldung an der Datenbank möglich, vorausgesetzt das Kennwort ist bekannt und andere Eigenschaften (_UrmPropActive und _UrmPropExpirationDate) verhindern die Anmeldung nicht.

Das Objekt User ist nicht zu verwechseln mit dem angemeldeten Benutzer. In einer leeren Datenbank sind zwei Benutzer vorhanden SUPERUSER und USER. Der Benutzer USER kann über die verschiedenen Befehle der Benutzerpflege manipuliert werden. Der Benutzer SUPERUSER kann seine Eigenschaften nur selbst verändern, andere Benutzer haben dazu keine Berechtigung. Der SUPERUSER kann die Eigenschaften _UrmPropActive und _UrmPropExpirationDate sowie seine Zugehörigkeit zu Benutzergruppen nicht verändern. Alle anderen Benutzer können das eigene Kennwort (sofern nicht durch _UrmPropPwdLocked unterbunden) und alle eigenen benutzerdefinierten Eigenschaften ändern. Zum Ändern ihrer eigenen Systemeigenschaften werden entsprechende _UrmPermModify-Rechte benötigt.

Ein Benutzer kann einer oder mehreren Benutzergruppen zugeordnet werden (siehe UrmCreate ()). Er bekommt dadurch die dort definierten Rechte an einer oder mehreren Elementgruppen . Details zur Rechtevergabe befinden sich im Abschnitt Definition von Berechtigungen .

Ein Benutzer wird mit der Anweisung UrmCreate ( 0 , _UrmTypeUser , ...) erzeugt. Ein vorhandener Benutzer kann mit der Anweisung UrmOpen ( 0 , _UrmTypeUser , ...) geöffnet werden. Nach dem Öffnen des Benutzers steht ein Deskriptor zur Verfügung, mit dem auf die Eigenschaften des Benutzers zugegriffen werden kann. Die Möglichkeiten stehen zur Laufzeit und zur Entwurfszeit zur Verfügung (siehe auch Verwaltung der Benutzer ).

Beispiel

// Aktiviert den Benutzer Sales_Temp für drei Monate
tHdlUser # UrmOpen(_UrmTypeUser, _UrmLock, 'Sales_Temp');
tHdlUser->UrmPropSet(_UrmPropActive, true);
tDate->vmSystemTime();
tDate->vmMonthModify(3);
tHdlUser->UrmPropSet(_UrmPropExpirationDate, tDate);
tHdlUser->UrmClose();