SafeLine WAF
SafeLine (雷池) par Chaitin est un pare-feu applicatif web (WAF) auto-hébergé. Il permet la connexion des utilisateurs via un fournisseur OpenID Connect (OIDC) à deux endroits :
- 身份认证 (authentification d'identité) place une page de connexion devant les applications protégées par SafeLine. Il prend en charge OIDC depuis SafeLine 8.6.0, dans toutes les éditions.
- 控制台登录方式 (méthode de connexion à la console) connecte les administrateurs à la console SafeLine. Il prend en charge OIDC depuis SafeLine 9.0.0, et uniquement avec une licence commerciale (商业版).
Les deux sont configurés séparément, et chacun a besoin de sa propre URL de redirection dans Casdoor. La console SafeLine est en chinois, donc cette page affiche ses libellés en chinois avec une traduction.
Créer l'application dans Casdoor
-
Dans la console d'administration de Casdoor, ouvrez l'organisation de vos utilisateurs et ajoutez une application, ou ouvrez-en une existante.
-
Ajoutez le callback de SafeLine aux Redirect URLs, pour chaque domaine d'une application protégée qui utilise la connexion, et pour le domaine du portail de connexion unifié (统一认证) si vous l'utilisez :
https://app.example.com/.safeline/auth/api/callback/oidc -
Enregistrez, et notez le Client ID et le Client secret.
Se connecter aux applications protégées
-
Dans la console SafeLine, accédez à 身份认证 (authentification) > 配置 (configuration) > 登录配置 (configuration de la connexion), et ouvrez l'entrée OIDC de 第三方登录配置 (connexion via des tiers).
-
Renseignez les paramètres :
Setting Value OIDC 服务器 URL (OIDC server URL) https://door.example.comClient ID <your-client-id>Client Secret <your-client-secret>标题名称 (title) Casdoor, or keep the default- OIDC 服务器 URL : L'URL de Casdoor. SafeLine ajoute
.well-known/openid-configurationà celle-ci pour trouver les points de terminaison. <your-client-id>,<your-client-secret>: Les valeurs de l'application Casdoor.- 自动关联账号 (lier automatiquement les comptes) : Facultatif. Lie l'utilisateur Casdoor à un utilisateur SafeLine existant ayant la même adresse e-mail ou le même numéro de téléphone.
- OIDC 服务器 URL : L'URL de Casdoor. SafeLine ajoute
-
Enregistrez, puis dans les paramètres de chaque application protégée, activez OIDC dans ses 登录方式 (méthodes de connexion) sous 身份认证.
Un utilisateur qui se connecte pour la première fois attend qu'un administrateur approuve sa demande dans 身份认证 > 用户管理 (gestion des utilisateurs), sauf si l'application permet l'accès immédiat après la connexion (认证后直接访问).
Se connecter à la console SafeLine
Cela nécessite SafeLine 9.0.0 ou ultérieur avec une licence commerciale.
-
Dans la console SafeLine, accédez à 通用设置 (paramètres généraux) > 控制台管理 (gestion de la console) > 控制台用户管理 (utilisateurs de la console) > 登录方式 (méthode de connexion), et choisissez OIDC. Les versions plus anciennes ont cette option sous 系统设置 (paramètres système) > 控制台用户管理.
-
Copiez l'应用回调地址 (URL de callback de l'application) affichée par la page, et ajoutez-la aux Redirect URLs de l'application Casdoor. Pour utiliser 测试登录 (test de connexion), ajoutez également la même URL avec
/testà la fin. -
Renseignez OIDC 服务器 URL (
https://door.example.com), Client ID, et Client Secret. -
Ajoutez des lignes à 用户角色映射关系 (correspondance des rôles) pour attribuer un rôle de console aux utilisateurs Casdoor :
Column Value 角色所属 Scope (scope of the role) profile用户角色参数 (claim) groups参数值 (value) The name of a Casdoor group, for example waf-admins控制台角色 (console role) 超级管理, 配置管理, or 系统管理 (super, configuration, or system administrator) Casdoor envoie les groupes de l'utilisateur dans la claim
groups. Dans l'application Casdoor, sur l'onglet OIDC/OAuth, définissez Token group format surName (group), afin que la valeur soitwaf-adminsau lieu demy-org/waf-admins. -
Cliquez sur 测试登录 et connectez-vous à Casdoor avec un utilisateur appartenant à un groupe mappé.
-
Cliquez sur 确定 (OK).
Lorsque vous soumettez la configuration OIDC, SafeLine supprime les comptes de console existants et vous déconnecte. Par la suite, les administrateurs ne se connectent à la console que via Casdoor. Testez la connexion au préalable.
Vérifier le résultat
- Ouvrez une application protégée dans une fenêtre de navigation privée. SafeLine affiche sa page de connexion avec le bouton OIDC.
- Cliquez dessus et connectez-vous à Casdoor. SafeLine autorise l'accès à l'utilisateur, ou après la première connexion, attend qu'un administrateur approuve l'utilisateur.
Dépannage
| Symptom | Cause and fix |
|---|---|
Casdoor shows Redirect URI: ... doesn't exist in the allowed Redirect URI list | Add the URL from the error to Redirect URLs. Each protected domain, the unified sign-in portal, and the console have their own callback. |
| The Client Secret is empty after saving | A bug of SafeLine before 9.3.11. Upgrade SafeLine. |
Le portail de connexion unifié (统一认证) affiche 未知错误: Cannot read properties of null (reading 'auth_url') lorsque vous passez à OIDC | Un problème ouvert de SafeLine, chaitin/SafeLine#1273. Le document de découverte de Casdoor n'est pas la cause : il se charge correctement dans la même configuration. |
| An unknown error appears after the user returns from Casdoor, and reloading the page signs the user in | An open SafeLine issue, chaitin/SafeLine#1244. |
| No console role is assigned | The value in 参数值 differs from the group in the token. Check Token group format and the user's groups in Casdoor. |
Voir aussi
- 身份认证 - OIDC dans la documentation de SafeLine
- 控制台登录方式 - OIDC dans la documentation de SafeLine
- Présentation des tokens