Aller au contenu principal
Retour au blog

Comment utiliser son gestionnaire de mots de passe dans CommunityGlows ?

par CommunityGlows Team
password-managerswebviewandroidwindows

Read this article in English

CommunityGlows gère plusieurs profils et isole les sessions par profil et par réseau, sur environ 60 sites et plateformes du catalogue intégré. Une question arrive donc très vite : peut-on laisser chaque utilisateur employer son gestionnaire de mots de passe habituel — Google Password Manager, 1Password, Bitwarden, Dashlane, Proton Pass ou un autre — directement dans l’application ?

Les réseaux sont affichés dans des écrans web intégrés à CommunityGlows. Les développeurs appellent ces écrans des WebViews : ils ressemblent à des onglets de navigateur, mais ils fonctionnent à l’intérieur de l’application. Cette différence explique pourquoi un gestionnaire qui fonctionne parfaitement dans Chrome ou Edge ne fonctionne pas forcément de la même manière dans CommunityGlows.

La réponse courte : Autofill Android est la voie visée, indépendante du fournisseur ; Windows n’est couvert que partiellement et de façon expérimentale ; il n’existe pas d’API universelle de lecture des coffres.

Statut : la prise en charge de Bitwarden est expérimentale dans l’application Windows : CommunityGlows peut importer l’archive officielle de l’extension Bitwarden pour Chromium dans WebView2. Le remplissage est fourni par Bitwarden et n’est pas garanti sur tous les sites. Il n’existe aucune intégration native de 1Password, LastPass ou KeePass. Consultez la page des fonctionnalités pour la liste actuelle.

Le besoin n’est pas de créer un mot de passe CommunityGlows ni de construire un nouveau coffre local. Il est de permettre au gestionnaire que l’utilisateur possède déjà de remplir les formulaires des réseaux, tout en laissant CommunityGlows gérer les profils et les sessions.

Pourquoi ne pas simplement appeler l’API du gestionnaire ?

Certains fournisseurs possèdent bien des API, mais elles ne répondent généralement pas à ce besoin.

Bitwarden propose une API publique pour administrer des organisations et une Vault Management API adossée à son CLI. Cette dernière permet de manipuler des éléments déchiffrés du coffre après authentification et déverrouillage. Elle est adaptée à l’automatisation volontaire, pas à un remplissage transparent dans une application grand public. Documentation des API Bitwarden

Les offres développeur de 1Password et les solutions de type Secrets Manager ciblent également les secrets d’entreprise, les déploiements et les processus automatisés. Elles ne constituent pas une API générique destinée à reproduire l’extension du navigateur dans une WebView.

Si CommunityGlows utilisait directement ces interfaces, l’application devrait recevoir des identifiants déchiffrés, gérer des jetons de coffre et assurer elle-même la correspondance entre domaines et comptes. Elle deviendrait alors un intermédiaire critique dans le trajet du mot de passe. Ce n’est ni nécessaire ni souhaitable.

Le bon modèle est différent :

CommunityGlows indique la page visible
        ↓
Le gestionnaire vérifie l’origine et demande le choix de l’utilisateur
        ↓
Le gestionnaire remplit directement le formulaire

Le mot de passe ne doit jamais transiter par CommunityGlows.

Android : l’interface universelle existe déjà

L’application Android est disponible, et le remplissage automatique du système est encore en cours de validation sur appareils. Le mécanisme décrit ci-dessous constitue la cible de conception.

Android fournit un framework Autofill auquel les gestionnaires compatibles peuvent participer. La WebView expose une structure virtuelle représentant ses champs HTML et leur origine. Le fournisseur sélectionné par l’utilisateur peut alors proposer les comptes correspondants près du clavier ou dans une liste système.

CommunityGlows peut rendre ses WebViews éligibles à ce mécanisme sans savoir si le fournisseur est Google Password Manager, 1Password, Bitwarden ou un autre. Il ne lit pas le coffre, ne choisit pas le compte et ne remplit pas lui-même les champs.

Cette participation doit couvrir :

  • la WebView principale de l’application ;
  • les WebViews des réseaux ;
  • les fenêtres enfants utilisées par certains parcours de connexion ;
  • uniquement Android 8 ou une version ultérieure, où le framework Autofill est disponible.

Android recommande par ailleurs Credential Manager pour les identifiants appartenant à l’application elle-même. Demander des credentials au nom de sites tiers est une capacité privilégiée destinée notamment aux navigateurs. Les fournisseurs doivent autoriser l’application appelante et Google Password Manager impose une procédure d’approbation. Appels Credential Manager privilégiés

Pour CommunityGlows, Autofill reste donc la solution officielle et indépendante du fournisseur. La compatibilité exacte doit toutefois être validée sur des appareils réels : un gestionnaire ou un réseau peut refuser un formulaire embarqué, utiliser une iframe particulière ou nécessiter un réglage supplémentaire. Si vous avez deux comptes sur un même téléphone Android, ce guide détaille la mise en place des profils.

Windows : l’écran intégré n’est pas Microsoft Edge

Sous Windows, les écrans web intégrés de CommunityGlows utilisent une technologie Microsoft appelée WebView2. Le moteur d’affichage provient de Microsoft Edge, mais l’application ne réutilise pas automatiquement le profil Edge de l’utilisateur.

WebView2 stocke ses cookies, paramètres, données de formulaire et éventuels mots de passe dans un User Data Folder dédié à chaque couple profil-réseau. Il possède une option officielle IsPasswordAutosaveEnabled, désactivée par défaut, mais l’activer créerait essentiellement un coffre WebView2 séparé. Cela ne donnerait pas accès aux identifiants déjà synchronisés dans Google Password Manager, 1Password ou Bitwarden. Données de profil WebView2

Cette isolation est un point fort de conception. Chaque couple profil-réseau dispose de son propre dossier de données, donc de ses cookies, de son stockage local et de son cache, sans mélange avec les autres profils ni les autres réseaux. C’est ce cloisonnement qui permet de garder plusieurs comptes séparés sur un même appareil. Conséquence directe : si vous utilisez Bitwarden en version expérimentale, il peut demander une connexion et un déverrouillage distincts pour chaque couple profil-réseau, y compris pour un même compte. C’est voulu. Les limites restent claires : il s’agit d’une isolation des sessions, pas d’un bac à sable du système, et deux copies d’un même réseau dans un même profil partagent la session de ce profil.

Windows ne fournit pas non plus aux applications desktop un équivalent universel d’Android Autofill pour les mots de passe web. CommunityGlows n’a aucune intégration native de 1Password, LastPass ou KeePass : ces gestionnaires ne s’utilisent qu’en dehors de l’application, par copier-coller ou avec leurs propres outils desktop :

  • 1Password Auto-Type saisit des identifiants dans la fenêtre active ;
  • Bitwarden permet notamment le glisser-déposer depuis son application desktop ;
  • d’autres fournisseurs proposent leurs propres raccourcis.

Tout outil de ce type doit saisir uniquement dans la WebView visible qui détient le focus. Une WebView préchargée ou cachée ne doit jamais recevoir des saisies destinées au réseau affiché.

Notre extension peut-elle parler à l’extension du gestionnaire ?

Ici, « notre extension » désigne l’extension navigateur, en préparation et non distribuée publiquement. Elle s’exécute dans votre profil navigateur et partage donc ses connexions : elle n’isole pas les sessions. En revanche, les applications Windows et Android isolent leurs sessions par profil et par réseau.

Chrome et les navigateurs Chromium autorisent la communication entre extensions avec runtime.sendMessage() et runtime.connect(). Mais l’extension destinataire doit écouter les messages externes et exposer volontairement une API. Elle peut également limiter les appelants autorisés avec externally_connectable. Communication entre extensions

Une extension de gestionnaire sérieuse n’expose normalement pas une commande telle que :

getCredentials("instagram.com")

Ce serait une porte d’exfiltration du coffre.

Une éventuelle intégration fournisseur devrait plutôt prendre cette forme :

fillCurrentPage({ tabId, origin })

Le gestionnaire vérifierait l’origine, afficherait son interface, laisserait l’utilisateur choisir un compte et remplirait la page directement. CommunityGlows ne recevrait jamais le mot de passe. Cette approche nécessite néanmoins une API officielle ou un partenariat avec chaque fournisseur.

Native Messaging permet à notre extension de communiquer avec l’application CommunityGlows. Le host natif déclare explicitement quels identifiants d’extension sont autorisés. Notre extension ne peut donc pas se connecter arbitrairement au host natif privé de 1Password ou d’un autre gestionnaire. Native Messaging

Techniquement, un content script CommunityGlows pourrait lire la valeur d’un champ après son remplissage. Ce serait pourtant la mauvaise architecture : l’extension deviendrait un collecteur de mots de passe. Les règles du Chrome Web Store classent explicitement les mots de passe, cookies d’authentification et données de formulaires parmi les données utilisateur sensibles. Politique relative aux données utilisateur

Peut-on charger les extensions dans l’écran intégré ?

WebView2 propose désormais AddBrowserExtensionAsync, qui installe une extension Chromium décompressée depuis un dossier local. API d’extensions WebView2

C’est une piste de prototype intéressante, mais pas encore une solution universelle prête à distribuer :

  • l’extension doit être disponible sous forme décompressée ;
  • elle doit être installée et conservée dans les profils WebView2 concernés ;
  • elle peut dépendre d’API Chromium non disponibles dans WebView2 ;
  • son popup ou sa barre d’outils ne s’intègre pas automatiquement à l’interface CommunityGlows ;
  • son canal natif peut refuser une application hôte non reconnue ;
  • la redistribution et les mises à jour nécessitent l’accord et les règles du fournisseur.

1Password permet d’ajouter certains navigateurs Windows supplémentaires lorsqu’ils sont signés ou installés dans Program Files. Cette ouverture rend un test possible, mais 1Password précise aussi qu’un navigateur ainsi autorisé reçoit un accès très sensible lorsque le coffre est déverrouillé. Navigateurs supplémentaires 1Password

Un prototype WebView2 doit donc tester le mécanisme générique avec plusieurs extensions représentatives, sans concevoir l’architecture autour d’un seul fournisseur.

Peut-on intégrer un Store et proposer toutes les extensions ?

Il faut d’abord distinguer deux magasins souvent confondus :

  • le Google Play Store distribue des applications Android, notamment les applications 1Password, Bitwarden ou Proton Pass ;
  • le Chrome Web Store et le catalogue Edge Add-ons distribuent des extensions de navigateur sur ordinateur.

Sur Android, CommunityGlows ne peut pas embarquer le Play Store ni charger des extensions Chrome dans une WebView. L’utilisateur installe son gestionnaire depuis le Play Store, puis Android Autofill sert d’interface entre ce gestionnaire et les formulaires affichés dans CommunityGlows.

Sous Windows, WebView2 ne fournit pas un Chrome Web Store intégré. Il permet à l’application hôte de charger une extension Chromium déjà décompressée depuis un dossier local, mais il ne fournit pas automatiquement le catalogue, le bouton d’installation, les mises à jour ou la compatibilité complète d’un vrai navigateur.

CommunityGlows pourrait construire son propre écran « Extensions compatibles » : télécharger ou sélectionner un package, vérifier son identité et sa version, l’installer dans le bon profil puis gérer ses mises à jour. Ce serait toutefois notre propre catalogue contrôlé, pas une intégration officielle du Chrome Web Store.

Autoriser toutes les extensions sans contrôle serait dangereux. Une extension disposant de permissions étendues pourrait observer les pages, formulaires et sessions de plusieurs comptes sociaux. CommunityGlows devrait alors assumer la vérification des packages, les mises à jour de sécurité, les licences, les permissions et les incidents liés à une extension compromise.

Le compromis raisonnable serait donc un CommunityGlows Extension Hub limité aux gestionnaires de mots de passe explicitement testés :

  • installation volontaire et consentement clair ;
  • package officiel ou sélectionné localement par l’utilisateur ;
  • identité, version, empreinte et permissions vérifiées ;
  • statut compatible, expérimental ou non testé ;
  • désactivation et suppression immédiates ;
  • aucun accès de CommunityGlows aux identifiants remplis.

Le premier prototype Windows utilise Bitwarden comme candidat technique. Dans les Paramètres, un parcours guidé ouvre la page officielle des versions Bitwarden puis demande l’archive Chromium dist-chrome-*.zip et la valeur sha256 affichée par GitHub à côté du fichier. CommunityGlows refuse l’import si la somme recalculée ne correspond pas, contrôle ensuite l’archive, l’extrait uniquement dans le dossier de données de l’application, vérifie enfin son manifeste et demande un redémarrage ; rien n’est téléversé et l’application ne lit ni le coffre ni les champs remplis. Ce test doit encore prouver que la connexion au coffre, le menu près des champs, les formulaires en plusieurs étapes et la persistance fonctionnent réellement dans la version packagée. Il ne constitue donc pas encore une promesse de compatibilité publique.

Pour proposer réellement tous les Stores, toutes les extensions et Google Password Manager sous Windows, il faudrait utiliser un véritable navigateur Chrome ou Edge plutôt que WebView2.

L’option la plus universelle sous Windows : un vrai navigateur

La seule manière d’obtenir immédiatement l’écosystème complet des gestionnaires existants est d’utiliser un véritable navigateur avec de vrais profils.

CommunityGlows pourrait rester le tableau de bord et l’orchestrateur :

  • un profil Chrome ou Edge distinct par contexte CommunityGlows ;
  • les réseaux ouverts dans le profil correspondant ;
  • les extensions choisies par l’utilisateur disponibles normalement ;
  • Google Password Manager disponible dans Chrome ;
  • les cookies et autres données de session conservés par le navigateur ;
  • notre extension chargée uniquement de relier les commandes, fenêtres et profils à CommunityGlows.

Dans ce scénario, c’est le profil du navigateur qui sépare les contextes, et non l’extension, qui se contente de relier CommunityGlows au navigateur.

Le compromis est important : les réseaux seraient affichés dans des fenêtres navigateur plutôt que dans les WebViews intégrées actuelles. Copier ensuite la session vers WebView2 serait fragile et risqué. Une connexion moderne peut dépendre de cookies HttpOnly, de localStorage, d’IndexedDB, de service workers et de protections liées au périphérique. Il est plus sûr de conserver la session dans le moteur qui l’a créée.

Pourquoi CommunityGlows ne construit pas un nouveau coffre de mots de passe

Une autre voie est techniquement possible : CommunityGlows pourrait conserver les identifiants et mots de passe dans un coffre chiffré de bout en bout. Sur un nouvel ordinateur, l’utilisateur saisirait une clé de récupération, déverrouillerait le coffre, choisirait un compte dans un popup CommunityGlows, puis remplirait le formulaire de connexion visible.

Cette solution répondrait à une partie du problème de portabilité sous Windows, mais elle transformerait aussi CommunityGlows en gestionnaire de mots de passe. Il ne s’agirait pas simplement de chiffrer quelques mots de passe. La réaliser sérieusement imposerait de gérer :

  • le chiffrement de bout en bout et les clés de récupération ;
  • le verrouillage automatique, la biométrie et le stockage sécurisé des clés sous Windows ;
  • l’ajout et la révocation des appareils ;
  • la synchronisation et les conflits ;
  • la correspondance stricte des domaines et la protection contre le phishing ;
  • le remplissage sécurisé dans les WebViews ;
  • les passkeys, le double facteur, les CAPTCHA et les changements de mots de passe ;
  • des audits de sécurité indépendants réguliers ;
  • une procédure d’intervention en cas de vulnérabilité ou de perte de clé.

Ce chantier demanderait probablement plusieurs mois de développement, puis une responsabilité de sécurité permanente. CommunityGlows finirait par reconstruire un gestionnaire de mots de passe moins mature au lieu d’améliorer son cœur de métier, l’espace de travail social, tandis que les parcours propres à chaque fournisseur empêcheraient malgré tout une connexion universelle en un clic.

Le bénéfice ne justifie pas de recréer un gestionnaire mature à l’intérieur d’un espace de travail social. CommunityGlows retient donc un modèle plus limité :

  • les mots de passe restent chez le gestionnaire choisi par l’utilisateur ;
  • les sessions actives des réseaux restent locales à l’appareil ;
  • les profils et préférences peuvent être synchronisés séparément ;
  • un export de sauvegarde chiffré permet de déplacer explicitement les sessions locales compatibles ;
  • une reconnexion peut rester nécessaire sur un nouvel appareil.

L’activation du gestionnaire de mots de passe propre à WebView2 peut être évaluée comme commodité locale sous Windows, mais elle créerait un stockage distinct pour chaque couple profil-réseau sur cet ordinateur. Elle ne fournirait pas le coffre multi-appareils que l’utilisateur possède déjà dans son gestionnaire habituel.

Les options réalistes

À ce stade, la stratégie se résume ainsi :

Plateforme Solution immédiate Piste avancée
Android Cible : Autofill système, indépendant du fournisseur ; validation sur appareils en cours Demande de statut privilégié auprès des fournisseurs
Windows dans CommunityGlows Copier-coller depuis le gestionnaire ; focus strict pour tout outil de saisie Hébergement expérimental d’extensions Chromium
Windows navigateur Gestionnaire et extensions habituels Profils navigateur orchestrés par CommunityGlows

Il n’existe pas d’API magique capable de lire tous les coffres, et ce serait une mauvaise idée d’en souhaiter une. La bonne intégration laisse le gestionnaire remplir directement la page.

Pour Android, cette abstraction existe déjà avec Autofill. Pour Windows, CommunityGlows doit choisir entre préserver l’expérience intégrée avec une compatibilité partielle, expérimenter l’hébergement d’extensions, ou utiliser de vrais profils navigateur pour obtenir la compatibilité la plus large.

La direction la plus saine reste constante : CommunityGlows gère les profils et les sessions ; le gestionnaire choisi par l’utilisateur garde les mots de passe. Le gestionnaire de mots de passe n’est qu’une pièce de la routine ; ce guide pour sécuriser les comptes de vos clients couvre les autres. Si vous vous connectez chaque jour aux comptes de plusieurs clients, voyez comment garder plusieurs comptes Instagram et LinkedIn ouverts sans se déconnecter et CommunityGlows pour les community managers.

Prêt à organiser vos réseaux ?

Découvrez les versions Windows et Android et leurs guides de prise en main.

Télécharger pour Windows ou Android

La newsletter CommunityGlows

Nouveautés, guides et conseils pour utiliser CommunityGlows. L’inscription par e-mail est en préparation ; en attendant son ouverture, retrouvez les notes des versions publiées.

Voir les versions publiées