You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
doc: revise privacy policy with detailed data handling practices (#85)
* Revise privacy policy with detailed data handling practices
Expanded the privacy policy to include detailed sections on data collection, storage, and user rights.
* Update doc/PRIVACY-POLICY.md
* Update doc/PRIVACY-POLICY.md
* Refactor build script and enhance privacy policy
- Refactored the build process for browser extensions by creating a dedicated `buildForBrowser` function.
- Added support for options page in both Chrome and Firefox manifests.
- Introduced new options page for user preferences, including a checkbox for displaying screenshots in the popup.
- Updated privacy policy documentation in both French and English to clarify data handling practices and permissions.
Les présentes Conditions Générales d’Utilisation (CGU) régissent l’utilisation de l’extension navigateur **Ecoindex Browser** (ci-après « l’Extension »).
6
+
7
+
L’Extension permet d’afficher le score Ecoindex d’une page web en interrogeant un service backend dédié ([Ecoindex BFF](https://github.com/cnumr/EcoIndex_BFF) which is a Ecoindex official API middleware).
8
+
9
+
---
10
+
11
+
## 2. Fonctionnement du service
12
+
13
+
Lorsque l’Extension est activée sur une page web :
14
+
15
+
- L’URL de la page courante est transmise au service backend Ecoindex BFF.
16
+
- Le service vérifie si un score Ecoindex existe déjà :
17
+
- en base de données, ou
18
+
- dans un cache existant.
19
+
20
+
- Si un score existe, il est retourné immédiatement.
21
+
- Si aucun score n’est disponible :
22
+
- un calcul peut être effectué,
23
+
- le résultat est ensuite stocké de manière sécurisée.
24
+
25
+
### Stockage des résultats
26
+
27
+
Les résultats sont stockés sous forme chiffrée selon le principe suivant :
28
+
29
+
- Clé : `ecoindex_sha1(url)`
30
+
- Valeur : score Ecoindex associé
31
+
32
+
Aucune URL en clair n’est stockée dans ce mécanisme de cache.
33
+
34
+
### 2.1 Permissions du navigateur (transparence)
35
+
36
+
Le fichier manifeste de l’Extension peut contenir les déclarations suivantes, utilisées uniquement dans les conditions décrites ici :
37
+
38
+
```json
39
+
{
40
+
"permissions": ["activeTab", "storage"],
41
+
"host_permissions": ["<all_urls>"]
42
+
}
43
+
```
44
+
45
+
-**`activeTab`** — Accorde un accès **temporaire** à l’onglet actif lorsque vous utilisez l’Extension (par exemple à l’ouverture de la popup). Elle sert à lire **l’URL de la page affichée** afin d’interroger le backend Ecoindex pour le résultat correspondant. Elle **ne** permet pas de lire en continu tous les onglets en arrière-plan.
46
+
47
+
-**`storage`** — Sert à conserver **localement sur votre appareil** des données d’Extension : préférences et état d’interface de courte durée (par exemple le badge de la barre d’outils lié à l’onglet courant). Ce stockage n’est pas utilisé pour constituer un historique de navigation exploité par des tiers.
48
+
49
+
-**`host_permissions` : `<all_urls>`** — Indique que l’Extension peut **s’exécuter dans le contexte des pages web sur les sites que vous visitez**. Ce schéma est en particulier nécessaire lorsque l’Extension injecte des **scripts de contenu** sur toutes les pages (par exemple pour partager du code avec la popup) ou lorsque le navigateur associe ce type d’injection à des autorisations d’hôtes larges. **Il ne s’agit pas d’un dispositif de suivi comportemental** : l’objectif reste d’obtenir l’URL de la page pour la requête Ecoindex décrite ci-dessus. Lorsque les politiques des magasins d’extensions le permettent, l’**accès réseau** au backend est limité à l’API officielle Ecoindex (`https://bff.ecoindex.fr/`) plutôt qu’à des sites arbitraires.
50
+
51
+
Certaines versions peuvent aussi demander la permission **`tabs`** pour que la partie « arrière-plan » réagisse aux changements d’onglet ou de chargement de page, toujours dans le même objectif (par exemple mettre à jour le badge pour l’onglet actif).
52
+
53
+
---
54
+
55
+
## 3. Données collectées
56
+
57
+
### 3.1 Adresse IP
58
+
59
+
- L’adresse IP de l’utilisateur peut être collectée **uniquement dans les logs techniques** du service backend.
60
+
- Ces logs sont utilisés exclusivement à des fins de sécurité, de maintenance et de diagnostic.
61
+
62
+
### 3.2 URL des pages visitées
63
+
64
+
- L’URL de la page visitée est transmise au service afin de récupérer ou calculer le score Ecoindex.
65
+
- Cette URL peut être utilisée pour générer une clé de cache (hash SHA1).
66
+
67
+
---
68
+
69
+
## 4. Confidentialité et protection des données
70
+
71
+
L’Extension respecte les principes suivants :
72
+
73
+
-**Aucun croisement des données** :
74
+
- Les adresses IP et les URL ne sont pas corrélées ni stockées conjointement.
75
+
76
+
-**Absence de tracking** :
77
+
- Les données ne sont pas utilisées à des fins d’analyse comportementale.
78
+
- Aucun mécanisme de suivi utilisateur n’est implémenté.
79
+
80
+
-**Aucune exploitation commerciale** :
81
+
- Les données ne sont pas utilisées à des fins marketing ou publicitaires.
82
+
83
+
-**Aucune transmission à des tiers** :
84
+
- Les données collectées ne sont en aucun cas transmises à des services tiers.
85
+
86
+
---
87
+
88
+
## 5. Sécurité
89
+
90
+
- Les données de cache sont stockées de manière chiffrée.
91
+
- Le système repose sur des mécanismes de hachage irréversible pour limiter l’exposition des URL.
92
+
93
+
---
94
+
95
+
## 6. Acceptation des conditions
96
+
97
+
L’installation et l’activation de l’Extension impliquent l’acceptation pleine et entière des présentes CGU, notamment en matière de traitement des données et de confidentialité.
98
+
99
+
---
100
+
101
+
## 7. Évolution des CGU
102
+
103
+
Ces conditions peuvent être mises à jour à tout moment. Il appartient à l’utilisateur de les consulter régulièrement.
104
+
105
+
---
106
+
107
+
## 8. Contact
108
+
109
+
Pour toute question relative à ces conditions ou au traitement des données, vous pouvez contacter les mainteneurs du projet.
This extension collects the following information:
3
+
## 1. Purpose
4
4
5
-
- Your current IP address is stored in the API logs.
6
-
- Your user agent is stored in the API logs.
5
+
These Terms of Use govern the use of the **Ecoindex Browser Extension** (hereinafter “the Extension”).
7
6
8
-
No other information is collected and no personal information is stored.
7
+
The Extension provides the Ecoindex score of a web page by querying a dedicated backend service ([Ecoindex BFF](https://github.com/cnumr/EcoIndex_BFF) which is a Ecoindex official API middleware).
8
+
9
+
---
10
+
11
+
## 2. Service Operation
12
+
13
+
When the Extension is active on a web page:
14
+
15
+
- The current page URL is sent to the Ecoindex BFF backend service.
16
+
- The service checks whether an Ecoindex score already exists:
17
+
- in the database, or
18
+
- in cache.
19
+
20
+
- If a score exists, it is returned immediately.
21
+
- If no score is available:
22
+
- it may be computed,
23
+
- and then securely stored.
24
+
25
+
### Result Storage
26
+
27
+
Results are stored in an encrypted manner using the following scheme:
28
+
29
+
- Key: `ecoindex_sha1(url)`
30
+
- Value: associated Ecoindex data result
31
+
32
+
No plain-text URL is stored in this caching mechanism.
33
+
34
+
### 2.1 Browser permissions (transparency)
35
+
36
+
The extension manifest may include the following declarations and use them only as described here:
37
+
38
+
```json
39
+
{
40
+
"permissions": ["activeTab", "storage"],
41
+
"host_permissions": ["<all_urls>"]
42
+
}
43
+
```
44
+
45
+
-**`activeTab`** — Grants **temporary** access to the active tab when you interact with the extension (for example when you open the toolbar popup). The extension uses this to read the **URL of the page you are viewing** so it can request the corresponding Ecoindex result from the backend. It does **not** give ongoing read access to all tabs in the background.
46
+
47
+
-**`storage`** — Used to keep **local data on your device**: extension preferences and short-lived UI state (for example toolbar badge information tied to the current tab). This storage is not used to build a browsing history for third parties.
48
+
49
+
-**`host_permissions`: `<all_urls>`** — Declares that the extension may **run in the context of web pages on any site** you visit. This pattern is required when the extension uses **content scripts** injected on all pages (for example to share helpers with the popup) or when the browser ties injection to broad host permissions. **This is not used for behavioural tracking**: the goal remains to obtain the current page URL for the Ecoindex query described above. Where store policies allow, **network** access to the backend is kept to the official Ecoindex API host (`https://bff.ecoindex.fr/`) rather than arbitrary sites.
50
+
51
+
Some builds may also request **`tabs`** so the background logic can react when you switch tabs or load a page, still in line with the same purpose (updating the badge for the active tab).
52
+
53
+
---
54
+
55
+
## 3. Data Collection
56
+
57
+
### 3.1 IP Address
58
+
59
+
- The user’s IP address may be collected **only within backend technical logs**.
60
+
- These logs are strictly used for security, maintenance, and diagnostic purposes.
61
+
62
+
### 3.2 Visited URLs
63
+
64
+
- The visited page URL is transmitted to retrieve or compute the Ecoindex score.
65
+
- This URL may be used to generate a cache key (SHA1 hash).
66
+
67
+
---
68
+
69
+
## 4. Privacy and Data Protection
70
+
71
+
The Extension follows strict privacy principles:
72
+
73
+
-**No data correlation**:
74
+
- IP addresses and visited URLs are not linked or stored together.
75
+
76
+
-**No tracking**:
77
+
- No behavioral analysis is performed.
78
+
- No user tracking mechanisms are implemented.
79
+
80
+
-**No commercial use**:
81
+
- Data is not used for marketing or advertising purposes.
82
+
83
+
-**No third-party sharing**:
84
+
- Collected data is never shared with third-party services.
85
+
86
+
---
87
+
88
+
## 5. Security
89
+
90
+
- Cached data is stored in an encrypted format.
91
+
- Irreversible hashing mechanisms are used to minimize URL exposure.
92
+
93
+
---
94
+
95
+
## 6. Acceptance of Terms
96
+
97
+
By installing and activating the Extension, users fully accept these Terms of Use, including the privacy policy described herein.
98
+
99
+
---
100
+
101
+
## 7. Changes to Terms
102
+
103
+
These Terms may be updated at any time. Users are encouraged to review them regularly.
104
+
105
+
---
106
+
107
+
## 8. Contact
108
+
109
+
For any questions regarding these Terms or data handling, please contact the project maintainers.
0 commit comments