Project

General

Profile

Development #19959

N'autoriser qu'une seule fédération avec FC uniquement

Added by Serghei Mihai about 2 years ago. Updated 18 days ago.

Status:
Solution proposée
Priority:
Normal
Category:
FranceConnect
Target version:
-
Start date:
08 Nov 2017
Due date:
% Done:

0%

Patch proposed:
Yes
Planning:
No

Description

Pour prévenir les cas traité dans #19947.

0001-auth_fc-make-user-and-sub-relatively-unique-19959.patch View (15.9 KB) Benjamin Dauvergne, 14 Jun 2019 03:52 PM

0001-auth_fc-make-user-and-sub-relatively-unique-19959.patch View (20.8 KB) Benjamin Dauvergne, 14 Jun 2019 04:00 PM

0001-auth_fc-make-user-and-sub-relatively-unique-19959.patch View (24 KB) Benjamin Dauvergne, 30 Oct 2019 09:00 PM


Related issues

Related to Plugin FS FranceConnect - Bug #19947: Le modèle FcAccount ne contient aucune règle d'unicité il faut en tenir compte dans les templates Fermé 07 Nov 2017
Related to Plugin FS FranceConnect - Development #22915: Passer les textes de liaison de compte sur la page Mon compte lorsqu'une seule fédération est autorisé Nouveau 30 Mar 2018

History

#1 Updated by Benjamin Dauvergne about 2 years ago

  • Related to Bug #19947: Le modèle FcAccount ne contient aucune règle d'unicité il faut en tenir compte dans les templates added

#2 Updated by Benjamin Dauvergne about 2 years ago

Je préfère traiter ça à tête reposée parce qu'une migration pour rendre (user, sub) unique risque de péter en mise en prod ailleurs.

#3 Updated by Benjamin Dauvergne almost 2 years ago

  • Target version set to 0.11

#4 Updated by Benjamin Dauvergne over 1 year ago

  • Target version changed from 0.11 to future

#5 Updated by Mikaël Ates over 1 year ago

  • Assignee set to Benjamin Dauvergne
  • Subject changed from autoriser une seule fédération avec FC uniquement to N'autoriser qu'une seule fédération avec FC uniquement
  • Status changed from Nouveau to Information nécessaire

Il me semble que c'est déjà le cas via les interfaces.

#6 Updated by Mikaël Ates over 1 year ago

  • Related to Development #22915: Passer les textes de liaison de compte sur la page Mon compte lorsqu'une seule fédération est autorisé added

#7 Updated by Benjamin Dauvergne over 1 year ago

L'interface oui mais le modèle de donnée ne l'interdit pas, on avait un souci sur l'enregistrement qui est corrigé mais reste à voir si on va jusqu'à l'empêcher complètement au niveau schéma de donnée.

#9 Updated by Benjamin Dauvergne 7 months ago

Plan, ajouter un champ order=IntegerField(default=0), l'initialiser à la valeur de l'ordre du compte dans ceux avec un même (user, sub), puis le rendre unique, ça nous protège des soucis de migration et ça rend les choses uniques par ailleurs (ajouter un order=0 au get_or_create() qui construisent les nouveaux comptes).

#11 Updated by Benjamin Dauvergne 5 months ago

  • Status changed from Information nécessaire to En cours

#12 Updated by Benjamin Dauvergne 5 months ago

  • Target version deleted (future)

#13 Updated by Benjamin Dauvergne 5 months ago

C'est construit au dessus de #33992 parce que j'y modifie l'appel à authenticate().

L'idée c'est d'ajouter une colonne order entière à FcAccount et rendre unique user/sub relativement à order, quand on trouve un doublon on incrémente order.

Ensuite je modifie tous les appels de create/get_or_create pour forcer order=0, ça lève des IntegrityError si doublon, au passage je factorise plus de choses dans update_user_info(). La prochaine étape c'est #33991 pour ré-organiser tout ça et bien mettre toute l'authentification dans le backend et pas à moitié dans la vue ainsi qu'avoir la liaison par mail et la liaison au login qui soit paramétrable.

#14 Updated by Benjamin Dauvergne 5 months ago

Test sur la migration oublié sur une autre branche.

#15 Updated by Benjamin Dauvergne 5 months ago

  • Project changed from Plugin FS FranceConnect to Authentic 2

#16 Updated by Benjamin Dauvergne 5 months ago

  • Category set to FranceConnect

#17 Updated by Benjamin Dauvergne 5 months ago

Pas de doublons sur les autres productions.

#18 Updated by Benjamin Dauvergne 18 days ago

Rebasé, la fixture migration intégrées dans les autres tests sur les migrations.

Also available in: Atom PDF