update_user()

Aktualisiert ein bestehendes Benutzerkonto. Nicht übergebene Felder werden vor dem Schreiben vom Server gelesen und unverändert wieder zurückgeschrieben – so bleiben sie erhalten.

1. Signatur

  • Sync

  • Async

ecm.security.update_user(
    user_guid: str,
    *,
    username: str | None = None,
    login_name: str | None = None,
    display_name: str | None = None,
    email: str | None = None,
    remark: str | None = None,
    password: str | None = None,
    profile_id: int | None = None,
    locked: bool | None = None,
    supervisor: bool | None = None,
    account_type: int | None = None,
    flags: int | None = None,
    lang_id: int | None = None,
    server_id: int | None = None,
    valid_from: datetime | None = None,
    valid_to: datetime | None = None,
    change_pwd: bool | None = None,
    never_expire: bool | None = None,
) -> ECMUserAttributes
await ecm.security.update_user(...) -> ECMUserAttributes

2. Parameter

Parameter Standard Beschreibung

user_guid

GUID des zu ändernden Benutzers.

alle anderen

None

Wenn nicht None, wird der Wert geändert. None lässt den aktuellen Wert unverändert.

password

None

Klartext-Passwort. Wird vor dem Senden automatisch via password_encrypt() ins Blue-Server-Format kodiert (mit optionaler password_reveal()-Entschlüsselung für ECMIND_KEY-verschlüsselte Werte). None lässt das bestehende Passwort unverändert.

3. Rückgabewert

ECMUserAttributes mit dem aktualisierten Stand (frisch vom Server gelesen).

4. Fehler

  • ECMNotFoundException – wenn user_guid keinen Benutzer findet.

  • ECMException (oder Unterklasse) bei sonstigen Server-Fehlern.

5. Beispiele

5.1. Konto sperren

  • Sync

  • Async

ecm.security.update_user(user.guid, locked=True)
await ecm.security.update_user(user.guid, locked=True)

5.2. E-Mail und Anzeigename ändern

ecm.security.update_user(
    user.guid,
    email="new@example.com",
    display_name="John Q. Doe",
)

5.3. Befristung verlängern

from datetime import datetime

ecm.security.update_user(
    user.guid,
    valid_to=datetime(2027, 12, 31, 23, 59, 59),
)

6. Siehe auch