| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // This features file defines manifest keys implemented under src/extensions. |
| // See extensions/common/features/* to understand this file, in particular |
| // feature.h, simple_feature.h, and base_feature_provider.h. |
| |
| // To add a new whitelisted ID, SHA-1 it and force it to uppercase. In Bash: |
| // |
| // $ echo -n "aaaabbbbccccddddeeeeffffgggghhhh" | \ |
| // sha1sum | tr '[:lower:]' '[:upper:]' |
| // 9A0417016F345C934A1A88F55CA17C05014EEEBA - |
| // |
| // Google employees: please update http://go/chrome-api-whitelist to map |
| // hashes back to ids. |
| |
| { |
| "app": { |
| "channel": "stable", |
| "extension_types": ["legacy_packaged_app", "hosted_app", "platform_app"] |
| }, |
| // The default platform app CSP can only be overridden by whitelisted apps. |
| // This is a separate key from the top-level content_security_policy one since |
| // we can't combine type restrictions with whitelisted ID restrictions. If |
| // there is a need for additional whitelisted entries, the feature system |
| // should instead be extended to support OR-ing of restrictions. |
| "app.content_security_policy": { |
| "channel": "stable", |
| "extension_types": ["platform_app"], |
| "min_manifest_version": 2, |
| "whitelist": [ |
| // Keep this list in sync with extensions_misc::kHangoutsExtensionIds but |
| // omit the Packaged App ids. |
| "nckgahadagoaajjgafhacjanaoiihapd", // Hangouts Production. |
| "ljclpkphhpbpinifbeabbhlfddcpfdde", // Hangouts Debug. |
| "ppleadejekpmccmnpjdimmlfljlkdfej", // Hangouts Alpha. |
| "eggnbpckecmjlblplehfpjjdhhidfdoj", // Hangouts Beta. |
| |
| "lphgohfeebnhcpiohjndkgbhhkoapkjc" // Apps Debugger |
| ] |
| }, |
| "app.background": { |
| "channel": "stable", |
| "extension_types": ["platform_app"], |
| "min_manifest_version": 2 |
| }, |
| "background": { |
| "channel": "stable", |
| "extension_types": [ |
| // Platform apps specify their background page via app.background. |
| "extension", "legacy_packaged_app", "hosted_app" |
| ] |
| }, |
| "background.persistent": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "legacy_packaged_app" |
| ], |
| "min_manifest_version": 2 |
| }, |
| "background_page": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "legacy_packaged_app", "hosted_app" |
| ], |
| "max_manifest_version": 1 |
| }, |
| "bluetooth": [{ |
| // Note: The "bluetooth" manifest permission is used by the |
| // chrome.bluetooth, chrome.bluetoothSocket and chrome.bluetoothLowEnergy |
| // APIs. |
| "channel": "stable", |
| "extension_types": ["platform_app"], |
| "platforms": ["chromeos", "win", "mac"] |
| }, { |
| "channel": "stable", |
| "extension_types": ["platform_app"], |
| "platforms": ["linux"], |
| "whitelist": [ |
| "9E287A8257E58EFB13E89C86A4B75A3AC4B058D8", // unit_tests browser_tests |
| "1C93BD3CF875F4A73C0B2A163BB8FBDA8B8B3D80", // http://crbug.com/396117 |
| "A3BC37E2148AC4E99BE4B16AF9D42DD1E592BBBE", // http://crbug.com/396117 |
| "E703483CEF33DEC18B4B6DD84B5C776FB9182BDB", // http://crbug.com/396117 |
| "307E96539209F95A1A8740C713E6998A73657D96", // http://crbug.com/396117 |
| "4F25792AF1AA7483936DE29C07806F203C7170A0", // http://crbug.com/407693 |
| "BD8781D757D830FC2E85470A1B6E8A718B7EE0D9", // http://crbug.com/407693 |
| "4AC2B6C63C6480D150DFDA13E4A5956EB1D0DDBB", // http://crbug.com/407693 |
| "81986D4F846CEDDDB962643FA501D1780DD441BB" // http://crbug.com/407693 |
| ] |
| }], |
| "content_capabilities": [{ |
| "channel": "stable", |
| "extension_types": ["extension"], |
| "whitelist": [ |
| "950D13BB9B4794F4CA2A68D3597E5DFAA47C88AE", // Drive |
| "0EEB39B7A9A52CAAE6A072F83320435749B184A4", // http://crbug.com/481210 |
| "D4AF239830E1E038C9B60DA365B1EC9CB3BC5658", // http://crbug.com/481210 |
| "4895B1DBB92D52488F8D9FFDF9CC7B95C7258C9A", // http://crbug.com/505532 |
| "A3880AA78DB0004DE841CC980959D8443F3A8E40", // http://crbug.com/521615 |
| "C8B53B3C2CC39CB504B19D990165684FF0CE880C" // http://crbug.com/521615 |
| ] |
| }, { |
| "channel": "canary", |
| "extension_types": ["extension"] |
| }], |
| "content_security_policy": { |
| "channel": "stable", |
| // Platform apps have a restricted content security policy that cannot be |
| // overriden (except for a whitelist of exceptions, see the |
| // app.content_security_policy whitelist). |
| "extension_types": ["extension", "legacy_packaged_app"] |
| }, |
| "copresence" : { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "current_locale": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "default_locale": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "description": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "externally_connectable": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "hosted_app", "legacy_packaged_app", "platform_app" |
| ] |
| }, |
| "file_handlers": [ |
| { |
| "channel": "stable", |
| "extension_types": ["platform_app"] |
| }, { |
| "channel": "stable", |
| "extension_types": [ "extension"], |
| "whitelist": [ |
| "2FC374607C2DF285634B67C64A2E356C607091C3", // Quickoffice |
| "3727DD3E564B6055387425027AD74C58784ACC15", // Quickoffice internal |
| "12E618C3C6E97495AAECF2AC12DEB082353241C6" // QO component extension |
| ] |
| } |
| ], |
| "icons": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "incognito": [ |
| { |
| "channel": "stable", |
| "extension_types": ["extension", "legacy_packaged_app"] |
| }, |
| { |
| "channel": "stable", |
| "extension_types": ["platform_app"], |
| "location": "component" |
| } |
| ], |
| "key": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "kiosk_enabled": { |
| "channel": "stable", |
| "extension_types": [ |
| "platform_app" |
| ] |
| }, |
| "kiosk_only": { |
| "channel": "dev", |
| "extension_types": [ |
| "platform_app" |
| ] |
| }, |
| "kiosk_secondary_apps": { |
| "channel": "stable", |
| "extension_types": [ |
| "platform_app" |
| ] |
| }, |
| "launcher_page": { |
| "channel": "stable", |
| "min_manifest_version": 2, |
| "extension_types": ["platform_app"], |
| "whitelist": [ |
| "07BD6A765FFC289FF755D7CAB2893A40EC337FEC", // http://crbug.com/404000 |
| "896B85CC7E913E11C34892C1425A093C0701D386", // http://crbug.com/404000 |
| "11A01C82EF355E674E4F9728A801F5C3CB40D83F", // http://crbug.com/404000 |
| "F410C88469990EE7947450311D24B8AF2ADB2595" // http://crbug.com/404000 |
| ] |
| }, |
| "manifest_version": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "mime_types": { |
| "channel": "stable", |
| "extension_types": [ "extension", "legacy_packaged_app", "platform_app" ], |
| "whitelist": [ |
| "oickdpebdnfbgkcaoklfcdhjniefkcji", // browser_tests |
| "gbkeegbaiigmenfmjfclcdgdpimamgkj", // QuickOffice |
| "ionpfmkccalenbmnddpbmocokhaknphg", // QuickOffice Dev |
| "bpmcpldpdmajfigpchkicefoigmkfalc", // Quickoffice component extension |
| "ehibbfinohgbchlgdbfpikodjaojhccn", // Editor |
| "mhjfbmdgcfjbbpaeojofohoefgiehjai" // PDF |
| ] |
| }, |
| "mime_types_handler": { |
| "channel": "stable", |
| "extension_types": [ "extension", "legacy_packaged_app", "platform_app" ], |
| "whitelist": [ |
| "oickdpebdnfbgkcaoklfcdhjniefkcji", // browser_tests |
| "mhjfbmdgcfjbbpaeojofohoefgiehjai" // PDF |
| ] |
| }, |
| "nacl_modules": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "legacy_packaged_app", "hosted_app", "platform_app" |
| ] |
| }, |
| "name": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "oauth2": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "legacy_packaged_app", "platform_app" |
| ] |
| }, |
| "oauth2.auto_approve": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "platform_app" |
| ], |
| "whitelist": [ |
| "mdbihdcgjmagbcapkhhkjbbdlkflmbfo", // unit_tests |
| "pafkbggdmjlpgkdkcbjmhmfcdpncadgh", // Google Now |
| "nmmhkkegccagdldgiimedpiccmgmieda", // In-app payments support app. |
| "4B1D0E19C6C43C008C44A8278C8B5BFE15ABEB3C", |
| "F7FA7ABC1ECB89BA8EE6656847EFABBF43BB9BCA", |
| "1A26E32DE447A17CBE5E9750CDBA78F58539B39C", // TODO(rockot): Kill these. |
| "E61F841D8210B6A9891E5384CB665FBED31FCD7B", // http://crbug.com/281715 |
| |
| "07BD6A765FFC289FF755D7CAB2893A40EC337FEC", // http://crbug.com/430730 |
| "896B85CC7E913E11C34892C1425A093C0701D386", // http://crbug.com/430730 |
| "11A01C82EF355E674E4F9728A801F5C3CB40D83F", // http://crbug.com/430730 |
| "F410C88469990EE7947450311D24B8AF2ADB2595", // http://crbug.com/430730 |
| |
| // TODO(joaodasilva): remove these two once we have the new policy to |
| // grant auto approval by ID. http://crbug.com/399392 |
| "A8208CCC87F8261AFAEB6B85D5E8D47372DDEA6B", |
| "A4577D8C2AF4CF26F40CBCA83FFA4251D6F6C8F8", |
| "EFCF5358672FEE04789FD2EC3638A67ADEDB6C8C" // http://crbug.com/514696 |
| ] |
| }, |
| "offline_enabled": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "legacy_packaged_app", "hosted_app", "platform_app" |
| ] |
| }, |
| "options_ui": { |
| "channel": "stable", |
| "extension_types": ["extension", "legacy_packaged_app"] |
| }, |
| "sandbox": { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "platform_app", "legacy_packaged_app" |
| ], |
| "min_manifest_version": 2 |
| }, |
| "sockets": { |
| "channel": "stable", |
| "extension_types": ["platform_app"] |
| }, |
| "usb_printers": { |
| "channel": "stable", |
| "extension_types": ["platform_app"] |
| }, |
| "version": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "version_name": { |
| "channel": "stable", |
| "extension_types": "all" |
| }, |
| "web_accessible_resources": [ |
| { |
| "channel": "stable", |
| "extension_types": [ |
| "extension", "legacy_packaged_app", "hosted_app" |
| ] |
| }, |
| { |
| "channel": "stable", |
| "extension_types": ["platform_app"], |
| "location": "component" |
| } |
| ], |
| "webview": { |
| "channel": "stable", |
| "extension_types": ["platform_app"], |
| "min_manifest_version": 2 |
| } |
| } |