« Zurück zu Produkt

Dokumentation

IPS_RemoveRoleFromUser

 bool IPS_RemoveRoleFromUser (string $Benutzername, string $Rollenname) 

Parameterliste

Benutzername

Name des Benutzers (case-sensitiv)

Rollenname

Name der zu entfernenden Rolle (case-sensitiv)

Rückgabewert

Konnte die Funktion erfolgreich ausgeführt werden, liefert sie als Ergebnis TRUE, andernfalls FALSE.

Beschreibung

Die Funktion entfernt die Rolle Rollenname vom Benutzer Benutzername. Die Berechtigungen der Rolle gelten danach nicht mehr für den Benutzer, die Rolle selbst bleibt erhalten.

Warning

Diese Funktion steht nur mit Lizenzen zur Verfügung, die das RBAC-Feature (Berechtigungssteuerung) enthalten. Andernfalls schlägt sie mit "This function is only available for licenses with the RBAC feature enabled!" fehl. Sind mehr Benutzer vorhanden als die Lizenz erlaubt (standardmäßig 10 Benutzer, der Benutzer @admin zählt nicht mit), schlägt sie mit "Your license is currently limited to 10 users. Please consider upgrading the license to more users!" fehl (die Zahl entspricht dem Limit der Lizenz).

Der aktuell angemeldete Benutzer (siehe IPS_GetLoggedInUser) muss Administrator sein, also der Benutzer @admin oder ein Benutzer mit der Rolle @admin. Andernfalls schlägt die Funktion mit "Administrator permissions are required for this action!" fehl.

Existiert der Benutzer nicht, schlägt die Funktion mit "User with name '…' does not exist" fehl. Ist die Rolle dem Benutzer nicht zugewiesen, schlägt sie mit "User with name '…' does not have Role '…' attached" fehl. Der Benutzer @admin kann nicht verändert werden, der Versuch schlägt mit "User @admin cannot be modified!" fehl.

Siehe auch: IPS_AddRoleToUser, IPS_DeleteRole

Beispiel

if (IPS_UserHasRole('anna', 'visu')) {
    IPS_RemoveRoleFromUser('anna', 'visu');
}
Haben Sie noch Fragen?