Ochrona prywatności użytkowników

Użytkownicy nie będą instalować rozszerzenia, jeśli narusza to ich prywatność lub prosi o przyznanie dodatkowych uprawnień których wydaje się potrzebować. Prośby o przyznanie uprawnień powinny być zrozumiałe dla użytkowników i ograniczać się do niezbędne do zaimplementowania rozszerzenia. Rozszerzenia, które zbierają lub przesyłają jakiekolwiek dane użytkownika muszą być zgodne z polityką prywatności danych użytkownika .

Chroń i szanuj użytkowników rozszerzeń, stosując te środki ostrożności w celu zapewnienia bezpieczeństwa ich tożsamości. Pamiętaj: im mniej danych ma dostęp rozszerzenie, tym mniej danych może wycieknąć przypadkowo.

Zmniejsz liczbę wymaganych uprawnień

Interfejsy API, do których ma dostęp rozszerzenie, są określone w polu uprawnień w manifestu. tym większa szansa na przechwycenie informacji. Tylko interfejsy API rozszerzenie zależy od tego, czy musi być wymienione, a rozszerzenie powinno być rozważane w przypadku mniej inwazyjnych reklam. . Im mniej uprawnień żąda rozszerzenie, tym mniej ostrzeżeń o uprawnieniach wyświetli użytkownika. Użytkownicy z większym prawdopodobieństwem zainstalują rozszerzenie z ograniczonymi ostrzeżeniami.

Rozszerzenia nie powinny być „na przyszłość” dostępu do danych użytkownika przez proszenie o uprawnienia, których użytkownik nie robi obecnie potrzebne, ale być może zostaną wprowadzone w przyszłości. Uwzględniaj nowe uprawnienia przy aktualizacjach rozszerzeń i rozważ ustawienie ich jako opcjonalnych.

activeTab

Rozszerzenia, które używają uprawnień hosta do wstrzykiwania skryptów, mogą często zastąpić activeTab. Uprawnienie activeTab przyzna rozszerzeniu tymczasowy dostęp do aktualnie aktywnej karty. tylko wtedy, gdy użytkownik wywoła rozszerzenie. Dostęp jest ucinany, gdy użytkownik opuści zamyka bieżącą kartę. Jest alternatywą dla wielu zastosowań <all_urls>.

{
  "name": "Very Secure Extension",
  "version": "1.0",
  "description": "Example of a Secure Extension",
  "permissions": ["activeTab"],
  "manifest_version": 2
}

Uprawnienie ActiveTab nie wyświetla żadnych ostrzeżeń podczas instalacji.

Opcjonalne uprawnienia

Możesz umożliwić użytkownikom wybór potrzebnych funkcji i uprawnień przez dodanie rozszerzenia opcjonalne uprawnienia. Jeśli jakaś funkcja nie jest niezbędna do realizowania głównej funkcjonalności rozszerzenia, ustaw go jako opcjonalny i przenieś interfejs API lub domenę do pola optional_permissions.

{
  "name": "Very Secure Extension",
  ...
  "optional_permissions": [ "tabs", "https://www.google.com/" ],
  ...
}

Dodanie uprawnień opcjonalnych pozwala rozszerzeniu wyjaśnić, dlaczego potrzebuje konkretnych uprawnień. gdy użytkownik włączy daną funkcję. Rozszerzenie umożliwia użytkownikowi włączenie funkcje zabezpieczeń.

Zrzut ekranu z wyskakującym okienkiem z prośbą o przyznanie uprawnień

Kliknięcie OK! spowoduje wywołanie poniższego zdarzenia w skrypcie w tle.

document.querySelector('#button').addEventListener('click', function(event) {
  // Permissions must be requested from inside a user gesture, like a button's
  // click handler.
  chrome.permissions.request({
    permissions: ['tabs'],
    origins: ['https://www.google.com/']
  }, function(granted) {
    // The callback argument will be true if the user granted the permissions.
    if (granted) {
      // doSomething();
    } else {
      // doSomethingElse();
    }
  });
});

Użytkownik zostanie wtedy proszony o podanie tego żądania.

Zrzut ekranu przedstawiający prośbę o opcjonalne uprawnienia.

Opcjonalne uprawnienia można też wdrożyć w ramach aktualizacji rozszerzenia. Jeśli to zrobisz, nowy plik dostępnej dla użytkowników bez wyłączania rozszerzenia, co może się zdarzyć w przypadku aktualizacji do nowego wymagane uprawnienia.

Ograniczanie i zabezpieczanie danych użytkownika

Żądaj tylko minimalnej liczby danych użytkownika, której wymaga rozszerzenie. Im mniej informacji prosi o dane rozszerzenie użytkownika oznacza mniejszą ekspozycję rozszerzenia, jeśli zostanie ono przejęte.

Ze wszystkimi danymi użytkownika należy postępować ostrożnie. Przechowuj i pobieraj dane na bezpiecznym serwerze za pomocą zarejestrowanej domeny. Zawsze używaj protokołu HTTPS do nawiązywania połączenia i unikania przechowywania poufnych danych użytkowników w kliencie bo pamięć rozszerzenia nie jest szyfrowana.