הצהרה על הרשאות

כדי להשתמש ברוב ממשקי ה-API של התוספים ובתכונות שלהם, צריך להצהיר על הכוונה של התוסף בשדות ההרשאות של קובץ המניפסט. תוספים יכולים לבקש את קטגוריות ההרשאות הבאות, שמוגדרות באמצעות מפתחות המניפסט המתאימים:

"permissions"
מכיל פריטים מרשימה של מחרוזות מוכרות. שינויים עלולים להפעיל אזהרה.
"optional_permissions"
ההרשאה ניתנת על ידי המשתמש בזמן הריצה, ולא בזמן ההתקנה.
"content_scripts.matches"
כולל דפוסי התאמה שמאפשרים לסקריפטים של תוכן להוסיף קוד למארח אחד או יותר. שינויים עלולים להפעיל אזהרה.
"host_permissions"
כולל דפוסי התאמה אחד או יותר שמעניקים גישה למארח אחד או יותר. שינויים עלולים להפעיל אזהרה.
"optional_host_permissions"
ההרשאה ניתנת על ידי המשתמש בזמן הריצה, ולא בזמן ההתקנה.

ההרשאות עוזרות להגביל את הנזק אם תוכנה זדונית פוגעת בתוסף. חלק מהאזהרות לגבי הרשאות מוצגות למשתמשים כדי לקבל את הסכמתם לפני ההתקנה או בזמן ההפעלה, כפי שמפורט במאמר הרשאות עם אזהרות.

כדאי להשתמש בהרשאות אופציונליות בכל מקום שבו הפונקציונליות של התוסף מאפשרת זאת, כדי לספק למשתמשים שליטה מושכלת בגישה למשאבים ולנתונים.

אם API מסוים דורש הרשאה, במסמכים שלו מוסבר איך להצהיר עליה. דוגמה מופיעה במאמר בנושא Storage API.

מניפסט

דוגמה לקטע ההרשאות בקובץ manifest:

manifest.json:

{
  "name": "Permissions Extension",
  ...
  "permissions": [
    "activeTab",
    "contextMenus",
    "storage"
  ],
  "optional_permissions": [
    "topSites",
  ],
  "host_permissions": [
    "https://www.developer.chrome.com/*"
  ],
  "optional_host_permissions":[
    "https://*/*",
    "http://*/*"
  ],
  ...
  "manifest_version": 3
}

הרשאות המארח

הרשאות מארח מאפשרות לתוספים ליצור אינטראקציה עם תבניות התאמה של כתובות URL. חלק מממשקי ה-API של Chrome דורשים הרשאות מארח בנוסף להרשאות ה-API שלהם, שמפורטות בכל דף הפניה. הנה כמה דוגמאות:

במקרים מיוחדים מסוימים, לא נדרשות הרשאות לאתר המארח. למשל:

  • שימוש ב-chrome.tabs API כדי לגשת לכרטיסיות ולשנות אותן, כולל גישה לכתובת ה-URL של הכרטיסייה אם יש לכם הרשאה מסוג tabs.
  • אינטראקציה עם הדפדפן באמצעות chrome.debugger API.
  • מאפשרת הזרקה של סקריפט תוכן שמוצהר במניפסט.

הרשאות עם אזהרות

כשתוסף מבקש כמה הרשאות, ורבות מהן מציגות אזהרות בהתקנה, המשתמש יראה רשימה של אזהרות, כמו בדוגמה הבאה:

אזהרות לגבי הרשאות של תוספים במהלך ההתקנה

המשתמשים נוטים יותר לבטוח בתוסף עם אזהרות מוגבלות או כשההרשאות מוסברות להם. כדי להימנע מאזהרות מטרידות, כדאי להטמיע הרשאות אופציונליות או API חלש יותר. שיטות מומלצות בנושא אזהרות מפורטות במאמר הנחיות בנושא אזהרות לגבי הרשאות. אזהרות ספציפיות מפורטות עם ההרשאות שהן חלות עליהן ברשימת ההפניות הרשאות.

הוספה או שינוי של דפוסי התאמה בשדות "host_permissions" ו-"content_scripts.matches" בקובץ המניפסט יפעילו גם אזהרה. מידע נוסף זמין במאמר בנושא עדכון הרשאות.

מתן גישה

אם התוסף צריך לפעול בכתובות URL מסוג file:// או במצב פרטי, המשתמשים צריכים לתת לתוסף גישה בדף הפרטים שלו. הוראות לפתיחת דף הפרטים מופיעות בקטע ניהול התוספים.

אישור גישה לכתובות URL של קבצים ולדפים במצב פרטי

  1. לוחצים לחיצה ימנית על סמל התוסף ב-Chrome.
  2. בוחרים באפשרות ניהול התוסף.

    תפריט ההקשר של התוסף
    תפריט התוספים
  3. גוללים למטה כדי לאפשר גישה לכתובות URL של קבצים או למצב פרטי.

    אישור כתובות URL של קבצים ומצב פרטי בדף פרטי התוסף
    הגישה לכתובות URL של קבצים ולמצב פרטי מופעלת.

כדי לזהות אם המשתמש אישר את הגישה, אפשר להתקשר אל extension.isAllowedIncognitoAccess() או אל extension.isAllowedFileSchemeAccess().