In diesem Kapitel finden Sie allgemeine Richtlinien und Konvention, die Sie beim Erstellen einer API beachten müssen.
In diesem Kapitel finden Sie allgemeine Richtlinien und Konvention, die Sie beim Erstellen einer API beachten müssen.
In diesem Kapitel finden Sie Informationen zur Abarbeitung einer Anfrage an den API Server.
Bei einer Anfrage an den API Server wird geprüft, ob in der Sitzung für das jeweilige API-Projekt die primäre und gegebenenfalls sekundäre Anmeldung erfolgt ist (siehe Authentifizierung).
HINWEIS: Diese Prüfung erfolgt nicht, wenn die API-Methode der Anfrage als AllowUnauthenticated markiert ist.
Für die Zuordnung der aktuellen Sitzung wird der vom Client übermittelte Cookie imx-session-<Name des API-Projektes> ausgewertet.
Wenn ein Cookie übermittelt wird, der aber keiner im aktuellen Prozess aktiven Sitzung zugeordnet werden kann, wird mit dem im Cookie enthaltenen Sicherheitstoken eine neue Sitzung hergestellt (siehe Sitzungsstatus und Sicherheitstoken).
Liegt keine primäre Anmeldung vor, versucht der API Server über eines der aktivierten Single-Sign-On-Authentifizierungsmodule eine Datenbankverbindung herzustellen.
Kann die Anmeldung auch dann nicht hergestellt werden, wird die Bearbeitung der Anforderung abgebrochen und der HTTP-Fehlercode 500 wird an den Client übermittelt (siehe Antwortcodes).
Der API Server prüft, ob der aktuell angemeldete Benutzer berechtigt ist, die Methode auszuführen. Verfügt der Benutzer nicht über die benötigten Berechtigungen, wird die Bearbeitung abgebrochen und der HTTP-Fehlercode 500 wird an den Client übermittelt (siehe Antwortcodes).
Der API Server ruft die an der API-Methode hinterlegten Validatoren nacheinander auf. Wenn ein Fehler zurückgemeldet wird, wird die Bearbeitung abgebrochen und der HTTP-Fehlercode 400 wird an den Client übermittelt (siehe Antwortcodes).
Ermittlung der WHERE-Klausel mit internen und externen Filtern
Laden der Daten aus der Datenbank
Anreichern einer Entity mit berechneten Spalten
Eine Entity im delayed-logic-Modus kann mit einer POST-Anfrage verändert oder mit einer DELETE-Anfrage gelöscht werden. Eine Entity in diesem Modus ist zustandslos (stateless) und belegt auf dem Server nach der Abarbeitung einer Anfrage keine Ressourcen mehr.
Unterstützte HTTP-Methoden:
GET (Lesen einer Entity)
POST (Ändern einer Entity)
DELETE (Löschen einer Entity)
Eine interaktive Entity muss einmalig mit einer PUT-Anfrage erzeugt werden, und erhält danach eine eigene ID. Benutzen Sie bei nachfolgenden Anforderungen (POST oder DELETE) diese ID.
Unterstützte HTTP-Methoden:
GET (Laden einer Entity)
PUT (Erzeugen einer interaktiven Entity)
POST (Ändern einer interaktiven Entity)
DELETE (Löschen einer interaktiven Entity)
Die Authentifizierung von Benutzern am API Server erfolgt pro API-Projekt.
Die Ausführung einer API-Methode erfordert die vorherige Authentifizierung an einem API-Projekt. Ist die API-Methode als AllowUnauthenticated markiert (Beispiele finden Sie im SDK), ist keine Authentifizierung nötig.
Die Authentifizierung erfolgt in zwei Schritten:
Erforderliche primäre Authentifizierung: Standard-Authentifizierung über ein Authentifizierungsmodul
Optionale sekundäre Authentifizierung: Multifaktor-Authentifizierung (über OneLogin)
Weitere Informationen zur Konfiguration der Authentifizierung finden Sie im One Identity Manager Konfigurationshandbuch für Webanwendungen.
Sie können festlegen, wie sich Benutzer an Ihrer API authentifizieren. Sie konfigurieren die Authentifizierung am API-Projekt.
Um die Authentifizierung zu konfigurieren
Bearbeiten Sie Ihr API-Projekt.
Erstellen Sie die Klasse SessionAuthDbConfig und geben Sie dabei folgende Eigenschaften an:
Product: Legen Sie die Anwendung fest, deren Authentifizierungsmodule Sie verwenden möchten (beispielsweise WebDesigner oder Manager).
SsoAuthentifiers: Legen Sie die Single-Sign-on-Authentifizierungsmodule fest, die verwendet werden sollen.
ExcludedAuthentifiers: Legen Sie Authentifizierungsmodule fest, die nicht verwendet werden sollen.
© 2024 One Identity LLC. ALL RIGHTS RESERVED. Feedback 이용 약관 개인정보 보호정책 Cookie Preference Center