etalab / admin_api_entreprise

Site vitrine / backoffice de API Entreprise
https://entreprise.api.gouv.fr
MIT License
9 stars 5 forks source link

API Particulier: impossible aux éditeurs d'accéder aux jetons #709

Closed skelz0r closed 1 year ago

skelz0r commented 2 years ago

Problème remonté aujourd'hui https://mattermost.incubateur.net/betagouv/pl/5xkw6bphpbfsprm89sjbmwkrmw et https://support.etalab.gouv.fr/#ticket/zoom/48313

Ce que j'ai dit sur le thread:

Pour le contexte: sur notre plateforme seul les demandeurs peuvent récupérer les jetons. Lui c'est un éditeur ( exemple: https://datapass.api.gouv.fr/api-particulier/13261 ), et je n'ai aucune trace de lui dans notre BO (car ça rentre pas dans notre nomenclature) ... :grimacing:

Là c'est un peu compliqué, vu qu'on ne crée plus de jetons sur l'ancien backend je ne peux juste pas faire le switch sur l'ancienne plateforme facilement.

Donc 2 choix:

  1. On rebranche l'ancien backend + l'ancien bridge de DataPass, mais du coup c'est le bordel pour les jetons..
  2. On implémente du multi users direct pour gérer ça ( dans API Particulier chaque demande possède N emails, on fait les N users lié à ces demandes)
skelz0r commented 2 years ago

Si on part sur 2., il faut:

  1. Créer une nouvelle nomenclature de Contact ( technique, éditeur.. à voir en inspectant les data )
  2. Permettre à ces contacts de se connecter
  3. Lister les jetons associés aux demandes du contact

Dès que c'est codé: refaire un import des données de contact et les lié aux demandes DataPass.

Haelle commented 1 year ago

De mémoire on avait décidé de :

Samuelfaure commented 1 year ago

Je prend ce sujet, je m'y met dès que j'ai finit la 2nd PR liasses fiscales

Haelle commented 1 year ago

Voir commentaire suivant, celui-ci gardé pour l'historique

Je partage ce qu'il faut faire

SQL/model

Code

⚠ ATTENTION ⚠ Si c'est fait en une seule PR la migration devra être faite en SQL car on va jeter la table contacts, et donc en SQL on aura pas les contraintes d'intégrités sur users, genre les emails uniques.

Je pense donc qu'une première PR de fonctionnalité puis une PR de nettoyage me paraît bien.

Haelle commented 1 year ago

On part sur une solution plus simple : on envoie un magic link aux contacts techniques et métiers.

Ainsi on bypass les comptes api.gouv.fr et on peut garder notre politique d'email générique pour les contacts techniques et métiers.

Je ne sais pas si c'est vraiment chronologique il y a peut-être des dépendances que j'ai pas vue

skelz0r commented 1 year ago

PI je viens d'importer les contacts techniques manquants (j'ai constaté que j'avais oublié de les importer au moment de la migration) https://github.com/etalab/migrate_api_particulier_tokens_to_siade/commit/68a5ae2e788369261bb0445df8f643974f45be23

Samuelfaure commented 1 year ago

@skelz0r du coup il reste des contacts API part à migrer ou c'est bon pour cette partie?

skelz0r commented 1 year ago

C'est bon tout est migré (et dtf c'est indépendant de l'implémentation de la feature).

skelz0r commented 1 year ago

L'url pour le préremplissage sur auth-api -> https://auth.api.gouv.fr/users/start-sign-in?login_hint=email@domain.com

Samuelfaure commented 1 year ago

closed par #776