Das Benutzermanager-API verfügt über zwei Sätze von Prozeduren. Der Content Management Server spricht über je einen Prozedursatz den Benutzermanager für das Redaktions- und das Live-System an. Über die Prozeduren kann der Content Management Server unter anderem:
Die Namen der Prozeduren für den Zugriff auf den Benutzermanager des
Live-Systems enthalten die Zeichenkette secondary
.
Die Prozedursätze für den internen Benutzermanager und einige weit
verbreitete Benutzermanager wie LDAP und ADS sind in Fiona im Verzeichnis
instance/instName/script/cm/serverCmds/userman/handler
als Tcl-Dateien enthalten. Die dazu gehörenden Konfigurationsdateien, in
denen auf die Tcl-Dateien verwiesen wird, befinden sich im Verzeichnis
instance/instName/config
.
Um einen vorhandenen Prozedursatz zu verwenden,
Siehe hierzu auch die detaillierte Beschreibung zum Aufbau der Konfigurationsdateien.
Um einen neuen Prozedursatz zu erstellen und zu verwenden, können Sie eine vorhandene Tcl-Interface-Datei einschließlich Konfigurationsdatei kopieren, die Prozeduren redefinieren, die Konfiguration anpassen und einbinden.
Die Funktion prüft, ob ein Benutzer mit dem Anmeldenamen
login
das Passwort password
hat. Der Content Manager übergibt der Funktion das unverschlüsselte
Passwort. Hat der Benutzer das Passwort, so gibt die Funktion 1 zurück, hat
er es nicht oder existiert der Benutzer nicht, gibt sie 0 zurück. Im
Fehlerfall ist der Rückgabewert die Fehlermeldung.
Diese Prozedur liefert die Liste der Namen der Benutzergruppen, bei
denen die Suchkriterien (whereParams
) erfüllt sind.
Suchkritierien werden als Name-Wert-Paare angegeben. Einziges Suchkriterium
ist groupText
.
Die Prozedur prüft, ob die Benutzergruppe mit dem Namen
name
existiert und gibt 1 zurück, wenn dies der Fall ist, und
0, wenn die Gruppe nicht existiert.
Die Prozedur liest den Wert des der Gruppe name
zugewiesenen Feldes key
aus und gibt ihn zurück. Ein externer
Benutzermanager muss sicherstellen, dass mindestens dann gültige Werte
geliefert werden, wenn man als key
name
oder
realName
angibt. Beim Redaktionssystem muss außerdem
displayTitle
den für die Anzeige verwendeten Titel der Gruppe
liefern. Im Fehlerfall wird die Fehlermeldung zurückgegeben. Die
Tcl-Routine sollte Fehlermeldungen des externen Benutzermanagers in jedem
Falle weiterreichen.
Die Prozedur prüft, ob die Benutzergruppe mit dem Namen
name
das globale Recht permission
hat und gibt 1
zurück, wenn dies der Fall ist. Hat die Gruppe das Recht nicht, so gibt die
Prozedur 0 zurück, im Fehlerfall ist der Rückgabewert die Fehlermeldung.
Diese Prozedur hat keine Parameter. Sie gibt die Liste der Gruppennamen zurück. Im Fehlerfall gibt sie die Fehlermeldung zurück.
listUsersDiese Prozedur hat keine Parameter. Sie gibt die Liste der Benutzernamen zurück. Im Fehlerfall gibt sie die Fehlermeldung zurück.
typeForGroupGetKey keyDiese Prozedur gibt den Typ eines group
-Parameters zurück
(list
oder string
).
Diese Prozedur gibt den Typ eines user
-Parameters zurück
(list
oder string
).
Diese Prozedur liefert die Liste der Benutzer-Logins, bei denen die
Suchkriterien (whereParams
) erfüllt sind.
Suchkritierien werden als Name-Wert-Paare angegeben. Beim integrierten
Benutzermanager ist als einziges Suchkriterium userText
verfügbar.
Die Prozedur prüft, ob der Benutzer mit dem Anmeldenamen
login
existiert und gibt 1 zurück, wenn dies der Fall
ist, und 0, wenn der Benutzer nicht existiert.
Die Prozedur liest den Wert des dem Benutzer login
zugewiesenen Feldes key
aus und gibt ihn zurück. Ein externer
Benutzermanager muss sicherstellen, dass mindestens dann gültige Werte
geliefert werden, wenn man als key
login
,
realName
, email
, groups
,
displayTitle
oder defaultGroup
angibt. Im
Fehlerfall wird die Fehlermeldung zurückgegeben. Die Tcl-Routine sollte
Fehlermeldungen des externen Benutzermanagers in jedem Falle
weiterreichen.
Die Prozedur prüft, ob der Benutzer mit dem Anmeldenamen
login
das globale Recht
permission
hat und gibt 1 zurück, wenn dies der Fall
ist. Hat der Benutzer das Recht nicht, so gibt die Prozedur 0 zurück, im
Fehlerfall ist der Rückgabewert die Fehlermeldung.
Der integrierte Benutzermanager stellt fest, ob ein Benutzer ein Recht hat, indem er prüft, ob das Recht dem Benutzer direkt erteilt wurde oder ob der Benutzer Mitglied einer Benutzergruppe mit diesem Recht ist.
Der Benutzermanager hat nur die Aufgabe, die Namen globaler Rechte den Benutzern und Benutzergruppen zuzuordnen. Die Verwaltung der Rechte überlässt er den Anwendungen, die auf ihn zugreifen.
userWithLoginIsOwnerOf login ownedLoginDie Prozedur prüft, ob der Benutzer mit dem Anmeldenamen
login
Verwalter des Benutzers mit dem Anmeldenamen
ownedLogin
ist. Ist dies der Fall, so gibt die
Prozedur 1 zurück, andernfalls 0. Im Fehlerfall ist der Rückgabewert die
Fehlermeldung.
Mit dieser Anfrage wird für den Benutzer login
die
Berechtigung ermittelt, die
Einstellungen
des Benutzers ownedLogin
zu ändern. Eine einfache
Implementation liefert hierfür den Rückgabewert von
userWithLoginIsSuperUser login
.
Der Content Manager übergibt dieser Prozedur den Anmeldenamen
login
. Die Prozedur prüft, ob der Benutzer mit diesem
Anmeldenamen ein Superuser ist und gibt 1 zurück, wenn dies der Fall ist,
und 0, wenn der Benutzer kein Superuser ist. Im Fehlerfall gibt die
Prozedur die Fehlermeldung zurück.