« Zurück zu Produkt

Dokumentation

IPS_RemovePermissionFromRole

 bool IPS_RemovePermissionFromRole (string $Rolle, int $ObjektID, string $Operation, bool $Rekursiv) 

Parameterliste

Rolle

Name der Rolle

ObjektID

ID des Objekts, für das die Berechtigung gilt

Operation

Name der Operation, z.B. VISUALIZATION

Rekursiv

Gibt an, ob die Berechtigung auch für alle Objekte unterhalb von ObjektID gilt (TRUE) oder nur für das Objekt selbst (FALSE)

Rückgabewert

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

Beschreibung

Die Funktion entfernt die Berechtigung, die Operation auf dem Objekt ObjektID auszuführen, von der Rolle Rolle. ObjektID, Operation und Rekursiv müssen genau mit der beim Hinzufügen über IPS_AddPermissionToRole angegebenen Berechtigung übereinstimmen (siehe IPS_GetRole), ansonsten schlägt die Funktion mit "Role does not have this permission" fehl.

Als Operation muss eine im System registrierte Operation angegeben werden, ansonsten schlägt die Funktion mit "Cannot verify unsupported operation" fehl. Die Groß-/Kleinschreibung ist dabei zu beachten. Aktuell gibt es die Operation VISUALIZATION (Zugriff auf eine Visualisierung mit all ihren Objekten). Sie wird registriert, sobald eine Visualisierungsinstanz (z.B. Kachel Visualisierung) existiert, und wird auf die ID der Visualisierungsinstanz geprüft.

Die Prüfungen erfolgen in dieser Reihenfolge: Operation, Rolle ("Role with name '…' does not exist"), Objekt ("Object #… does not exist").

Der ausführende Benutzer muss Administrator sein (siehe IPS_IsAdministrator), ansonsten schlägt die Funktion mit "Administrator permissions are required for this action!" fehl.

Warning

Die Rollenverwaltung steht nur mit einer Lizenz zur Verfügung, welche das RBAC-Feature enthält. Andernfalls schlägt die Funktion mit "This function is only available for licenses with the RBAC feature enabled!" fehl. Sind mehr Benutzer angelegt, als die Lizenz erlaubt, schlägt die Funktion mit "Your license is currently limited to … users. Please consider upgrading the license to more users!" fehl.

Beispiel

// Die Rolle darf die Visualisierung mit der ID 12345 nicht mehr öffnen
IPS_RemovePermissionFromRole('Bewohner', 12345, 'VISUALIZATION', false);
Haben Sie noch Fragen?