[WK2][iOS] Update WebContent process sandbox profile for AWD logging
[WebKit-https.git] / Source / WebKit2 / Resources / SandboxProfiles / ios / com.apple.WebKit.Networking.sb
1 ; Copyright (C) 2014 Apple Inc. All rights reserved.
2 ;
3 ; Redistribution and use in source and binary forms, with or without
4 ; modification, are permitted provided that the following conditions
5 ; are met:
6 ; 1. Redistributions of source code must retain the above copyright
7 ; notice, this list of conditions and the following disclaimer.
8 ; 2. Redistributions in binary form must reproduce the above copyright
9 ; notice, this list of conditions and the following disclaimer in the
10 ; documentation and/or other materials provided with the distribution.
11 ;
12 ; THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
13 ; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
14 ; THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
15 ; PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
16 ; BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
17 ; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
18 ; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
19 ; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
20 ; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
21 ; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
22 ; THE POSSIBILITY OF SUCH DAMAGE.
23
24 (version 1)
25 (deny default (with partial-symbolication))
26 (allow system-audit file-read-metadata)
27
28 (import "common.sb")
29 (import "removed-dev-nodes.sb")
30
31 ;; Access to client's cache folder & re-vending to CFNetwork.
32 ;; FIXME: Remove the webkit specific extension classes <rdar://problem/17755931>
33 (allow file-issue-extension (require-all
34     (extension "com.apple.app-sandbox.read-write")
35     (extension-class "com.apple.nsurlstorage.extension-cache")))
36
37 ;; App sandbox extensions
38 (allow file-read* file-write* (extension "com.apple.app-sandbox.read-write"))
39 (allow file-read* (extension "com.apple.app-sandbox.read"))
40
41 ;; FIXME: <rdar://problem/17909681> SSO expects to be able to walk the parent
42 ;; bundle to find Info plists, so we jump through a few hoops here to provide
43 ;; enough access to make it possible.
44
45 ;; Disallow networking process from reading any bundles, even with the read extension
46 (deny file-read*
47     (require-all
48         (subpath "/Applications")
49         (extension "com.apple.app-sandbox.read")))
50 (deny file-read*
51     (require-all
52         (subpath "/private/var/mobile/Containers/Bundle/Application")
53         (extension "com.apple.app-sandbox.read")))
54
55 ;; Allow the networking process to read directories inside the bundle directories
56 ;; that we may have killed off above
57 (allow file-read*
58     (require-all
59         (extension "com.apple.app-sandbox.read")
60         (vnode-type DIRECTORY)))
61
62 ;; Allow the networking process to read the Info.plist files
63 (allow file-read*
64     (require-all
65         (extension "com.apple.app-sandbox.read")
66         (regex #"/Info\.plist$")))
67
68 ;; IOKit user clients
69 (allow iokit-open
70        (iokit-user-client-class "RootDomainUserClient"))
71
72 ;; Various services required by CFNetwork and other frameworks
73 (allow mach-lookup
74        (global-name "com.apple.PowerManagement.control"))
75
76 (network-client (remote tcp))
77
78 ;; Security framework
79 (allow mach-lookup
80     (global-name "com.apple.ocspd")
81     (global-name "com.apple.securityd")
82     (global-name "com.apple.accountsd.accountmanager"))
83
84 (deny file-write-create
85        (vnode-type SYMLINK))