_permission_features.json revision 0de6073388f4e2780db8536178b129cd8f6ab386
1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// This features file defines permissions for extension APIs implemented
6// under src/chrome.
7// See extensions/common/features/* to understand this file, in particular
8// feature.h, simple_feature.h, and base_feature_provider.h.
9
10// To add a new whitelisted ID, SHA-1 it and force it to uppercase. In Bash:
11//
12// $ echo -n "aaaabbbbccccddddeeeeffffgggghhhh" | \
13// sha1sum | tr '[:lower:]' '[:upper:]'
14// 9A0417016F345C934A1A88F55CA17C05014EEEBA  -
15//
16// Google employees: please update http://go/chrome-api-whitelist to map
17// hashes back to ids.
18
19{
20  "accessibilityFeatures.modify": {
21    "channel": "dev",
22    "extension_types": ["extension", "platform_app"]
23  },
24  "accessibilityFeatures.read": {
25    "channel": "dev",
26    "extension_types": ["extension", "platform_app"]
27  },
28  "accessibilityPrivate": {
29    "channel": "stable",
30    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
31    "whitelist": [ "2FCBCE08B34CCA1728A85F1EFBD9A34DD2558B2E" ]
32  },
33  "activeTab": {
34    "channel": "stable",
35    "extension_types": ["extension", "legacy_packaged_app"],
36    "min_manifest_version": 2
37  },
38  "activityLogPrivate": {
39    "channel": "stable",
40    "extension_types": ["extension", "platform_app"],
41    "whitelist": [
42      "EE17C698905F7F2E6DDC87C9C30F11E164C829F4",  // Watchdog release
43      "90113DA9516526D24DAF156C629CC41C049E8882",  // Watchdog testing
44      "A9EFD71948A480C87D3B7C758FD938215F445F00",   // Obsolete
45      "AE27D69DBE571F4B1694F05C89B710C646792231", // Published ADT.
46      "5107DE9024C329EEA9C9A72D94C16723790C6422"  // Apps Developer Tool Dev.
47    ]
48  },
49  "adview": {
50    "channel": "dev",
51    "extension_types": ["platform_app"]
52  },
53  "alarms": {
54    "channel": "stable",
55    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
56    "min_manifest_version": 2
57  },
58  "app.window.alwaysOnTop": {
59    "channel": "stable",
60    "extension_types": ["platform_app"]
61  },
62  "app.window.fullscreen": {
63    "channel": "stable",
64    "extension_types": ["platform_app"]
65  },
66  "app.window.fullscreen.overrideEsc": {
67    "channel": "stable",
68    "extension_types": ["platform_app"]
69  },
70  "app.window.shape": {
71    "channel": "beta",
72    "extension_types": ["platform_app"]
73  },
74  "audio": [
75    {
76      "channel": "dev",
77      "extension_types": ["platform_app"]
78    },
79    {
80      "channel": "stable",
81      "extension_types": ["platform_app"],
82      "whitelist": [
83        "8C3741E3AF0B93B6E8E0DDD499BB0B74839EA578",
84        "E703483CEF33DEC18B4B6DD84B5C776FB9182BDB",
85        "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE",  // http://crbug.com/335729
86        "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80",  // http://crbug.com/335729
87        "307E96539209F95A1A8740C713E6998A73657D96"   // http://crbug.com/335729
88      ]
89    }
90  ],
91  "autotestPrivate": {
92    "channel": "stable",
93    "extension_types": ["extension", "legacy_packaged_app"],
94    "location": "component"
95  },
96  "audioCapture": [
97    {
98      "channel": "stable",
99      "extension_types": ["platform_app"]
100    },
101    {
102      "channel": "stable",
103      "extension_types": ["extension"],
104      "whitelist": [
105        // http://crbug.com/292856
106        "3F50C3A83839D9C76334BCE81CDEC06174F266AF",
107        "09FDCB5851B8F3378DB630D06E316076E89C95A6",
108        "39BE69F11F68E4EED080DA3DC2394F7885B7AFF9",
109        "FF78670081967CE21DB86A04AD94A0498F01E20A"
110      ]
111    }
112  ],
113  "background": [
114    {
115      "channel": "stable",
116      "extension_types": [
117        "extension", "legacy_packaged_app", "hosted_app"
118      ]
119    },
120    {
121      "channel": "stable",
122      "extension_types": ["platform_app"],
123      "whitelist": [
124        "5B5DA6D054D10DB917AF7D9EAE3C56044D1B0B03",  // http://crbug.com/286542
125        "2843C1E82A9B6C6FB49308FDDF4E157B6B44BC2B",  // http://crbug.com/286542
126        "3F596D221126DCDFD115CFAA2E5A3141806358AD",  // http://crbug.com/286542
127        "F7FA7ABC1ECB89BA8EE6656847EFABBF43BB9BCA",  // http://crbug.com/320952
128        "4B1D0E19C6C43C008C44A8278C8B5BFE15ABEB3C",  // http://crbug.com/320952
129        "4FE45FA56EF6A25FDE8C302C44045CA9CE8A605A"   // http://crbug.com/320952
130      ]
131    }
132  ],
133  "bluetoothPrivate": {
134    "channel": "stable",
135    "extension_types": ["platform_app"],
136    "location": "component"
137  },
138  "bookmarkManagerPrivate": {
139    "channel": "stable",
140    "extension_types": ["extension", "legacy_packaged_app"],
141    "whitelist": [
142      "CB2E4E7174A398FCB3AFA6840500C2E1D22DA7B2", // Bookmark Manager
143      "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2", // http://crbug.com/312900
144      "D57DE394F36DC1C3220E7604C575D29C51A6C495", // http://crbug.com/319444
145      "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9"  // http://crbug.com/371562
146    ]
147  },
148  "bookmarks": {
149    "channel": "stable",
150    "extension_types": ["extension", "legacy_packaged_app"]
151  },
152  "brailleDisplayPrivate": {
153    "channel": "stable",
154    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
155    "location": "component"
156  },
157  "browser": {
158    "channel": "dev",
159    "extension_types": ["platform_app"]
160  },
161  "browsingData": {
162    "channel": "stable",
163    "extension_types": ["extension", "legacy_packaged_app"]
164  },
165  "cast": {
166    "channel": "stable",
167    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
168    "whitelist": [
169      "63ED55E43214C211F82122ED56407FF1A807F2A3",  // Dev
170      "FA01E0B81978950F2BC5A50512FD769725F57510",  // Beta
171      "B11A93E7E5B541F8010245EBDE2C74647D6C14B9",  // Canary
172      "F155646B5D1CA545F7E1E4E20D573DFDD44C2540",  // Google Cast Beta
173      "16CA7A47AAE4BE49B1E75A6B960C3875E945B264"   // Google Cast Stable
174    ]
175  },
176  "cast.streaming": [{
177    "channel": "dev",
178    "extension_types": ["extension"]
179  }, {
180    "channel": "stable",
181    "extension_types": ["extension"],
182    "whitelist": [
183      "63ED55E43214C211F82122ED56407FF1A807F2A3",  // Dev
184      "FA01E0B81978950F2BC5A50512FD769725F57510",  // Beta
185      "B11A93E7E5B541F8010245EBDE2C74647D6C14B9",  // Canary
186      "F155646B5D1CA545F7E1E4E20D573DFDD44C2540",  // Google Cast Beta
187      "16CA7A47AAE4BE49B1E75A6B960C3875E945B264"   // Google Cast Stable
188    ]
189  }],
190  "chromePrivate": {
191    "channel": "stable",
192    "extension_types": ["extension", "legacy_packaged_app"],
193    "whitelist": [
194      "2462D64ACB971A7E708757159C2B17761D4FF54A",  // Citrix Receiver
195      "3010EF507AFEF487EEA9CDE2930EC94867C60936",  // Citrix Receiver Beta
196      "ABAABC5F49E022A76CBB12972A53B58354C04AC6"   // Citrix Receiver Dev
197    ]
198  },
199  "chromeosInfoPrivate": {
200    "channel": "stable",
201    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
202    "whitelist": [
203      "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80",  // http://crbug.com/293683
204      "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE",  // http://crbug.com/293683
205      "8C3741E3AF0B93B6E8E0DDD499BB0B74839EA578",  // http://crbug.com/234235
206      "E703483CEF33DEC18B4B6DD84B5C776FB9182BDB",  // http://crbug.com/234235
207      "307E96539209F95A1A8740C713E6998A73657D96",  // http://crbug.com/329690
208      "A291B26E088FA6BA53FFD72F0916F06EBA7C585A",  // http://crbug.com/341258
209      "D7986543275120831B39EF28D1327552FC343960",  // http://crbug.com/329088
210      // http://crbug.com/343701
211      // TODO(tbarzic): Remove the following six when http://crbug.com/346572
212      // gets fixed.
213      "63ED55E43214C211F82122ED56407FF1A807F2A3",  // Dev
214      "FA01E0B81978950F2BC5A50512FD769725F57510",  // Beta
215      "B11A93E7E5B541F8010245EBDE2C74647D6C14B9",  // Canary
216      "F155646B5D1CA545F7E1E4E20D573DFDD44C2540",  // Google Cast Beta
217      "16CA7A47AAE4BE49B1E75A6B960C3875E945B264"   // Google Cast Stable
218    ]
219  },
220  "clipboardRead": {
221    "channel": "stable",
222    "extension_types": [
223      "extension", "legacy_packaged_app", "hosted_app", "platform_app"
224    ]
225  },
226  "clipboardWrite": {
227    "channel": "stable",
228    "extension_types": [
229      "extension", "legacy_packaged_app", "hosted_app", "platform_app"
230    ]
231  },
232  "cloudPrintPrivate": {
233    "channel": "stable",
234    "extension_types": ["extension", "legacy_packaged_app", "hosted_app"],
235    // CloudPrint
236    "whitelist": ["99060B01DE911EB85FD630C8BA6320C9186CA3AB"]
237  },
238  "commandLinePrivate": {
239    "channel": "stable",
240    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
241    "location": "component"
242  },
243  "contentSettings": {
244    "channel": "stable",
245    "extension_types": ["extension", "legacy_packaged_app"]
246  },
247  "contextMenus": {
248    "channel": "stable",
249    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
250  },
251  "cookies": {
252    "channel": "stable",
253    "extension_types": ["extension", "legacy_packaged_app"]
254  },
255  "diagnostics": [
256    {
257      "channel": "dev",
258      "extension_types": ["platform_app"]
259    },
260    {
261      "channel": "stable",
262      "extension_types": ["platform_app"],
263      "whitelist": [
264        "7AE714FFD394E073F0294CFA134C9F91DB5FBAA4",  // CCD Development
265        "C7DA3A55C2355F994D3FDDAD120B426A0DF63843",  // CCD Testing
266        "75E3CFFFC530582C583E4690EF97C70B9C8423B7"   // CCD Release
267      ]
268    }
269  ],
270  "debugger": [
271    {
272      "channel": "stable",
273      "extension_types": ["extension", "legacy_packaged_app"]
274    },
275    {
276      "channel": "stable",
277      "extension_types": ["platform_app"],
278      "whitelist": [
279        "AE27D69DBE571F4B1694F05C89B710C646792231", // Published ADT.
280        // TODO(grv): clean up once Apps developer tool is published.
281        "5107DE9024C329EEA9C9A72D94C16723790C6422"  // Apps Developer Tool.
282      ]
283    }
284  ],
285  "developerPrivate": {
286    "channel": "stable",
287    "extension_types": ["platform_app"],
288    "whitelist": [
289        "AE27D69DBE571F4B1694F05C89B710C646792231", // Published ADT.
290        // TODO(grv): clean up once Apps developer tool is published.
291        "5107DE9024C329EEA9C9A72D94C16723790C6422",  // Apps Developer Tool.
292        "8C0B1873FFFB65E4D0F4D772879F7304CEF125C2",  // Apps Editor old.
293        // TODO(grv) : clean up once after publish.
294        "FA0501B579070BB9CBD4FCAEC8CB0EDF22BA2F04", // Apps Editor published.
295        "4A4EA121622FCA3D78ED2AB534197F43D7189EE0", // Spark nightly build
296        "9FDE6E7F06FCFA11D9A05041C7FF6D8AE662F5D1"  // Spark release
297    ]
298  },
299  "devtools": {
300    "channel": "stable",
301    "extension_types": ["extension", "legacy_packaged_app"]
302  },
303  "declarativeContent": {
304    "channel": "stable",
305    "extension_types": ["extension"]
306  },
307  "declarativeWebRequest": [
308    {
309      "channel": "beta",
310      "extension_types": ["extension", "legacy_packaged_app"]
311    }
312  ],
313  "desktopCapture": {
314    "channel": "stable",
315    "extension_types": ["extension", "platform_app"]
316  },
317  "downloads": {
318    "channel": "stable",
319    "extension_types": ["extension"]
320  },
321  "downloads.open": {
322    "channel": "stable",
323    "extension_types": ["extension"]
324  },
325  "downloads.shelf": {
326    "channel": "stable",
327    "extension_types": ["extension"]
328  },
329  "dial": {
330    "channel": "stable",
331    "extension_types": ["extension"],
332    "whitelist": [
333      "63ED55E43214C211F82122ED56407FF1A807F2A3",  // Dev
334      "FA01E0B81978950F2BC5A50512FD769725F57510",  // Beta
335      "B11A93E7E5B541F8010245EBDE2C74647D6C14B9",  // Canary
336      "F155646B5D1CA545F7E1E4E20D573DFDD44C2540",  // Google Cast Beta
337      "16CA7A47AAE4BE49B1E75A6B960C3875E945B264"   // Google Cast Stable
338    ]
339  },
340  "enterprise.platformKeysPrivate": {
341    "channel": "stable",
342    "extension_types": ["extension", "legacy_packaged_app"],
343    "whitelist": [
344      "657FEC7E77355CA205B0E226586621F86B33F611",  // Dogfood
345      "5894126C625EF31852F215ED301A5FF1F9B7D026"   // Test
346    ]
347  },
348  "experimental": {
349    "channel": "stable",
350    "extension_types": [
351      "extension", "legacy_packaged_app", "hosted_app", "platform_app"
352    ]
353  },
354  "feedbackPrivate": {
355    "channel": "stable",
356    "extension_types": ["extension", "platform_app"],
357    "whitelist": [
358      "7910EAFDAF64B947E1CB31B333A9BD14CA556B6C",  // Feedback UI.
359      "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80",  // http://crbug.com/293683
360      "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE",  // http://crbug.com/293683
361      "8C3741E3AF0B93B6E8E0DDD499BB0B74839EA578",  // http://crbug.com/234235
362      "E703483CEF33DEC18B4B6DD84B5C776FB9182BDB",  // http://crbug.com/234235
363      "307E96539209F95A1A8740C713E6998A73657D96"   // http://crbug.com/329690
364    ]
365  },
366  "fileBrowserHandler": {
367    "channel": "stable",
368    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
369  },
370  "fileBrowserPrivate": {
371    "channel": "stable",
372    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
373    "location": "component"
374  },
375  "fileSystem": [{
376    "channel": "stable",
377    "extension_types": ["platform_app"]
378  },{
379    "channel": "stable",
380    "extension_types": ["extension"],
381    "whitelist": [
382      "2FC374607C2DF285634B67C64A2E356C607091C3",  // Quickoffice
383      "3727DD3E564B6055387425027AD74C58784ACC15",  // Quickoffice internal
384      "12E618C3C6E97495AAECF2AC12DEB082353241C6",  // QO component extension
385      "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2",  // http://crbug.com/312900
386      "D57DE394F36DC1C3220E7604C575D29C51A6C495",  // http://crbug.com/319444
387      "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9"   // http://crbug.com/371562
388    ]
389  }],
390  "fileSystem.directory": [{
391    "channel": "stable",
392    "extension_types": ["platform_app"]
393  }],
394  "fileSystem.retainEntries": [{
395    "channel": "stable",
396    "extension_types": ["platform_app"]
397  }],
398  "fileSystem.write": [{
399    "channel": "stable",
400    "extension_types": ["platform_app"]
401  },{
402    "channel": "stable",
403    "extension_types": ["extension"],
404    "whitelist": [
405      "2FC374607C2DF285634B67C64A2E356C607091C3",  // Quickoffice
406      "3727DD3E564B6055387425027AD74C58784ACC15",  // Quickoffice internal
407      "12E618C3C6E97495AAECF2AC12DEB082353241C6",  // QO component extension
408      "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2",  // http://crbug.com/312900
409      "D57DE394F36DC1C3220E7604C575D29C51A6C495",  // http://crbug.com/319444
410      "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9"   // http://crbug.com/371562
411    ]
412  }],
413  "fileSystemProvider": {
414    "channel": "trunk",
415    "extension_types": ["platform_app"]
416  },
417  "firstRunPrivate": {
418    "channel": "stable",
419    "extension_types": ["platform_app"],
420    "location": "component"
421  },
422  "fontSettings": {
423    "channel": "stable",
424    "extension_types": ["extension", "legacy_packaged_app"]
425  },
426  "gcm": {
427    "channel": "stable",
428    "extension_types": ["extension", "platform_app"]
429  },
430  "geolocation": {
431    "channel": "stable",
432    "extension_types": [
433      "extension", "legacy_packaged_app", "hosted_app", "platform_app"
434    ]
435  },
436  "hid": [
437    {
438      "channel": "dev",
439      "extension_types": ["platform_app"]
440    },
441    {
442      "channel": "stable",
443      "extension_types": ["extension"],
444      "whitelist": [
445        "496B6890097EB6E19809ADEADD095A8721FBB2E0",  // FIDO U2F APIs
446        "E24F1786D842E91E74C27929B0B3715A4689A473"   // CryptoToken
447      ]
448    }
449  ],
450  "history": {
451    "channel": "stable",
452    "extension_types": ["extension", "legacy_packaged_app"]
453  },
454  "hotwordPrivate": {
455    "channel": "stable",
456    "extension_types": ["extension"],
457    "whitelist": [
458      "8CE39F175D076AD6BDF7CBF418F2409558B367E3",  // hotword_helper
459      "09FDCB5851B8F3378DB630D06E316076E89C95A6"   // hotword nacl
460    ]
461  },
462  "identity": {
463    "channel": "stable",
464    "extension_types": ["extension", "platform_app"]
465  },
466  "identityPrivate": {
467    "channel": "stable",
468    "extension_types": [
469      "legacy_packaged_app", "platform_app"
470    ],
471    "location": "component"
472  },
473  "idltest": {
474    "channel": "trunk",
475    "extension_types": ["extension"]
476  },
477  "idle": {
478    "channel": "stable",
479    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
480  },
481  "infobars": {
482    "channel": "dev",
483    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
484  },
485  "input": {
486    "channel": "stable",
487    "extension_types": ["extension", "legacy_packaged_app"],
488    "inplies_full_url_access": true
489  },
490  "inputMethodPrivate": [{
491    "channel": "stable",
492    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
493    "whitelist": [
494      "2462D64ACB971A7E708757159C2B17761D4FF54A",  // Citrix Receiver
495      "3010EF507AFEF487EEA9CDE2930EC94867C60936",  // Citrix Receiver Beta
496      "ABAABC5F49E022A76CBB12972A53B58354C04AC6",  // Citrix Receiver Dev
497      "0EA6B717932AD64C469C1CCB6911457733295907",  // HTerm
498      "58B0C2968C335964D5433E89CA4D86628A0E3D4B"   // HTerm dev
499    ]
500  },{
501    "channel": "stable",
502    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
503    "location": "component"
504  }],
505  "location": [
506    {
507      "channel": "dev",
508      "extension_types": [
509        "extension", "legacy_packaged_app", "platform_app"
510      ]
511    },
512    {
513      "channel": "stable",
514      "extension_types": [
515        "extension", "legacy_packaged_app", "hosted_app", "platform_app"
516      ],
517      "location": "component"
518    }
519  ],
520  "logPrivate": {
521    "channel": "dev",
522    "extension_types": ["extension", "legacy_packaged_app"],
523    "location": "component"
524  },
525  "webcamPrivate": {
526    "channel": "dev",
527    "extension_types": ["extension", "platform_app"]
528  },
529  "management": [
530    {
531      "channel": "stable",
532      "extension_types": ["extension", "legacy_packaged_app"]
533    },
534    {
535      "channel": "stable",
536      "extension_types": ["platform_app"],
537      "whitelist": [
538        "AE27D69DBE571F4B1694F05C89B710C646792231", // Published ADT
539        // TODO(grv): clean up once Apps developer tool is published.
540        "5107DE9024C329EEA9C9A72D94C16723790C6422",  // Apps Developer Tool.
541        "8C0B1873FFFB65E4D0F4D772879F7304CEF125C2",  // Apps Editor old.
542        "FA0501B579070BB9CBD4FCAEC8CB0EDF22BA2F04",  // Apps Editor published.
543        "EE17C698905F7F2E6DDC87C9C30F11E164C829F4",  // Watchdog (Activity Log)
544        "90113DA9516526D24DAF156C629CC41C049E8882",   // Watchdog Test Version
545        "4A4EA121622FCA3D78ED2AB534197F43D7189EE0", // Spark nightly build
546        "9FDE6E7F06FCFA11D9A05041C7FF6D8AE662F5D1"  // Spark release
547      ]
548    },
549    {
550      "channel": "stable",
551      "extension_types": ["hosted_app"],
552      "whitelist": [
553        "B44D08FD98F1523ED5837D78D0A606EA9D6206E5"  // Web Store
554      ]
555    }
556  ],
557  "mediaGalleries": {
558    "channel": "stable",
559    "extension_types": [ "platform_app" ]
560  },
561  "mediaGalleries.allAutoDetected": {
562    "channel": "stable",
563    "extension_types": [ "platform_app" ]
564  },
565  "mediaGalleries.scan": {
566    "channel": "dev",
567    "extension_types": [ "platform_app" ]
568  },
569  "mediaGalleries.read": {
570    "channel": "stable",
571    "extension_types": [ "platform_app" ]
572  },
573  "mediaGalleries.copyTo": {
574    "channel": "stable",
575    "extension_types": [ "platform_app" ]
576  },
577  "mediaGalleries.delete": {
578    "channel": "stable",
579    "extension_types": [ "platform_app" ]
580  },
581  // TODO(thestig) Remove this as part of http://crbug.com/166950
582  "mediaGalleriesPrivate": {
583    "channel": "stable",
584    "extension_types": [ "platform_app" ],
585    "whitelist": [
586      "4B1D0E19C6C43C008C44A8278C8B5BFE15ABEB3C",
587      "F7FA7ABC1ECB89BA8EE6656847EFABBF43BB9BCA",
588      "4FE45FA56EF6A25FDE8C302C44045CA9CE8A605A"
589    ]
590  },
591  "mediaPlayerPrivate": {
592    "channel": "stable",
593    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
594    "location": "component"
595  },
596  "metricsPrivate": {
597    "channel": "stable",
598    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
599    "whitelist": [
600      // The file manager and Google Now are component extensions, and they can
601      // currently use whitelisted interfaces without being on the corresponding
602      // whitelist.
603      // Adding it to this whitelist documents their dependency, however, and
604      // also doesn't hurt anything.
605      "A948368FC53BE437A55FEB414106E207925482F5",  // File manager
606      "2FC374607C2DF285634B67C64A2E356C607091C3",  // Quickoffice
607      "3727DD3E564B6055387425027AD74C58784ACC15",  // Quickoffice internal
608      "12E618C3C6E97495AAECF2AC12DEB082353241C6",  // QO component extension
609      "3727DD3E564B6055387425027AD74C58784ACC15",  // Editor
610      "C41AD9DCD670210295614257EF8C9945AD68D86E",  // Google Now
611      "6EEEA7775E79C735E4BA1F24DBB191BDACB1262C",  // RU-NTP
612      "7AE714FFD394E073F0294CFA134C9F91DB5FBAA4",  // CCD Development
613      "C7DA3A55C2355F994D3FDDAD120B426A0DF63843",  // CCD Testing
614      "75E3CFFFC530582C583E4690EF97C70B9C8423B7",  // CCD Release
615      "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2",  // http://crbug.com/312900.
616      "D57DE394F36DC1C3220E7604C575D29C51A6C495",  // http://crbug.com/319444.
617      "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9",  // http://crbug.com/371562.
618      "06BE211D5F014BAB34BC22D9DDA09C63A81D828E",  // Official XKB virtual kbd
619      "CFBF7EE448FA48960FFDA7CEB30F7A21B26AA981",  // Official m17n virtual kbd
620      "B9EF10DDFEA11EF77873CC5009809E5037FC4C7A"   // Google input tools
621    ]
622  },
623  "mdns": {
624    "channel": "stable",
625    "extension_types": ["extension"],
626    "whitelist": [
627      "63ED55E43214C211F82122ED56407FF1A807F2A3",  // Dev
628      "FA01E0B81978950F2BC5A50512FD769725F57510",  // Beta
629      "B11A93E7E5B541F8010245EBDE2C74647D6C14B9",  // Canary
630      "F155646B5D1CA545F7E1E4E20D573DFDD44C2540",  // Google Cast Beta
631      "16CA7A47AAE4BE49B1E75A6B960C3875E945B264"   // Google Cast Stable
632    ]
633  },
634  "musicManagerPrivate": {
635    "channel": "stable",
636    "extension_types": ["platform_app"],
637    "whitelist": [
638      "4B1D0E19C6C43C008C44A8278C8B5BFE15ABEB3C", // Music Manager
639      "B8F61FD1B25DE03706DBB8906A73261E4DBB992A", // Test
640      "F7FA7ABC1ECB89BA8EE6656847EFABBF43BB9BCA",
641      "4FE45FA56EF6A25FDE8C302C44045CA9CE8A605A"
642    ]
643  },
644  "nativeMessaging": {
645    "channel": "stable",
646    "extension_types": [
647      "extension", "legacy_packaged_app", "platform_app"
648    ]
649  },
650  "networkingPrivate": {
651    "channel": "stable",
652    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
653    "whitelist": [
654      "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80",  // http://crbug.com/293683
655      "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE",  // http://crbug.com/293683
656      "8C3741E3AF0B93B6E8E0DDD499BB0B74839EA578",  // http://crbug.com/234235
657      "E703483CEF33DEC18B4B6DD84B5C776FB9182BDB",  // http://crbug.com/234235
658      "307E96539209F95A1A8740C713E6998A73657D96",  // http://crbug.com/329690
659      "63ED55E43214C211F82122ED56407FF1A807F2A3",  // Dev
660      "FA01E0B81978950F2BC5A50512FD769725F57510",  // Beta
661      "B11A93E7E5B541F8010245EBDE2C74647D6C14B9",  // Canary
662      "F155646B5D1CA545F7E1E4E20D573DFDD44C2540",  // Google Cast Beta
663      "16CA7A47AAE4BE49B1E75A6B960C3875E945B264",  // Google Cast Stable
664      "7AE714FFD394E073F0294CFA134C9F91DB5FBAA4",  // CCD Development
665      "C7DA3A55C2355F994D3FDDAD120B426A0DF63843",  // CCD Testing
666      "75E3CFFFC530582C583E4690EF97C70B9C8423B7"   // CCD Release
667    ]
668  },
669  "notifications": {
670    // The chrome.notifications functionality listed in notifications.idl is
671    // available only to extension/platform_app types. The implementation of
672    // that functionality enforces that restriction in
673    // NotificationsApiFunction::IsNotificationsApiAvailable(). This is more
674    // complicated than other namespaces because we are sharing the
675    // notifications permission with WebKit/Blink notifications.
676    "channel": "stable",
677    "extension_types": [
678      "extension", "legacy_packaged_app", "hosted_app", "platform_app"
679    ]
680  },
681  "echoPrivate": {
682    "channel": "stable",
683    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
684    "location": "component"
685  },
686  "pageCapture": {
687    "channel": "stable",
688    "extension_types": ["extension", "legacy_packaged_app"]
689  },
690  "pointerLock": {
691    "channel": "stable",
692    "extension_types": ["platform_app"]
693  },
694  "plugin": {
695    "channel": "stable",
696    "extension_types": ["extension", "legacy_packaged_app"]
697  },
698  "power": {
699    "channel": "stable",
700    "extension_types": [
701      "extension", "legacy_packaged_app", "platform_app"
702    ]
703  },
704  "preferencesPrivate":  {
705    "channel": "dev",
706    "extension_types": [
707      "extension"
708    ],
709    "whitelist": [
710      "C41AD9DCD670210295614257EF8C9945AD68D86E",  // Google Now
711      "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2",  // http://crbug.com/312900
712      "D57DE394F36DC1C3220E7604C575D29C51A6C495",  // http://crbug.com/319444
713      "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9"   // http://crbug.com/371562
714    ]
715  },
716  "principalsPrivate": {
717    "channel": "stable",
718    "extension_types": ["extension"],
719    "whitelist": [
720      "2779FA8B45841D61A37207CCFAC9CB393964FE5B"  // Login Proxy (prototype)
721    ]
722  },
723  "privacy": {
724    "channel": "stable",
725    "extension_types": ["extension", "legacy_packaged_app"]
726  },
727  "processes": [{
728    "channel": "dev",
729    "extension_types": ["extension"]
730  }, {
731    "channel": "beta",
732    "extension_types": ["extension"],
733    "whitelist": [
734      "7D7A4B147FE39908A5AF13F85E38989C54BBE41C",  // http://crbug.com/370700
735      "0EEDFC0EED87871237213F34EBC7B4982A195C95"   // http://crbug.com/370700
736    ]
737  }, {
738    "channel": "stable",
739    "extension_types": ["extension"],
740    "whitelist": [
741      "DF84F03F9B960409CCDE0D895B9650EBE81C0A8E",  // Hangout Services
742      "80B9DC58E5210749F052F5B4DB239C50CF72AEB6",  // Hangouts test extension
743      "7D7A4B147FE39908A5AF13F85E38989C54BBE41C",  // http://crbug.com/370700
744      "0EEDFC0EED87871237213F34EBC7B4982A195C95"   // http://crbug.com/370700
745    ]
746  }],
747  "proxy": {
748    "channel": "stable",
749    "extension_types": ["extension", "legacy_packaged_app"]
750  },
751  "pushMessaging": {
752    "channel": "stable",
753    "extension_types": ["extension", "platform_app"]
754  },
755  "imageWriterPrivate": {
756    "channel": "stable",
757    "extension_types": ["platform_app"],
758    "whitelist": [
759      "A291B26E088FA6BA53FFD72F0916F06EBA7C585A", // http://crbug.com/329088
760      "D7986543275120831B39EF28D1327552FC343960"  // http://crbug.com/329088
761    ]
762  },
763  "readingListPrivate": {
764    "channel": "stable",
765    "extension_types": ["extension"],
766    "whitelist": [
767      "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2", // http://crbug.com/312900
768      "D57DE394F36DC1C3220E7604C575D29C51A6C495", // http://crbug.com/319444
769      "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9"  // http://crbug.com/371562
770    ]
771  },
772  "rtcPrivate": {
773    "channel": "stable",
774    "extension_types": ["extension", "legacy_packaged_app"],
775    "whitelist": [
776      "53041A2FA309EECED01FFC751E7399186E860B2C",  // Google Talk prod
777      "A74A4D44C7CFCD8844830E6140C8D763E12DD8F3",  // Google Talk beta
778      "E7E2461CE072DF036CF9592740196159E2D7C089",  // Google Talk alpha
779      "312745D9BF916161191143F6490085EEA0434997"   // Google Talk debug
780    ]
781  },
782  "screenlockPrivate": {
783    "channel": "stable",
784    "extension_types": ["platform_app"],
785    "whitelist": [
786      "lkegkdgachcnekllcdfkijonogckdnjo",  // API test
787      "190C131D270994E7330E9A3CD48224061CB10E2D",  // dogfood 1
788      "7FDDD1C0CB0052596657FDEC92841D509DC8D404",  // dogfood 2
789      "E13990DC5440B6E270503DA27A35762F423725C3"   // dogfood 3
790    ]
791  },
792  "screensaver": {
793    "channel": "stable",
794    "extension_types": ["legacy_packaged_app", "hosted_app", "platform_app"]
795  },
796  "serial": {
797    "channel": "stable",
798    "extension_types": ["platform_app"]
799  },
800  "sessions": {
801    "channel": "dev",
802    "extension_types": ["extension", "legacy_packaged_app"]
803  },
804  "signedInDevices": {
805    "channel": "dev",
806    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
807  },
808  "streamsPrivate": {
809    "channel": "stable",
810    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
811    "whitelist": [
812      "787000072C6FBB934AF5A42275CDE73FC977D995",  // browser_tests
813      "2FC374607C2DF285634B67C64A2E356C607091C3",  // QuickOffice
814      "5D3851BEFF680AB6D954B76678EFCCE834465C23",  // QuickOffice Dev
815      "12E618C3C6E97495AAECF2AC12DEB082353241C6",  // QO component extension
816      "3727DD3E564B6055387425027AD74C58784ACC15",  // Editor
817      "CBCC42ABED43A4B58FE3810E62AFFA010EB0349F"   // PDF
818    ]
819  },
820  "syncFileSystem": {
821    "channel": "stable",
822    "extension_types": ["platform_app"]
823  },
824  "system.cpu": {
825    "channel": "stable",
826    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
827  },
828  "system.memory": {
829    "channel": "stable",
830    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
831  },
832  "system.network": {
833    "channel": "stable",
834    "extension_types": ["platform_app"]
835  },
836  "system.storage": {
837    "channel": "stable",
838    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
839  },
840  "system.display": {
841    "channel": "stable",
842    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
843  },
844  "systemPrivate": {
845    "channel": "stable",
846    "extension_types": ["extension", "legacy_packaged_app"],
847    "location": "component"
848  },
849  "tabs": [
850    {
851      "channel": "stable",
852      "extension_types": ["extension", "legacy_packaged_app"]
853    },
854    {
855      "channel": "stable",
856      "extension_types": ["platform_app"],
857      "whitelist": [
858        "AE27D69DBE571F4B1694F05C89B710C646792231", // Published ADT.
859        // TODO(grv): clean up once Apps developer tool is published.
860        "5107DE9024C329EEA9C9A72D94C16723790C6422"  // Apps Developer Tool.
861      ]
862    }
863  ],
864  "tabCapture": {
865    "channel": "stable",
866    "extension_types": ["extension", "legacy_packaged_app"]
867  },
868  "terminalPrivate": {
869    "channel": "stable",
870    "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
871    "whitelist": [
872      "0EA6B717932AD64C469C1CCB6911457733295907",  // HTerm
873      "58B0C2968C335964D5433E89CA4D86628A0E3D4B"   // HTerm dev
874    ]
875  },
876  "topSites": {
877    "channel": "stable",
878    "extension_types": ["extension", "legacy_packaged_app"]
879  },
880  "tts": {
881    "channel": "stable",
882    "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
883  },
884  "ttsEngine": {
885    "channel": "stable",
886    "extension_types": ["extension", "legacy_packaged_app"]
887  },
888  "unlimitedStorage": {
889    "channel": "stable",
890    "extension_types": [
891      "extension", "legacy_packaged_app", "hosted_app", "platform_app"
892    ]
893  },
894  "videoCapture": [
895    {
896      "channel": "stable",
897      "extension_types": ["platform_app"]
898    },
899    {
900      "channel": "stable",
901      "extension_types": ["extension"],
902      "whitelist": [
903        // http://crbug.com/292856
904        "3F50C3A83839D9C76334BCE81CDEC06174F266AF",
905        "09FDCB5851B8F3378DB630D06E316076E89C95A6",
906        "A434B90223C3C52F2B69DB494736B63C612C774D"
907      ]
908    }
909  ],
910  "virtualKeyboardPrivate": {
911    "channel": "stable",
912    "whitelist": [
913      "3F50C3A83839D9C76334BCE81CDEC06174F266AF",  // System-level virtual kbd
914      "06BE211D5F014BAB34BC22D9DDA09C63A81D828E",  // Official XKB virtual kbd
915      "CFBF7EE448FA48960FFDA7CEB30F7A21B26AA981",  // Official m17n virtual kbd
916      "F94EE6AB36D6C6588670B2B01EB65212D9C64E33",  // Public XKB virtual kbd
917      "3E03D9B67FDD31B2438D1CF5070573415DCB3CBA"  // Public m17n virtual kbd
918    ],
919    "extension_types": ["extension"]
920  },
921  "wallpaper": {
922    "channel": "dev",
923    "extension_types": ["platform_app"]
924  },
925  "wallpaperPrivate": {
926    "channel": "stable",
927    "extension_types": ["platform_app"],
928    "location": "component"
929  },
930  "webNavigation": {
931    "channel": "stable",
932    "extension_types": ["extension", "legacy_packaged_app"]
933  },
934  "webrtcAudioPrivate": {
935    "channel": "stable",
936    "extension_types": ["extension"],
937    "whitelist": [
938      // Hangouts test extension
939      "80B9DC58E5210749F052F5B4DB239C50CF72AEB6",
940      // Hangout Services component extension.
941      "DF84F03F9B960409CCDE0D895B9650EBE81C0A8E",
942      // Extension used for API test.
943      "ADFA45434ABA2F1A4647E673F53FF37F8F6047A3"
944    ]
945  },
946  "webrtcLoggingPrivate": {
947    "channel": "stable",
948    "extension_types": ["extension"],
949    "whitelist": [
950      // Hangouts test extension
951      "80B9DC58E5210749F052F5B4DB239C50CF72AEB6",
952      // Hangout Services component extension.
953      "DF84F03F9B960409CCDE0D895B9650EBE81C0A8E"
954    ]
955  },
956  "webstorePrivate": {
957    "channel": "stable",
958    "extension_types": ["extension", "legacy_packaged_app", "hosted_app"],
959    "whitelist": [
960      "B44D08FD98F1523ED5837D78D0A606EA9D6206E5",  // Web Store
961      "2653F6F6C39BC6EEBD36A09AFB92A19782FF7EB4",  // Enterprise Web Store
962      "2779FA8B45841D61A37207CCFAC9CB393964FE5B"   // Login Proxy (prototype)
963    ]
964  },
965  "webRequest": {
966    "channel": "stable",
967    "extension_types": ["extension", "legacy_packaged_app"]
968  },
969  "webRequestBlocking": {
970    "channel": "stable",
971    "extension_types": ["extension", "legacy_packaged_app"]
972  },
973  "webview": [{
974    "channel": "stable",
975    "extension_types": ["platform_app"]
976  }, {
977    // General support for webview in component extensions still in progress.
978    // Only allowed for whitelisted extensions until all the caveats are
979    // addressed. Tracked in crbug/285151.
980    "channel": "stable",
981    "extension_types": ["extension"],
982    "location": "component",
983    "whitelist": [
984      "D519188F86D9ACCEE0412007B227D9936EB9676B"  // GAIA Component Extension
985    ]
986  }]
987}
988