3.5 KiB
Layer authn-oidc
Description
Ce layer permet d'ajouter une authentification OpenID Connect au service distant.
Voir le tutoriel "Ajouter une authentification OpenID Connect" pour plus d'informations quant à son utilisation.
Type
authn-oidc
Schéma des options
Les options disponibles pour le layer sont décrites via un schéma JSON. Elles sont documentées dans le schéma visible ici.
En plus de ces options spécifiques le layer peut également être configuré via les options communes aux layers authn-*
.
Objet vars.user
et attributs
L'objet vars.user
exposé au moteur de règles sera construit de la manière suivante:
-
vars.user.subject
sera initialisé avec la valeur du claimsub
extrait de l'idToken
récupéré lors de l'authentification ; -
vars.user.attrs
comportera les propriétés suivantes:-
L'ensemble des
claims
provenant de l'idToken
seront transposés enclaim_<name>
(ex:idToken.iss
sera transposé envars.user.attrs.claim_iss
) ; -
vars.user.attrs.access_token
: le jeton d'accès associé à l'authentification ; -
vars.user.attrs.refresh_token
: le jeton de rafraîchissement associé à l'authentification (si disponible, en fonction desscopes
demandés par le client) ; -
vars.user.attrs.token_expiry
: Horodatage Unix (en secondes) associé à la date d'expiration du jeton d'accès ; -
vars.user.attrs.logout_url
: URL de déconnexion pour la suppression de la session Bouncer.Attention Cette URL ne permet dans la plupart des cas que de supprimer la session côté Bouncer. La suppression de la session côté fournisseur d'identité est conditionné à la présence ou non de l'attribut
end_session_endpoint
dans les données du point d'entrée de découverte de service (.wellknown/openid-configuration
).
-
Métriques
Les métriques Prometheus suivantes sont exposées par ce layer.
bouncer_layer_authn_oidc_login_requests_total{layer=<layerName>,proxy=<proxyName>}
-
Type:
counter
-
Description: Nombre total de demandes d'authentification
-
Exemple
# HELP bouncer_layer_authn_oidc_login_requests_total Bouncer's authn-oidc layer total login requests # TYPE bouncer_layer_authn_oidc_login_requests_total counter bouncer_layer_authn_oidc_login_requests_total{layer="my-layer",proxy="my-proxy"} 1
bouncer_layer_authn_oidc_login_successes_total{layer=<layerName>,proxy=<proxyName>}
-
Type:
counter
-
Description: Nombre total d'authentifications réussies
-
Exemple
# HELP bouncer_layer_authn_oidc_login_successes_total Bouncer's authn-oidc layer total login successes # TYPE bouncer_layer_authn_oidc_login_successes_total counter bouncer_layer_authn_oidc_login_successes_total{layer="my-layer",proxy="my-proxy"} 1
bouncer_layer_authn_oidc_logout_total{layer=<layerName>,proxy=<proxyName>}
-
Type:
counter
-
Description: Nombre total de déconnexions
-
Exemple
# HELP bouncer_layer_authn_oidc_logout_total Bouncer's authn-oidc layer total logouts # TYPE bouncer_layer_authn_oidc_logout_total counter bouncer_layer_authn_oidc_logout_total{layer="my-layer",proxy="my-proxy"} 1