Project

General

Profile

Development #67875

interface ajout d'un SSO SAML, difficultés de compréhension

Added by Thomas Noël 15 days ago. Updated about 1 hour ago.

Status:
Solution proposée
Priority:
Normal
Category:
-
Target version:
-
Start date:
02 August 2022
Due date:
% Done:

0%

Estimated time:
Patch proposed:
Yes
Planning:
No

Description

Dans la nouvelle interface d'ajout d'un fournisseur SAML, on a quelques champs un peu difficile à comprendre. Que faut-il indiquer, à quoi servent-ils, etc.

  • « Domaine : Domaine à associer à l’utilisateur, utilisé lors de l’affectation d’un identifiant. » . C'est une notion qui n'est ni dans SAML ni dans Authentic... de quoi s'agit-il ? Par défaut c'est "saml" qui est proposé. La phrase d'aide parle de « l’affectation d’un identifiant » ce qui obscurcit encore le truc :)
  • « Politique de format du NameID : Le format du NameID à demander. ». C'est un simple input, il faudrait proposer un exemple au moins, pour comprendre ce qui est attendu.
  • « Politique du NameID autorisant la création : » sauf que c'est une case à cocher... à quoi sert-elle ? On attendrait plutôt un verbe ici, pour savoir s'il faut faire ou pas "quelque chose", en fonction que la case est cochée ou pas.

Voilà, ce ticket juste pour mieux comprendre et si possible proposer de meilleurs textes ou traductions.


Files

History

#1

Updated by Thomas Noël 15 days ago

  • Assignee set to Paul Marillonnet (retour → 05 sept)
#2

Updated by Paul Marillonnet (retour → 05 sept) 15 days ago

Thomas Noël a écrit :

Dans la nouvelle interface d'ajout d'un fournisseur SAML, on a quelques champs un peu difficile à comprendre. Que faut-il indiquer, à quoi servent-ils, etc.

Oui, on a fait le choix de traduire alors qu’on utilisait jusque là les termes anglais du settings.json.

  • « Domaine : Domaine à associer à l’utilisateur, utilisé lors de l’affectation d’un identifiant. » . C'est une notion qui n'est ni dans SAML ni dans Authentic... de quoi s'agit-il ? Par défaut c'est "saml" qui est proposé. La phrase d'aide parle de « l’affectation d’un identifiant » ce qui obscurcit encore le truc :)

C’est le "realm", il est notamment utilisé dans le username template, pour générer des username du genre <NameID>@<realm>.

  • « Politique de format du NameID : Le format du NameID à demander. ». C'est un simple input, il faudrait proposer un exemple au moins, pour comprendre ce qui est attendu.

Là je pense qu’il faudrait un choix parmi "persistent", "temporaire (transient)" et "non spécifié". En l’état je pense que le comportement par défaut dans l’authn SAML du BO reste le même que lorsque ce format n’était pas spécifié dans le settings.json, à savoir un format persistent par défaut.

  • « Politique du NameID autorisant la création : » sauf que c'est une case à cocher... à quoi sert-elle ? On attendrait plutôt un verbe ici, pour savoir s'il faut faire ou pas "quelque chose", en fonction que la case est cochée ou pas.

C’est une option un peu obscure de SAML pour permettre au SP de préciser que l’IdP ne doit pas créer de NameID pour l’usager qui se connecte s’il ne lui en connait pas déjà un. Si aucun NameID n’est connu alors le SSO échoue. Les exemples d’application dans les spécs SAML ne sont pas clairs. Je ne nous connais pas de raccordements où cette option serait à False, je pense qu’on pourrait retirer cette option de l’UI.

#3

Updated by Valentin Deniaud 8 days ago

  • Assignee changed from Paul Marillonnet (retour → 05 sept) to Valentin Deniaud

Je vais m'occuper des ajustements proposés par Paul.

#4

Updated by Valentin Deniaud about 5 hours ago

Valentin Deniaud a écrit :

Je vais m'occuper des ajustements proposés par Paul.

Et en fait pas du tout, j'ai fait un tour sur le SaaS et la majorité des ces paramètres ne sont jamais modifiés, d'autres seulement à un endroit¹.

Il ne faut donc simplement pas les afficher dans la plupart des cas, pour ça je découpe le formulaire de configuration actuel en deux, la deuxième partie étant cachée dans sous un menu « Configuration avancée » accessible depuis la page d'édition classique.

¹ Les très rares endroits où un paramètre « avancé » est modifié peuvent être problématiques, car on risque de ne jamais aller consulter la page en question.
Actuellement la description affiche des champs spécifiés explicitement, s'ils sont non vides : description_fields = ['show_condition', 'metadata_url', 'metadata_path', 'metadata', 'provision'], liste déterminée arbitrairement selon un critère d'utilité.
On pourrait à la place avoir un fonctionnement automatique, c'est à dire afficher les champs qui ont une valeur différente de celle par défaut. À ce moment là un champ « avancé » modifié sautera aux yeux.
J'ajoute un patch pour faire ça ?

#5

Updated by Frédéric Péters about 1 hour ago

¹ Les très rares endroits où un paramètre « avancé » est modifié peuvent être problématiques, car on risque de ne jamais aller consulter la page en question.

L'idée serait alors d'utiliser des onglets et l'onglet "Avancé" serait sur ce cas précis marqué d'une pastille pour indiquer qu'il y a quelque chose dedans.

afficher les champs qui ont une valeur différente de celle par défaut
J'ajoute un patch pour faire ça ?

Mais oui ça peut aider dès maintenant de faire ça.

Also available in: Atom PDF