« Zurück zu Produkt

Dokumentation

IPS_CreateUser

 bool IPS_CreateUser (string $Benutzername, int $Benutzertyp) 

Parameterliste

Benutzername

Name des neuen Benutzers (case-sensitiv)

Benutzertyp

Typ des Benutzers (0 (USER_TYPE_LOCAL): Lokales Konto, 1 (USER_TYPE_LDAP): LDAP), siehe Tabelle in der Beschreibung

Rückgabewert

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

Beschreibung

Die Funktion erstellt einen neuen Benutzer mit dem Namen Benutzername und dem Typ Benutzertyp.

Benutzertyp Konstante Beschreibung
0 USER_TYPE_LOCAL Lokales Konto, Anmeldung mit dem über IPS_SetUserPassword gesetzten Passwort
1 USER_TYPE_LDAP LDAP, Anmeldung über den LDAP-Server mit dem über IPS_SetUserBindDN gesetzten BindDN

Benutzer werden üblicherweise in der Berechtigungssteuerung verwaltet.

Ein neuer Benutzer ist deaktiviert, hat kein Passwort, keinen Vor- und Nachnamen, keine Rollen und keine Berechtigungen. Damit sich der Benutzer anmelden kann, muss er mit IPS_SetUserActive aktiviert werden und bei einem lokalen Konto mit IPS_SetUserPassword ein Passwort erhalten bzw. bei einem LDAP-Konto mit IPS_SetUserBindDN einen BindDN.

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. Der neue Benutzer wird auf das Benutzerlimit der Lizenz angerechnet (standardmäßig 10 Benutzer, der Benutzer @admin zählt nicht mit). Würde das Limit überschritten, schlägt die Funktion 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.

Weitere Fehler:

  • Ein leerer Name schlägt mit "User cannot be empty" fehl.
  • Der Name "token" ist für die Anmeldung mit temporären Tokens reserviert und schlägt mit "User 'token' is reserved and cannot be used" fehl.
  • Ein Name, der dem Lizenznehmer (E-Mail-Adresse der Lizenz) entspricht, schlägt mit "User cannot be equivalent to the licensee" fehl.
  • Ein anderer Benutzertyp als 0 oder 1 schlägt mit "Unsupported User Type!" fehl.
  • Existiert bereits ein Benutzer mit diesem Namen, schlägt die Funktion mit "User with name '…' already exists" fehl.

Siehe auch: IPS_DeleteUser, IPS_GetUser, IPS_AddRoleToUser

Beispiel

IPS_CreateUser('anna', USER_TYPE_LOCAL);
IPS_SetUserPassword('anna', 'geheim');
IPS_SetUserFirstName('anna', 'Anna');
IPS_SetUserLastName('anna', 'Muster');
IPS_SetUserActive('anna', true);
Haben Sie noch Fragen?