Skip to Content

Backend

Mit einer Backend Erweiterung können neue Funktionen zum Einloggen von Benutzern hinzugefügt werden, das Frontend kann geändert werden und weitere Anpassungen sind möglich.

Einstiegpunkt

Der Einstiegspunkt einer Backend Erweiterung muss wie folgt aufgebaut sein:

src/backend/index.ts
const extensionModuleExport: BackendExtensionModuleExport = { onLoad: (authority, config) => { // ... authority.onReady(() => { // ... }); }, };

Der onLoad Callback wird beim Laden der Erweiterung aufgerufen. Der Parameter authority dient als Schnittstelle zu den anderen Erweiterungen und der Authority. In config ist der von der Authority zugewiesene Konfigurationsabschnitt der Erweiterung enthalten. Der onReady Callback wird aufgerufen, wenn die Authority initialisiert ist.

In den meisten Fällen ist das Callback der onReady Methode der richtige Ort, um Funktionen zu registrieren, die auf die Authority zugreifen müssen.

Konfiguration

Jede Erweiterung erhält automatisch einen eigenen Konfigurationsabschnitt, siehe Konfiguration Abschnitt Extensions. Dieser ist Teil der Konfigurationsdatei der Authority und wir automatisch der Erweiterung beim Starten übergeben. In der Konfiguration der Authority können die Konfigurationen der Erweiterungen wie folgt angegeben werden:

config.json
{ "extensions": { "configs": { "test_erweiterung": { "foo": "value1", "bar": "value2" } } } }

Wird die onLoad Methode aufgerufen, bekommt die Erweiterung test_erweiterung folgendes Objekt als Wert für den config Parameter übergeben:

{ "foo": "value1", "bar": "value2" }

In der Erweiterung selber können nun entweder External Login Provider oder External Claim Resolver definiert werden. Wie dies umsetzbar ist, wird in den jeweiligen Kapiteln beschrieben.