bouncer/doc/fr/tutorials/add-oidc-authn-layer.md
William Petit a9510ba45c
All checks were successful
Cadoles/bouncer/pipeline/pr-develop This commit looks good
feat: new openid connect authentication layer
2024-05-16 12:05:38 +02:00

2.8 KiB

Ajouter une authentification OpenID Connect

Dans ce tutoriel nous verrons comment ajouter un layer de type oidc-authn à un proxy pour ajouter une authentification OpenID Connect à notre service distant.

Prérequis

Pour réaliser ce tutoriel nous allons utiliser la forge Cadoles comme fournisseur d'identité. Vous devrez donc créer une application OAuth2 avec votre compte Cadoles sur https://forge.cadoles.com/user/settings/applications et collecter les informations suivantes:

  • Identifiant du client ;
  • Secret du client.

Concernant l'URL de redirection, si vous ne modifiez pas l'option oidc.loginCallbackPath vous devrez renseigner une URL répondant au modèle suivant:

<base_url>/.bouncer/authn/oidc/<proxy_name>/<layer_name>/callback

  • <base_url> est l'URL de base d'accès à votre instance Bouncer, par exemple http://localhost:8080 si vous avez travaillez avec une instance Bouncer locale avec la configuration par défaut ;
  • <proxy_name> est le nom du proxy créé dans Bouncer, dans ce tutoriel my-proxy ;
  • <layer_name> est le nom du layer créé dans Bouncer, dans ce tutoriel my-layer.

Étapes

  1. Avec le client d'administration de Bouncer en ligne de commande, créer un nouveau proxy

    bouncer admin proxy create --proxy-name my-proxy --proxy-to https://www.cadoles.com
    
  2. Activer le proxy my-proxy

    bouncer admin proxy update --proxy-name my-proxy --proxy-enabled
    
  3. À ce stade, vous devriez pouvoir afficher le site Cadoles en ouvrant l'URL de votre instance Bouncer, par exemple http://localhost:8080 si vous avez travaillez avec une instance Bouncer locale avec la configuration par défaut

  4. Créer un layer de type authn-oidc pour notre nouveau proxy

     bouncer admin layer create --proxy-name my-proxy --layer-name my-layer --layer-type authn-oidc
    
  5. Configurer le nouveau layer my-layer avec les options collectée dans les prérequis et l'activer

    bouncer admin layer update --proxy-name my-proxy --layer-name my-layer --layer-options '{ "oidc":{"clientId": "<clientId>", "clientSecret":"<clientSecret>", "issuerURL": "https://forge.cadoles.com/", "postLogoutRedirectURL": "<baseURL>" }}' --layer-enabled
    

    Où:

    • <clientId> est l'identifiant du client OIDC récupéré dans les prérequis ;
    • <clientSecret> est le secret du client OIDC récupéré dans les prérequis ;
    • <postLogoutRedirectURL> est l'URL de redirection après déconnexion, par exemple http://localhost:8080 si vous avez travaillez avec une instance Bouncer locale avec la configuration par défaut.
  6. À ce stade en ouvrant l'URL de votre instance Bouncer vous devriez être redirigé vers la forge Cadoles vous demandant de vous authentifier.

Ressources