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 manifest keys implemented under src/chrome. 6 // See extensions/common/features/* to understand this file, in particular 7 // feature.h, simple_feature.h, and base_feature_provider.h. 8 9 // To add a new whitelisted ID, SHA-1 it and force it to uppercase. In Bash: 10 // 11 // $ echo -n "aaaabbbbccccddddeeeeffffgggghhhh" | \ 12 // sha1sum | tr '[:lower:]' '[:upper:]' 13 // 9A0417016F345C934A1A88F55CA17C05014EEEBA - 14 // 15 // Google employees: please update http://go/chrome-api-whitelist to map 16 // hashes back to ids. 17 18 { 19 "about_page": { 20 "channel": "stable", 21 "extension_types": ["shared_module"] 22 }, 23 "app": { 24 "channel": "stable", 25 "extension_types": ["legacy_packaged_app", "hosted_app", "platform_app"] 26 }, 27 "app.isolation": { 28 "channel": "stable", 29 // Platform apps always have isolated storage, thus they cannot specify it 30 // via the manifest. 31 "extension_types": ["legacy_packaged_app", "hosted_app"] 32 }, 33 "app.launch": { 34 "channel": "stable", 35 "extension_types": ["legacy_packaged_app", "hosted_app"] 36 }, 37 "author": { 38 "channel": "stable", 39 "extension_types": "all" 40 }, 41 "automation": { 42 "channel": "dev", 43 "extension_types": ["extension", "legacy_packaged_app"] 44 }, 45 "bluetooth": [{ 46 // Note: The "bluetooth" manifest permission is used by the 47 // chrome.bluetooth, chrome.bluetoothSocket and chrome.bluetoothLowEnergy 48 // APIs. 49 "channel": "stable", 50 "extension_types": ["platform_app"], 51 "platforms": ["chromeos", "win", "mac"] 52 }, { 53 "channel": "stable", 54 "extension_types": ["platform_app"], 55 "platforms": ["linux"], 56 "whitelist": [ 57 "9E287A8257E58EFB13E89C86A4B75A3AC4B058D8", // unit_tests browser_tests 58 "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/396117 59 "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE", // http://crbug.com/396117 60 "E703483CEF33DEC18B4B6DD84B5C776FB9182BDB", // http://crbug.com/396117 61 "307E96539209F95A1A8740C713E6998A73657D96", // http://crbug.com/396117 62 "4F25792AF1AA7483936DE29C07806F203C7170A0", // http://crbug.com/407693 63 "BD8781D757D830FC2E85470A1B6E8A718B7EE0D9", // http://crbug.com/407693 64 "4AC2B6C63C6480D150DFDA13E4A5956EB1D0DDBB", // http://crbug.com/407693 65 "81986D4F846CEDDDB962643FA501D1780DD441BB" // http://crbug.com/407693 66 ] 67 }], 68 "browser_action": { 69 "channel": "stable", 70 "extension_types": ["extension"] 71 }, 72 "chrome_settings_overrides": { 73 "channel": "stable", 74 "extension_types": ["extension"], 75 "platforms": ["win"] 76 }, 77 "chrome_ui_overrides": [{ 78 "channel": "dev", 79 "extension_types": ["extension"] 80 }, { 81 "channel": "stable", 82 "extension_types": ["extension"], 83 "whitelist": [ 84 "CB2E4E7174A398FCB3AFA6840500C2E1D22DA7B2", // Bookmark Manager 85 "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2", // http://crbug.com/312900 86 "D57DE394F36DC1C3220E7604C575D29C51A6C495", // http://crbug.com/319444 87 "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9" // http://crbug.com/371562 88 ] 89 }], 90 "chrome_url_overrides": { 91 "channel": "stable", 92 "extension_types": ["extension", "legacy_packaged_app"] 93 }, 94 "commands": { 95 "channel": "stable", 96 "extension_types": ["extension", "platform_app"], 97 "min_manifest_version": 2 98 }, 99 "content_pack": { 100 "channel": "dev", 101 "extension_types": ["extension"] 102 }, 103 "content_scripts": { 104 "channel": "stable", 105 "extension_types": ["extension", "legacy_packaged_app"] 106 }, 107 "converted_from_user_script": { 108 "channel": "stable", 109 "extension_types": [ 110 "extension", "legacy_packaged_app", "hosted_app" 111 ], 112 "no_doc": true 113 }, 114 "current_locale": { 115 "channel": "stable", 116 "extension_types": "all" 117 }, 118 "default_locale": { 119 "channel": "stable", 120 "extension_types": "all" 121 }, 122 "devtools_page": { 123 "channel": "stable", 124 "extension_types": ["extension", "legacy_packaged_app"] 125 }, 126 "display_in_launcher": [ 127 { 128 "channel": "stable", 129 "extension_types": ["legacy_packaged_app", "platform_app", "hosted_app"], 130 "location": "component" 131 }, 132 { 133 "channel": "stable", 134 "extension_types": ["legacy_packaged_app", "platform_app"], 135 "whitelist": [ 136 "nmmhkkegccagdldgiimedpiccmgmieda" 137 ] 138 } 139 ], 140 "display_in_new_tab_page": [ 141 { 142 "channel": "stable", 143 "extension_types": ["legacy_packaged_app", "platform_app", "hosted_app"], 144 "location": "component" 145 }, 146 { 147 "channel": "stable", 148 "extension_types": ["legacy_packaged_app", "platform_app"], 149 "whitelist": [ 150 "nmmhkkegccagdldgiimedpiccmgmieda" 151 ] 152 } 153 ], 154 "export": [ 155 { 156 "channel": "stable", 157 "extension_types": ["shared_module"], 158 "whitelist": [ 159 "6EAED1924DB611B6EEF2A664BD077BE7EAD33B8F", 160 "4EB74897CB187C7633357C2FE832E0AD6A44883A", 161 // Next four: http://crbug.com/357213 162 "mafeflapfdfljijmlienjedomfjfmhpd", 163 "ajchadodoajkaojdidnbblnfcdipbple", 164 "47F838F58D2A3B585DE50F29E3585D94999921D1", 165 "8EBAFB8DEB647EA2FC887A5E01EBD9BDC0FDC536" 166 ] 167 }, 168 { 169 "channel": "dev", 170 "extension_types": ["shared_module"] 171 } 172 ], 173 "file_browser_handlers": [ 174 { 175 "channel": "stable", 176 "extension_types": ["extension", "legacy_packaged_app"] 177 }, 178 { 179 "channel": "stable", 180 "extension_types": ["platform_app"], 181 "location": "component" 182 } 183 ], 184 "homepage_url": { 185 "channel": "stable", 186 "extension_types": ["extension", "legacy_packaged_app"] 187 }, 188 "import": { 189 "channel": "stable", 190 "extension_types": "all" 191 }, 192 "input_components": { 193 "channel": "stable", 194 "extension_types": ["extension", "legacy_packaged_app"] 195 }, 196 "key": { 197 "channel": "stable", 198 "extension_types": "all" 199 }, 200 "mime_types": { 201 "channel": "stable", 202 "extension_types": [ "extension", "legacy_packaged_app", "platform_app" ], 203 "whitelist": [ 204 "oickdpebdnfbgkcaoklfcdhjniefkcji", // browser_tests 205 "gbkeegbaiigmenfmjfclcdgdpimamgkj", // QuickOffice 206 "ionpfmkccalenbmnddpbmocokhaknphg", // QuickOffice Dev 207 "bpmcpldpdmajfigpchkicefoigmkfalc", // Quickoffice component extension 208 "ehibbfinohgbchlgdbfpikodjaojhccn", // Editor 209 "mhjfbmdgcfjbbpaeojofohoefgiehjai" // PDF 210 ] 211 }, 212 "mime_types_handler": { 213 "channel": "stable", 214 "extension_types": [ "extension", "legacy_packaged_app", "platform_app" ], 215 "whitelist": [ 216 "oickdpebdnfbgkcaoklfcdhjniefkcji", // browser_tests 217 "gbkeegbaiigmenfmjfclcdgdpimamgkj", // QuickOffice 218 "ionpfmkccalenbmnddpbmocokhaknphg", // QuickOffice Dev 219 "bpmcpldpdmajfigpchkicefoigmkfalc", // Quickoffice component extension 220 "ehibbfinohgbchlgdbfpikodjaojhccn", // Editor 221 "mhjfbmdgcfjbbpaeojofohoefgiehjai" // PDF 222 ] 223 }, 224 "minimum_chrome_version": { 225 "channel": "stable", 226 "extension_types": [ 227 "extension", "legacy_packaged_app", "hosted_app", "platform_app" 228 ] 229 }, 230 "oauth2": { 231 "channel": "stable", 232 "extension_types": [ 233 "extension", "legacy_packaged_app", "platform_app" 234 ] 235 }, 236 "oauth2.auto_approve": { 237 "channel": "stable", 238 "extension_types": [ 239 "extension", "platform_app" 240 ], 241 "whitelist": [ 242 "mdbihdcgjmagbcapkhhkjbbdlkflmbfo", // unit_tests 243 "pafkbggdmjlpgkdkcbjmhmfcdpncadgh", // Google Now 244 "nmmhkkegccagdldgiimedpiccmgmieda", // In-app payments support app. 245 "4B1D0E19C6C43C008C44A8278C8B5BFE15ABEB3C", 246 "F7FA7ABC1ECB89BA8EE6656847EFABBF43BB9BCA", 247 "1A26E32DE447A17CBE5E9750CDBA78F58539B39C", // TODO(rockot): Kill these. 248 "E61F841D8210B6A9891E5384CB665FBED31FCD7B", // http://crbug.com/281715 249 250 // TODO(joaodasilva): remove these two once we have the new policy to 251 // grant auto approval by ID. http://crbug.com/399392 252 "A8208CCC87F8261AFAEB6B85D5E8D47372DDEA6B", 253 "A4577D8C2AF4CF26F40CBCA83FFA4251D6F6C8F8" 254 ] 255 }, 256 "omnibox": { 257 "channel": "stable", 258 "extension_types": ["extension", "legacy_packaged_app"] 259 }, 260 "optional_permissions": { 261 "channel": "stable", 262 "extension_types": [ 263 "extension", "legacy_packaged_app", "hosted_app", "platform_app" 264 ] 265 }, 266 "options_page": { 267 "channel": "stable", 268 "extension_types": [ 269 "extension", "legacy_packaged_app", "hosted_app" 270 ] 271 }, 272 "page_action": { 273 "channel": "stable", 274 "extension_types": ["extension"] 275 }, 276 "page_actions": { 277 "channel": "stable", 278 "extension_types": ["extension"], 279 "max_manifest_version": 1 280 }, 281 "permissions": { 282 "channel": "stable", 283 "extension_types": [ 284 "extension", "legacy_packaged_app", "hosted_app", "platform_app" 285 ] 286 }, 287 "platforms": { 288 "channel": "stable", 289 "extension_types": "all" 290 }, 291 "plugins": { 292 "channel": "stable", 293 "extension_types": ["extension", "legacy_packaged_app", "hosted_app"] 294 }, 295 "requirements": { 296 "channel": "stable", 297 "extension_types": [ 298 "extension", "legacy_packaged_app", "hosted_app", "platform_app" 299 ] 300 }, 301 "script_badge": { 302 "channel": "trunk", 303 "extension_types": ["extension"] 304 }, 305 "short_name": { 306 "channel": "stable", 307 "extension_types": "all" 308 }, 309 "signature": { 310 "channel": "stable", 311 "extension_types": "all" 312 }, 313 "spellcheck": { 314 "channel": "dev", 315 "extension_types": ["extension"] 316 }, 317 "storage": { 318 "channel": "stable", 319 "extension_types": ["extension", "legacy_packaged_app", "platform_app"], 320 "min_manifest_version": 2 321 }, 322 "system_indicator": [ 323 { 324 "channel": "dev", 325 "extension_types": ["extension", "legacy_packaged_app", "platform_app"] 326 }, 327 { 328 "channel": "stable", 329 "whitelist": [ 330 "F29716B08705C9D3C12CDFE3F638BAE709570C31", // browser_tests 331 // See crbug.com/245730 for details on the Hangouts whitelist. 332 "53041A2FA309EECED01FFC751E7399186E860B2C", // Hangouts 333 "312745D9BF916161191143F6490085EEA0434997", // Hangouts beta 334 "A74A4D44C7CFCD8844830E6140C8D763E12DD8F3", // Hangouts alpha 335 "E7E2461CE072DF036CF9592740196159E2D7C089", // Hangouts debug 336 "49DA0B9CCEEA299186C6E7226FD66922D57543DC" // Hangouts dev 337 ], 338 "extension_types": ["extension", "platform_app"] 339 } 340 ], 341 "theme": { 342 "channel": "stable", 343 "extension_types": ["theme"] 344 }, 345 "tts_engine": { 346 "channel": "stable", 347 "extension_types": ["extension", "legacy_packaged_app"] 348 }, 349 "update_url": { 350 "channel": "stable", 351 "extension_types": "all" 352 }, 353 "url_handlers": { 354 "channel": "stable", 355 "extension_types": ["platform_app"] 356 } 357 } 358