W pliku manifestu rozszerzenia przeglądarki, sekcja "permissions"
określa, do jakich zasobów i funkcji przeglądarki rozszerzenie potrzebuje dostępu.
Dodaj uprawnienia które są niezbędne, aby rozszerzenie mogło wykonywać określone zadania, takie jak dostęp do aktywnej karty, przechowywanie danych, czy wykonywanie skryptów na stronach internetowych.
Oto lista wszystkich dostępnych uprawnień, które można zadeklarować w pliku manifestu rozszerzenia przeglądarki:
activeTab
- Dostęp do bieżącej karty po kliknięciu ikony rozszerzenia.
alarms
- Umożliwia tworzenie, modyfikowanie i usuwanie alarmów.
background
- Pozwala na uruchamianie skryptów w tle.
bookmarks
- Dostęp do zakładek przeglądarki.
browsingData
- Umożliwia czyszczenie danych przeglądania.
clipboardRead
- Dostęp do odczytu zawartości schowka.
clipboardWrite
- Umożliwia zapisywanie danych do schowka.
contentSettings
- Zarządzanie ustawieniami treści.
contextMenus
- Tworzenie niestandardowych menu kontekstowych.
cookies
- Dostęp do plików cookie stron internetowych.
debugger
- Umożliwia debugowanie stron internetowych.
declarativeContent
- Umożliwia deklaratywne modyfikowanie zawartości stron.
declarativeNetRequest
- Umożliwia deklaratywne filtrowanie i modyfikowanie żądań sieciowych.
downloads
- Zarządzanie pobieraniem plików.
enterprise.deviceAttributes
- Dostęp do atrybutów urządzenia w środowisku korporacyjnym.
enterprise.hardwarePlatform
- Dostęp do informacji o platformie sprzętowej w środowisku korporacyjnym.
enterprise.networkingAttributes
- Dostęp do atrybutów sieciowych w środowisku korporacyjnym.
enterprise.platformKeys
- Dostęp do kluczy platformy w środowisku korporacyjnym.
experimental
- Dostęp do eksperymentalnych API.
fileBrowserHandler
- Umożliwia rozszerzeniom obsługę plików w menedżerze plików.
fileSystemProvider
- Umożliwia rozszerzeniom dostarczanie systemów plików.
fontSettings
- Zarządzanie ustawieniami czcionek.
gcm
- Umożliwia korzystanie z Google Cloud Messaging.
geolocation
- Dostęp do lokalizacji urządzenia.
history
- Dostęp do historii przeglądania.
identity
- Umożliwia uwierzytelnianie użytkowników.
idle
- Umożliwia wykrywanie stanu bezczynności użytkownika.
management
- Zarządzanie innymi rozszerzeniami.
nativeMessaging
- Umożliwia komunikację z natywnymi aplikacjami.
notifications
- Umożliwia wyświetlanie powiadomień.
pageCapture
- Umożliwia przechwytywanie zawartości stron.
platformKeys
- Dostęp do kluczy platformy.
power
- Umożliwia zarządzanie stanem zasilania urządzenia.
printerProvider
- Umożliwia rozszerzeniom dostarczanie drukarek.
privacy
- Zarządzanie ustawieniami prywatności.
proxy
- Umożliwia zarządzanie ustawieniami proxy.
scripting
- Umożliwia wstrzykiwanie skryptów do stron internetowych.
search
- Umożliwia zarządzanie wyszukiwarkami.
sessions
- Dostęp do sesji przeglądarki.
storage
- Umożliwia przechowywanie danych w lokalnej pamięci przeglądarki.
system.cpu
- Dostęp do informacji o procesorze urządzenia.
system.display
- Dostęp do informacji o wyświetlaczach urządzenia.
system.memory
- Dostęp do informacji o pamięci urządzenia.
system.storage
- Dostęp do informacji o pamięci masowej urządzenia.
tabCapture
- Umożliwia przechwytywanie zawartości kart.
tabGroups
- Zarządzanie grupami kart.
tabs
- Dostęp do kart przeglądarki.
topSites
- Dostęp do najczęściej odwiedzanych stron.
tts
- Umożliwia korzystanie z funkcji tekst-na-mowę.
ttsEngine
- Umożliwia tworzenie silników tekst-na-mowę.
unlimitedStorage
- Umożliwia nieograniczone przechowywanie danych.
vpnProvider
- Umożliwia rozszerzeniom dostarczanie usług VPN.
wallpaper
- Umożliwia zarządzanie tapetami.
webNavigation
- Umożliwia monitorowanie i kontrolowanie nawigacji w przeglądarce.
webRequest
- Umożliwia monitorowanie i modyfikowanie żądań sieciowych.
webRequestBlocking
- Umożliwia blokowanie żądań sieciowych.
Uprawnienia wprowadź miedzy nawiasy syntax [] oraz w cudzysłowiach "" odzielone przecinkami, tworząc tabelę uprawnień, kod, tak jak poniżej
"permissions": ["Uprawnienie1 ", "Uprawnienie2 ", "Uprawnienie3 ", "Uprawnienie4 "]
kod umieść w dowolnym miejscu w pliku manifest.json
Przykład sekcji "permissions"
w pliku manifest.json
:
{
"manifest_version": 3,
"name": "Przykładowe Rozszerzenie",
"version": "1.0",
"permissions": [
"activeTab",
"storage",
"scripting",
"tabs",
"webNavigation",
"cookies"
],
"background": {
"service_worker": "background.js"
},
"action": {
"default_popup": "popup.html",
"default_icon": {
"16": "icon.png",
"48": "icon.png",
"128": "icon.png"
}
}
}
Jakie uprawnienia dodać?
Wybór uprawnień zależy od funkcji, które chcesz zaimplementować w swoim rozszerzeniu. Na przykład:
- Jeśli chcesz, aby rozszerzenie mogło przechowywać dane, dodaj
"storage"
. - Jeśli potrzebujesz dostępu do bieżącej karty, dodaj
"activeTab"
. - Jeśli chcesz wstrzykiwać skrypty do stron, dodaj
"scripting"
.
Pamiętaj, aby dodawać tylko te uprawnienia, które są niezbędne do działania Twojego rozszerzenia, aby zminimalizować potencjalne ryzyko bezpieczeństwa i zwiększyć zaufanie użytkowników12.
Komentarze
Prześlij komentarz