blob: c3b2b4267bcf6faab93bf5d3481d8ef517a88c8c [file] [log] [blame]
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<!--
Copyright 2021 The ChromiumOS Authors
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<busconfig>
<!-- ../system.conf have denied everything, so we just punch some holes -->
<!-- Allow btclient to run as root -->
<policy user="root">
<allow send_destination="org.chromium.bluetooth"/>
<allow send_destination="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.freedesktop.DBus.ObjectManager"/>
<allow send_interface="org.freedesktop.DBus.Properties"/>
</policy>
<policy user="bluetooth">
<!-- Manager policy -->
<allow own="org.chromium.bluetooth.Manager"/>
<allow send_destination="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.chromium.bluetooth.ManagerCallback"/>
<allow send_interface="org.chromium.bluetooth.Suspend"/>
<allow send_interface="org.freedesktop.DBus.ObjectManager"/>
<allow send_interface="org.freedesktop.DBus.Properties"/>
<allow send_destination="com.ubuntu.Upstart"
send_interface="com.ubuntu.Upstart0_6.Job"
send_path="/com/ubuntu/Upstart/jobs/btadapterd"/>
<allow send_destination="com.ubuntu.Upstart"
send_interface="com.ubuntu.Upstart0_6.Job"
send_path="/com/ubuntu/Upstart/jobs/bluetoothd"/>
<!-- Adapter policy -->
<allow own="org.chromium.bluetooth" />
<allow send_destination="org.chromium.bluetooth"/>
<allow send_interface="org.chromium.bluetooth.AdvertisingSetCallback"/>
<allow send_interface="org.chromium.bluetooth.AdminPolicyCallback"/>
<allow send_interface="org.chromium.bluetooth.BatteryManagerCallback"/>
<allow send_interface="org.chromium.bluetooth.Bluetooth"/>
<allow send_interface="org.chromium.bluetooth.BluetoothCallback"/>
<allow send_interface="org.chromium.bluetooth.BluetoothConnectionCallback"/>
<allow send_interface="org.chromium.bluetooth.BluetoothGattCallback"/>
<allow send_interface="org.chromium.bluetooth.BluetoothGattServerCallback"/>
<allow send_interface="org.chromium.bluetooth.BluetoothMediaCallback" />
<allow send_interface="org.chromium.bluetooth.ScannerCallback"/>
<allow send_interface="org.chromium.bluetooth.SocketManagerCallback"/>
<allow send_interface="org.chromium.bluetooth.SuspendCallback"/>
</policy>
<policy user="chronos">
<allow send_destination="org.chromium.bluetooth"/>
<allow send_destination="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.chromium.bluetooth.AdminPolicyCallback"/>
<allow send_interface="org.chromium.bluetooth.Bluetooth"/>
<allow send_interface="org.chromium.bluetooth.BluetoothCallback"/>
<allow send_interface="org.chromium.bluetooth.BluetoothConnectionCallback"/>
<allow send_interface="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.chromium.bluetooth.ManagerCallback"/>
<allow send_interface="org.freedesktop.DBus.ObjectManager"/>
<allow send_interface="org.freedesktop.DBus.Properties"/>
</policy>
<policy user="cras">
<allow send_destination="org.chromium.bluetooth"/>
<allow send_destination="org.chromium.bluetooth.Manager"/>
</policy>
<!-- Allow powerd to send suspend signals to btmanagerd -->
<policy user="power">
<allow send_destination="org.chromium.bluetooth.Manager"/>
</policy>
<!-- Allow shill to query information about the BT stack -->
<policy user="shill">
<allow send_destination="org.chromium.bluetooth"/>
<allow send_destination="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.chromium.bluetooth.Bluetooth"/>
<allow send_interface="org.chromium.bluetooth.Manager"/>
</policy>
<!-- Allow cros_healthd to query information about the BT stack -->
<policy user="cros_healthd">
<allow send_destination="org.chromium.bluetooth"/>
<allow send_destination="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.chromium.bluetooth.Bluetooth"/>
<allow send_interface="org.chromium.bluetooth.BluetoothCallback"/>
<allow send_interface="org.chromium.bluetooth.Manager"/>
<allow send_interface="org.chromium.bluetooth.ManagerCallback"/>
</policy>
<policy context="default">
<deny send_destination="org.chromium.bluetooth"/>
<deny send_destination="org.chromium.bluetooth.Manager"/>
</policy>
</busconfig>