Fin du support direct de Facebook : exigences de sécurité
Après nos récentes difficultés liées aux changements de l’API de Google, nous rencontrons une situation similaire avec Facebook. Nous avons passé avec succès les audits annuels de sécurité de Facebook pendant des années. Pourtant, ses exigences pour 2025 imposent de nouvelles contraintes incompatibles avec les environnements de travail distribués modernes et, franchement, contre-productives pour la sécurité réelle. Nous ne pouvons donc plus maintenir l’application OAuth Facebook de Transloadit, même si nos clients peuvent toujours utiliser l’intégration avec leurs propres informations d’accès.
Que s’est-il passé ?
Chaque année, Facebook réalise des audits de sécurité des applications qui s’intègrent à sa plateforme. Nous avons toujours réussi ces audits en démontrant la solidité de nos pratiques de sécurité. Cette année, cependant, Facebook a ajouté une exigence qui témoigne d’une incompréhension fondamentale du fonctionnement des entreprises technologiques modernes : Facebook exige désormais que nous installions un antivirus sur tous les postes de travail et que nous distribuions les mises à jour des définitions depuis un serveur central.
Pourquoi cette exigence ne nous convient pas (comme à de nombreuses entreprises modernes)
Tout d’abord, il y a la réalité d’une équipe distribuée. Transloadit travaille avec une équipe de professionnels indépendants qualifiés qui utilisent exclusivement leurs propres appareils, dans notre cas des MacBook. Il s’agit de machines personnelles, et non de matériel appartenant à l’entreprise. Installer un logiciel de gestion centralisée sur des appareils personnels violerait les lois relatives à la vie privée dans plusieurs juridictions, nécessiterait un niveau de contrôle des appareils inapproprié dans une relation avec des prestataires et créerait des vulnérabilités en nous accordant un accès de niveau root à des machines personnelles.
La récente exigence de Facebook va également à l’encontre des architectures de sécurité modernes. Notre modèle de sécurité suit les principes de confiance zéro. Autrement dit, nous supposons que tous les terminaux peuvent être compromis et appliquons les mesures de sécurité au niveau des serveurs et des API, là où les données circulent réellement. Cette approche est plus sûre que le recours à un antivirus sur les terminaux, qui peut donner un faux sentiment de sécurité.
Enfin, il faut tenir compte des particularités de chaque plateforme, ce que Facebook ne fait pas avec sa nouvelle exigence. Tous les membres de notre équipe utilisent macOS, qui intègre XProtect, le système antivirus d’Apple mis à jour automatiquement. Installer en plus un antivirus tiers disposant d’un accès au noyau diminuerait en réalité la sécurité en introduisant des surfaces d’attaque supplémentaires.
Les mesures que nous appliquons à la place
Nous ne déployons pas de manière centralisée les mises à jour antivirus sur les appareils macOS personnels des prestataires indépendants. Nous assurons la sécurité grâce aux mesures suivantes :
-
Obligations contractuelles : tous les membres de notre équipe signent des accords exigeant :
- L’activation des mises à jour automatiques du système d’exploitation et des logiciels critiques
- Le chiffrement intégral du disque
- L’authentification à deux facteurs sur tous les services critiques
- Une formation régulière à la sécurité
-
Protection côté serveur : là où les données de Facebook circulent réellement, nous assurons :
- L’analyse des fichiers entrants avec ClamAV
- Les mises à jour quotidiennes automatisées du système d’exploitation et de sécurité
- Une journalisation et une surveillance complètes
- Des audits de sécurité réalisés par des tiers
- Des tests d’intrusion en continu
-
Isolation de l’infrastructure : les systèmes de production sont complètement isolés des postes de travail des développeurs, avec un accès contrôlé par des clés SSH et une liste d’adresses IP autorisées.
Des échanges épuisants
Malgré les nombreuses preuves de nos pratiques de sécurité et nos explications détaillées sur les raisons pour lesquelles la gestion centralisée des terminaux est à la fois impossible et inutile pour notre modèle reposant sur des prestataires distribués, le processus d’évaluation de Facebook est resté inflexible. Nous avons fourni :
- Des captures d’écran de nos systèmes de mise à jour automatique des serveurs
- Des journaux attestant des mises à jour de sécurité quotidiennes en production
- Des preuves du fonctionnement de ClamAV sur tous les serveurs traitant les données des utilisateurs
- La documentation de nos exigences contractuelles en matière de sécurité
- La preuve que nous avons effectué plus de 52 000 analyses antivirus en 48 heures
Pourtant, les réponses continuaient d’exiger « une console centralisée depuis laquelle les mises à jour de macOS sont déployées sur tous les appareils des utilisateurs ». Cette exigence est franchement absurde et révèle surtout un décalage fondamental entre l’informatique des entreprises traditionnelles et le fonctionnement réel des équipes distribuées modernes.
Prendre une décision difficile
Après des mois d’échanges, il est devenu évident que le processus d’évaluation de la sécurité de Facebook est conçu pour les entreprises traditionnelles qui possèdent leur matériel et disposent de services informatiques centralisés. Il ne tient pas compte des modes de travail distribués modernes, des équipes de prestataires, des architectures de sécurité fondées sur la confiance zéro ni des réalités juridiques de la gestion des appareils personnels.
Poursuivre ce combat demanderait des ressources que nous n’avons tout simplement pas en tant que petite entreprise qui se consacre à créer d’excellentes expériences de téléversement de fichiers. Surtout, nous conformer à ces exigences réduirait en réalité notre niveau de sécurité en nous obligeant à installer des logiciels inutiles disposant d’un accès étendu au système sur des machines qui ne nous appartiennent pas.
Conséquences pour nos clients
Nous sommes profondément désolés des désagréments occasionnés. Nous savons que beaucoup d’entre vous dépendent de l’intégration de Facebook pour leurs applications, et que de tels changements incompatibles avec l’existant sont frustrants. Nous avons fait de notre mieux pour maintenir cette intégration, mais nous refusons de mettre en scène une sécurité de façade qui exposerait les appareils personnels des membres de notre équipe à des risques. Nous espérons que Facebook finira par revoir sa position, mais nous ne nous faisons pas d’illusions.
Pour continuer : utiliser vos propres informations d’accès
Uppy propose toujours un plugin Facebook. Pour l’utiliser avec votre propre application Facebook, vous devez :
- Créer votre propre application Facebook sur developers.facebook.com
- Satisfaire aux exigences de Meta concernant l’examen des applications et l’accès en production pour les utilisateurs visés
- Configurer Uppy pour utiliser vos informations d’accès avec l’une des options suivantes :
- Votre propre serveur Companion
- Le serveur Companion hébergé par Transloadit avec des informations d’accès personnalisées
Configurer des informations d’accès personnalisées avec Transloadit
Pour le serveur Companion hébergé par Transloadit, créez un jeu d’informations d’accès pour un service tiers dans votre Workspace, sélectionnez « Companion OAuth » et Facebook, puis enregistrez-y l’identifiant et le secret de votre application Facebook. Conservez le secret de l’application Facebook et votre Auth Secret Transloadit sur le serveur, hors du code du navigateur. Transmettez votre Auth Key Transloadit et le nom du jeu d’informations d’accès à votre instance Uppy existante :
import Facebook from '@uppy/facebook'
import { COMPANION_ALLOWED_HOSTS, COMPANION_URL } from '@uppy/transloadit'
uppy.use(Facebook, {
companionUrl: COMPANION_URL,
companionAllowedHosts: COMPANION_ALLOWED_HOSTS,
companionKeysParams: {
key: 'YOUR_TRANSLOADIT_AUTH_KEY',
credentialsName: 'my_facebook_credentials',
},
})
Pour des instructions détaillées, consultez notre guide d’utilisation des informations d’accès personnalisées.
Une tendance plus générale
Cette situation ne concerne pas seulement Facebook ou Google. Elle traduit un décalage croissant entre la manière dont les grandes plateformes abordent la sécurité et le fonctionnement réel des entreprises modernes. Elles partent du principe que chaque entreprise possède ses appareils, une gestion informatique centralisée, une infrastructure Windows et des relations salariales traditionnelles.
Cette vision est clairement déconnectée de la réalité, et de plus en plus. De nombreuses entreprises parmi les plus innovantes aujourd’hui travaillent avec des équipes distribuées, des prestataires et des politiques BYOD. Les modèles de sécurité doivent évoluer pour reconnaître que la gestion centralisée des terminaux n’est pas toujours possible, ni même souhaitable.
Perspectives
Nous continuerons à prendre en charge le plugin Facebook dans Uppy et à aider les clients qui souhaitent maintenir leurs propres intégrations. Nous explorons également d’autres approches qui pourraient éviter ces exigences contraignantes, à l’image de nos plugins Google Picker.
Nous restons déterminés à offrir la meilleure expérience possible de téléversement de fichiers, même si l’intégration de services tiers devient de plus en plus difficile. Merci pour votre compréhension et votre soutien continu.
Vous avez d’autres questions ou besoin d’aide pour migrer ? Notre équipe d’assistance est prête à vous aider à configurer vos propres informations d’accès Facebook ou à explorer d’autres solutions. Contactez-nous et nous vous accompagnerons avec plaisir dans cette démarche.
