如何从 SElinux 沙箱创建到 PipeWire 的 DBUS 连接(以与声音守护进程通信)?
答案1
Pipewire 通常作为用户会话服务,所以你可能想要会话数据库总线,通过 Unix 套接字访问/run/user/<UID number>/bus
。同一目录还将包含 Pipewire 自己的套接字,以防您需要直接与其通信。
如果您已将 Pipewire 配置为作为系统服务相反,或者以其他方式需要系统DBus,其插座位于/run/dbus/system_bus_socket
。
如果您正在使用自定义 SELinux 沙箱,请将其配置为允许访问适当的套接字,并且您的沙箱应用程序将有权访问 DBus。
SELinux 限制通常或多或少是针对应用程序量身定制的,因此在不了解更多细节的情况下很难给出具体建议。许多预构建的沙箱配置包括SELinux 布尔值:简单的开/关类型设置,如果应用程序的特定用例需要,可以允许特定的事情。<application name>_selinux
如果您安装了该软件包,通常可以在手册页上找到有关这些的文档selinux-policy-doc
。可以使用getsebool
/setsebool
命令或命令的选项来查询/操作布尔值semanage boolean
。