Übersicht
Die User API ist eine REST API zur Verwaltung von Fess-Benutzerkonten. Sie können Benutzer erstellen, abrufen, aktualisieren und löschen sowie Rollen und Gruppen zuweisen.
Dies ist eine Admin-API; der Zugriff erfordert eine Authentifizierung mit einem Admin-Zugriffstoken. Informationen zur Authentifizierungsmethode und zu den gemeinsamen Spezifikationen finden Sie unter Admin API Übersicht.
Jede Antwort ist in ein response-Objekt eingebettet und enthält die folgenden gemeinsamen Felder:
version: Der Fess-Produktversionsstring.status: Der Ergebnisstatuscode (0=Erfolg,1=Ungültige Anfrage,2=Systemfehler,3=Nicht autorisiert,9=Fehlgeschlagen).
Basis-URL
Endpunktliste
| Methode | Pfad | Beschreibung |
|---|---|---|
| GET | /settings | Benutzerliste abrufen |
| GET | /setting/{id} | Benutzer abrufen |
| POST | /setting | Benutzer erstellen |
| PUT | /setting | Benutzer aktualisieren |
| DELETE | /setting/{id} | Benutzer löschen |
Benutzerliste abrufen
Anfrage
Parameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
size | Integer | Nein | Anzahl der Einträge pro Seite. Der Standardwert ist der konfigurierte Wert paging.page.size (Standard: 25). |
page | Integer | Nein | Seitennummer (beginnt bei 1). Der Standardwert ist 1. |
Bemerkung
In der aktuellen Implementierung berücksichtigt der Endpunkt für die Benutzerliste die Parameter size und page nicht. Es wird immer die erste Seite zurückgegeben, mit der durch die Servereinstellung paging.page.size (Standard: 25) festgelegten Anzahl von Einträgen, sortiert nach Benutzername (name) in aufsteigender Reihenfolge. Die Gesamtanzahl der übereinstimmenden Benutzer ist in response.total verfügbar.
Antwort
settings: Das Array der Benutzer auf der aktuellen Seite.total: Die Gesamtanzahl der übereinstimmenden Benutzer.
Benutzer abrufen
Anfrage
Geben Sie in {id} die Dokument-ID des Zielbenutzers an.
Antwort
Bemerkung
attributes enthält alle für den Benutzer gespeicherten Attribute, mit Ausnahme von name, password, roles und groups. password ist nicht in der Antwort enthalten.
Benutzer erstellen
Anfrage
Anfrage-Body
Feldbeschreibungen
| Feld | Erforderlich | Beschreibung |
|---|---|---|
name | Ja | Benutzername (Login-ID) |
password | Nein | Passwort |
confirmPassword | Nein | Bestätigungspasswort |
attributes | Nein | Attribut-Map (siehe unten) |
roles | Nein | Array von Rollen-IDs |
groups | Nein | Array von Gruppen-IDs |
Bemerkung
Die REST API führt keine Pflichtprüfung für das Passwort, keinen Abgleich zwischen password und confirmPassword und keine Passwortrichtlinienvalidierung durch (diese werden nur in der Admin-Oberfläche angewendet). In der Praxis wird empfohlen, ein gültiges password anzugeben, dessen Wert mit confirmPassword übereinstimmt.
Die Schlüssel von attributes sind die Attributnamen der Benutzerentität (die aus LDAP abgeleiteten Schemaelementnamen). Die häufigsten Schlüssel sind:
surname,givenName,displayName,mailtelephoneNumber,mobile,homePhoneemployeeNumber,title,description,homeDirectoryuidNumber,gidNumber
uidNumber und gidNumber müssen numerische Werte sein (der Typ wird bei der Aktualisierung validiert). Viele weitere LDAP-Attributschlüssel können ebenfalls angegeben werden.
Bemerkung
Bei der Erstellung wird die Benutzer-ID (Dokument-ID) automatisch als Base64-URL-kodierter Wert des Benutzernamens generiert (zum Beispiel wird der Benutzername admin zu YWRtaW4=).
Antwort
id: Die Dokument-ID des erstellten Benutzers.created:truebei erfolgreicher Erstellung.
Benutzer aktualisieren
Anfrage
Anfrage-Body
Feldbeschreibungen
| Feld | Erforderlich | Beschreibung |
|---|---|---|
id | Ja | Die Dokument-ID des zu aktualisierenden Benutzers. |
name | Ja | Benutzername (Login-ID) |
versionNo | Ja | Versionsnummer (für optimistisches Sperren) |
password | Nein | Neues Passwort (wird nur aktualisiert, wenn angegeben) |
confirmPassword | Nein | Bestätigungspasswort |
attributes | Nein | Attribut-Map (siehe „Benutzer erstellen“) |
roles | Nein | Array von Rollen-IDs |
groups | Nein | Array von Gruppen-IDs |
Bemerkung
Bei der Aktualisierung sind id, name und versionNo erforderlich. versionNo ist der Wert, der beim Abrufen des Zielbenutzers (GET) zurückgegeben wird, und entspricht der OpenSearch-Dokumentversion. Stimmt er nicht mit der aktuellen Version überein, wird die Anfrage als Konflikt behandelt und die Aktualisierung abgelehnt.
Antwort
created:falsebei einer Aktualisierung.
Benutzer löschen
Anfrage
Geben Sie in {id} die Dokument-ID des zu löschenden Benutzers an.
Bemerkung
Der aktuell angemeldete Benutzer kann nicht gelöscht werden.
Antwort
id: Die Dokument-ID des gelöschten Benutzers.
Verwendungsbeispiele
Neuen Benutzer erstellen
Benutzerrollen ändern
Referenzinformationen
Admin API Übersicht - Admin API Übersicht
Role API - Rollenverwaltung API
Group API - Gruppenverwaltung API
Benutzer - Benutzerverwaltungsanleitung