- État Nouveau
- Pourcentage achevé
- Type Évolution
- Catégorie Téléchargements
- Assignée à Personne
- Système d'exploitation Freebox V9 (Ultra)
- Sévérité Basse
- Priorité Très Basse
- Basée sur la version 4.8.15
- Due pour la version Non décidée
-
Échéance
Non décidée
- Votes
- Privée
Concerne le projet: Freebox Server (Ultra V9/ Pop V8/ Delta V7 / Revolution V6 / Mini 4K)
Ouverte par Mirx74 - 11/10/2024
Ouverte par Mirx74 - 11/10/2024
FS#39771 - Gestion de Google Takeout
Bonjour
Google Takeout ( https://takeout.google.com/settings/takeout/custom/photos?pli=1 ) permet notamment d'exporter via des liens de dl le contenu Google Photos.
Ces liens ne sont pas reconnus par la box.
Ca permettrait une fonction de sauvegarde sur le DD de la box de son compte google (photos ou plus large)
Merci !
Chargement...
Activer les raccourcis clavier
- Alt + ⇧ Shift + l Se connecter/Se déconnecter
- Alt + ⇧ Shift + a Ouvrir une tâche
- Alt + ⇧ Shift + m Mes recherches
- Alt + ⇧ Shift + t Rechercher par ID de tâche
Liste des tâches
- o Ouvrir la tâche sélectionnée
- j Déplacer le curseur vers le bas
- k Déplacer le curseur vers le haut
Détails de la tâche
- n Tâche suivante
- p Tâche précédente
- Alt + ⇧ Shift + e ↵ Enter Modifier cette tâche
- Alt + ⇧ Shift + w Surveiller
- Alt + ⇧ Shift + y Fermer cette tâche
Édition de la tâche
- Alt + ⇧ Shift + s Enregistrer la tâche
Bonjour
Vous parlez du lien généré après les clics (type de ZIP, taille, etc) et qui est envoyé par mail ?
Ou vous demandez à ce que tout le processus soit intégré à Freebox OS/Freebox Files ?
Cdt
Bonjour, uniquement des liens, pas nécessaire pour le process entier je pense.
Bonjour
Alors désolé de vous contredir, j'ai essayé de faire fonctionner dans l'état en décortiquant le process et la conclusion c'est qu'il faut 100% du processus une fois les liens Takeout.
Je m'explique, le lien ne pointe pas sur le/les fichiers à télécharger, mais il pointe sur une chaine de fichiers javascripts (le premier fait 850 KO, presque 1 mega !!) qui en fonction de la session authentifiée fini par donner accès au fichier
Chez moi le cURL qui download en directe à la tête suivante (désolé pour les XXXX et les xxxxxxxxxxxxxxxxxx, c'est un forum public):
Aujourd'hui, j'arrive bien à ajouter le download avec l'API mais pas les HEADERS NECESSAIRES :
le cURL qui fonctionne pour l'ajout c'est :
Le résulta de mon script de download est le suivant :
Et le fichier téléchargé est en fait une page HTML avec pas mal de JS dont 1 JS contenant un gros JSON pour les country … car en fait ce qui est download c'est la page de login Google Workspace ! et non le fichier Google Takeout
voici le fichier ouvert dans firefox (link valable 30j):
https://transfert.free.fr/RYrf3qK
Voici ce que dit la DOC de l'API (et d'après mes tests FreeboxOS utilise également l'API) :
Donc comme vous le voyez, l'API et FreeboxOS ne permettent pas de configurer les headers nécessaires à la communication avec les serveurs de GOOGLE (ils font bien c… d'ailleurs ces Google ou autre Microsoft, Dropbox , etc avec le javascript partout ! Une url sèche après auth type SAML de la session Windows ou Linux complète serait beaucoup plus pratique… Bref, il en est autrement)
Il faudrait rajouter la possibilité de passer des 'CUSTOM HEADERS' pour passer les Headers suivants :
Donc j'insiste le mieux serait que soit géré le processus complet de la génération de liens Google Takeout puis la session connectée à Google puis l'ajout des headers manquant pour permettre le download des liens Google Takeout par la seedbox.
j'ai bien peur que ce soit très très compliqué autrement de récupérer les 19 cookies :
De même, ces ajouts s'ils sont fait sous formes de nouveaux paramètres API permettront certainement de télécharger des archives SHAREPOINT (idem, même idée, autommatiser les backup de son SHAREPOINT sur le NAS de la FREEBOX, idem pour DROPBOX ou tout autre fournisseur fou de javascript autogénérant du HTML …)
Mon point de vue perso : franchement pour pomper un fichier sur un FTP en explicite TLS (niveau de sécurité fort), il n'y a pas besoin de tout ce code JS ni de générer du HTML dynamiquement ou de recheck 300 fois l'authentification, la session , etc… Google et les autres abusent, car au final, on fait la même chose, à savoir pomper un fichier sur un serveur en TLS et de manière authentifiée !
En vous remerciant d'avance
Cordialement
nbanba
Bonjour
Alors en faisant un truc bien cochon (ci après…), j'arrive à passer une bonne partie des headers à la seedbox (la seedbox utilise la libcurl ?):
mais ça ne fonctionne toujours pas malgré tous les headers de policy de sécurité correctement reçu visiblement d'après les logs de la seedbox :
2024-11-02 18:03:12 dbg: Content-Security-Policy: require-trusted-types-for 'script';report-uri /_/AccountsSigninPassiveLoginHttp/cspreport 2024-11-02 18:03:12 dbg: Content-Security-Policy: script-src 'report-sample' 'nonce-jkxxxxxxxxxxxxxxxxxxAQ' 'unsafe-inline';object-src 'none';base-uri 'self';report-uri /_/AccountsSigninPassiveLoginHttp/cspreport;worker-src 'self'
2024-11-02 18:03:12 dbg: Cache-Control: no-cache, no-store, max-age=0, must-revalidate
2024-11-02 18:03:12 dbg: Alt-Svc: h3=:443; ma=2592000,h3-29=:443; ma=2592000 2024-11-02 18:03:12 dbg: Accept-CH: Sec-CH-UA-Arch, Sec-CH-UA-Bitness, Sec-CH-UA-Full-Version, Sec-CH-UA-Full-Version-List, Sec-CH-UA-Model, Sec-CH-UA-WoW64, Sec-CH-UA-Form-Factors, Sec-CH-UA-Platform, Sec-CH-UA-Platform-Version
2024-11-02 18:03:12 dbg: X-Frame-Options: DENY
Donc il doit y avoir encore un HEADER de mal interprété
⇒ Ce serait bien d'ajouter ce type de fonctions (au moins des champs fait pour passer les HEADERS, et comme pour les COOKIES, il fait pouvoir en passer beaucoup (plus de 25 parfois…)
En vous remerciant d'avance
Cordialement
nbanba