cartesapp / cartes

L'appli Web de cartes grand public
https://cartes.app
GNU Affero General Public License v3.0
224 stars 27 forks source link

Détails juridiques barbants #426

Open Aeris1One opened 4 months ago

Aeris1One commented 4 months ago

Bonjour, Je n'ai pas réussi à trouver de mentions légales sur Cartes.app, c'est légalement obligatoire et c'est une page qui peut être pratique (lien vers Github par exemple).

Il n'y a pas non-plus de notice RGPD, ce qui est nécessaire pour la transparence tout simplement (où vont mes données, même si à part les données de navigateur, il n'y a pas grand-chose de récupéré par Cartes).

D'ailleurs, sur le RGPD, un petit détail qui peut avoir son importance, c'est d'essayer de proxier le plus de choses possibles par un serveur contrôlé par Cartes. Pour les trucs lourds (comme les tiles de la carte) ce n'est pas trop grave parce que ça serait pénalisant de faire un proxy, mais par exemple pour la météo ou pour les icônes (servies depuis jsdelivr.net), ça éviterait une requête du navigateur vers un service externe. L'objectif étant que tout passe par une IP de Cartes, pour éviter un éventuel pistage par Météo-France ou jsdelivr.net (ils verraient seulement que le serveur de Cartes a demandé la météo à tel endroit). Mais ça devrait peut-être faire l'objet d'une autre issue.

Si besoin, je peux aider à la rédaction des mentions légales ou de la notice RGPD : je ne suis pas particulièrement à l'aise avec React mais je peux quand-même aider sur certains points :p

laem commented 4 months ago

Merci pour le retour ! C'est clairement à faire. Je comptais faire une page à propos qui aurait une section mentions légales, et une section vie privée. J'essaierais d'éviter au max le jargon de juriste sur ces pages.

Concernant le proxy par le serveur, personnellement je suis plutôt pour ne pas mettre de proxy sur les services comme météofrance, ceux que je ne peux pas reproduire moi-même, d'autant plus quand c'est un service public. Et de rapatrier chez moi les autres, comme maptiler ou jsdeliver. Pour maptiler, on n'est pas loin d'y être pour le fond de carte, mais il reste quelques éléments manquants dans les protomaps mis à dispo par panoramax.

L'efficacité ici me semble primer sur la vie privée : faire une requête plutôt que 2.

La question de l'hébergement du site se pose aussi. Il est sur Vercel actuellement car je n'ai trouvé aucun fournisseur français potable de Saas Next. Scalingo fonctionne, mais met 10 minutes à compiler le code contre la minute de Vercel. Il faudrait creuser d'autres fournisseurs reglos... ou l'héberger directement chez moi pour la prod, car de toutes façon j'aurai besoin d'un serveur pendant longtemps encore. Il faudra juste le brancher sur les déploiements de github / master. Quelque chose comme Dokku marchait bien avant, je ne sais pas où ça en est aujourd'hui.

Aeris1One commented 4 months ago

En fait c'est tout simplement qu'une requête proxiée ça t'enlève la nécessité de justifier d'un traitement de données. Le RGPD grosso-modo tu dois justifier de tous les transferts de données.

Une requête vers ton serveur c'est nécessité de service, une requête vers un service externe tu dois pouvoir justifier de la raison pour laquelle tu envoie des données à un service externe. Pour la carte l'argument peut être "c'est trop lourd/difficile à mettre en place" sans trop de problèmes mais pour Météo-France l'argument "ça ajoute de la charge/de la latence" est très facilement contestable en cas de plainte puisque c'est vraiment minime comme impact. Cela dit je comprends tout à fait ta position, c'est juste une petite sécurisation juridique (même si je ne pense pas que quelqu'un attaque Cartes de sitôt pour violation du RGPD)

Pour l'hébergement, ne serait-il pas possible de faire une image Docker/OCI via Github Actions et de déployer celle-ci ? Ça permettrait d'augmenter grandement la liste des fournisseurs avec tous ceux qui fournissent de l'hébergement de containers.

Parmi eux je pense à Scaleway, ils sont plutôt corrects et il y a probablement moyen de leur demander une réduction/du crédit en tant que projet open-source (quoiqu'ils semblent avoir supprimé leur page "open-source program" assez récemment...)

laem commented 4 months ago

Pour l'hébergement, ne serait-il pas possible de faire une image Docker/OCI via Github Actions et de déployer celle-ci ? Ça permettrait d'augmenter grandement la liste des fournisseurs avec tous ceux qui fournissent de l'hébergement de containers.

Oui mais est-ce qu'en échange de cette complexité ça résoudrait le problème du temps de compilation sur un serveur Saas français ?

Aeris1One commented 4 months ago

Hum, si le projet est pré-compilé via Github Actions, packagé dans un container Docker, l'hébergeur n'a plus qu'à pull le container et le démarrer, donc plus de compilation de leur côté.

Ça ne résous pas le problème de latence entre le commit et le déploiement (puisque si la compilation prends 30 minutes chez un hébergeur, elle prendra sensiblement autant de temps sur Github Actions, il vaut mieux optimiser le temps de compilation) mais ça peut éviter de taper une éventuelle limite (si un hébergeur tue la compilation si elle dépasse x minutes), réduire le coût (Github Actions c'est gratuit pour les projets publics, en général les hébergeurs te facturent le temps de compilation) ou réduire le temps de démarrage des containers lors d'un auto-scaling et ça augmente le nombre d'hébergeurs possibles (pas mal d'hébergeurs supportent les containers, plus en tous cas que les hébergeurs qui supportent spécifiquement Next).

Je peux essayer de faire un draft de Dockerfile ce week-end, histoire de voir ce que cela donnerait.

laem commented 4 months ago

Hum, si le projet est pré-compilé via Github Actions, packagé dans un container Docker, l'hébergeur n'a plus qu'à pull le container et le démarrer, donc plus de compilation de leur côté.

Certes, mais tu as des indices qui iraient dans le sens d'un temps total de déploiement pas plus élevé que Vercel ?

réduire le coût

La compilation n'est en général pas payante en Saas, c'est le run qui coûte.

laem commented 4 months ago

Je peux essayer de faire un draft de Dockerfile ce week-end, histoire de voir ce que cela donnerait.

À mon avis c'est pas vraiment le sujet ops de l'appli Web Next qui mérite de l'attention, mais beaucoup plus le serveur laem/gtfs. Mais si ça te dit plus de travailler sur la partie Web, n'hésite pas !

laem commented 3 months ago

Première version via https://github.com/laem/cartes/commit/12d49c3464a7c54d538715b8f8fa122e2732a03f