gpt4 book ai didi

Android binder - 将binder调用限制在一个进程

转载 作者:行者123 更新时间:2023-11-29 22:46:08 29 4
gpt4 key购买 nike

我有一个 Android Java 服务,它通过 Binder (AIDL) 与 native 进程交互。

我看到该服务列在“adb shell 服务列表”下。我也可以使用“adb shell service start 1 xxx”向该服务发送命令。

为了解决这个问题,我希望只在这个特定的 Java 服务和 native 进程之间进行绑定(bind) IPC 事务。

我在任何地方都找不到任何决定性的信息。非常感谢这方面的任何帮助。

最佳答案

可以使用 SELinux 控制绑定(bind)器接口(interface)的访问。

取决于你是否使用bindervdbinder您可以在 service_contexts 中定义服务上下文或 vndservice_contexts像这样的文件:

myservice      u:object_r:myservice_[vnd]service:s0

注意:myservice是您在 defaultServiceManager()->addService() 中提供的名称

现在您可以明确定义允许哪个进程访问myservice.te策略文件。

示例:允许myclient访问 myservice :

allow myclient myservice_[vnd]service:service_manager find
[vnd]binder_use(myclient)
binder_call(myclient, myservice_[vnd]service)

您可以找到更多信息here .

关于Android binder - 将binder调用限制在一个进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58438547/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com