Référence d'API — @nodefony/security — keycloak
stable
Documentation › Référence d’API › @nodefony/security › keycloak
Générée depuis les déclarations de types publiées de
@nodefony/security10.0.0-beta.5 : exactement ce que reçoit une application qui l’installe. Cette page n’existe dans aucun dépôt — pour la corriger, on corrige le TSDoc du code.
@nodefony/security#
import { … } from "@nodefony/security" — 10 symboles.
Classes (2)#
KeycloakAdminClient#
class KeycloakAdminClient
Client de l’API d’administration d’UN realm Keycloak.
readonly realm: string— Nom du realm administré.readonly origin: string— Origine du serveur (https://hôte:port).constructor(options: IKeycloakAdminClientOptions)request(method: string, path: string, body?: unknown): Promise<Response>— Un appel à l’API d’administration du realm, jeton joint.getRealm(): Promise<Record<string, unknown>>— La représentation du realm.updateRealm(changes: Record<string, unknown>): Promise<void>— Change des champs du realm — et eux seuls : Keycloak ne touche pas aux champs absents d’unPUTpartiel.applyLoginTheme(skin: LoginPageSkin): Promise<IKeycloakLoginThemeResult>— Pose sur le realm le thème de connexion qui porte un habillage de/login.
KeycloakAdminError#
class KeycloakAdminError extends Error
Refus ou échec d’un appel ; le message nomme la cause et le geste suivant.
readonly status: number | nullconstructor(message: string, status?: number | null)
Fonctions (3)#
keycloakAdminTarget#
function keycloakAdminTarget(config: ISecurityConfig, providerName?: string): IKeycloakAdminTarget
Le realm et le compte d’administration d’un fournisseur, lus dans la configuration de sécurité VALIDÉE.
keycloakLoginThemeCheck#
function keycloakLoginThemeCheck(skin: LoginPageSkin): (html: string) => IOAuthCheck | null
La sonde « thème » du diagnostic d’un fournisseur : la page de Keycloak suit-elle l’habillage de /login ?
readKeycloakLoginTheme#
function readKeycloakLoginTheme(html: string): string | null
Le thème de connexion qu’une page servie par Keycloak charge.
Interfaces (4)#
IKeycloakAdminClientOptions#
interface IKeycloakAdminClientOptions extends IKeycloakAdminTarget
Ce que le client doit savoir.
readonly environment: string— Environnement du kernel : tout autre quedevelopmentest refusé.readonly fetch?: typeof globalThis.fetch— Transport (défaut :fetchglobal) — injecté par les tests.readonly timeoutMs?: number— Délai de chaque appel, en millisecondes (défaut 10 s).
IKeycloakAdminCredentials#
interface IKeycloakAdminCredentials
Le compte d’administration du serveur Keycloak (realm master).
readonly username: stringreadonly password: string
IKeycloakAdminTarget#
interface IKeycloakAdminTarget
Le serveur à joindre et le compte qui l’administre.
readonly issuer: string— Émetteur du fournisseur — l’adresse du realm (https://…/realms/<nom>).readonly admin: IKeycloakAdminCredentials
IKeycloakLoginThemeResult#
interface IKeycloakLoginThemeResult
Ce que le geste a constaté et fait.
readonly realm: stringreadonly previous: string | null— Thème du realm AVANT le geste ;nulls’il n’en déclarait aucun.readonly theme: string— Thème que l’habillage demande.readonly outcome: KeycloakLoginThemeOutcome
Types (1)#
KeycloakLoginThemeOutcome#
type KeycloakLoginThemeOutcome = "applied" | "unchanged" | "unmanaged"
Issue de KeycloakAdminClient.applyLoginTheme : - applied : le thème a changé ; - unchanged : le realm portait déjà ce thème ; - unmanaged : le realm porte un thème qui n’est pas de Nodefony (ou aucun) — il appartient à l’application, rien n’est touché.