android权限与linux权限

android权限与linux权限,android,permissions,Android,Permissions,android权限(您在清单中请求并在安装时显示的权限)与根用户在根手机上获得的linux权限是否相同 更确切地说:如果我的手机上有root用户,并且我有一个应用程序,该应用程序需要拨打电话,但没有在清单中请求此权限,那么该呼叫会成功还是会崩溃 谢谢。拥有根手机不会影响Android权限。换句话说,如果一个应用程序做了需要特定权限的“事情”,并且该应用程序没有在AndroidManifest中声明这些权限,那么该应用程序将崩溃 更多信息,请参见。一些Android权限作为Linux权限实现(例如

android权限(您在清单中请求并在安装时显示的权限)与根用户在根手机上获得的linux权限是否相同

更确切地说:如果我的手机上有root用户,并且我有一个应用程序,该应用程序需要拨打电话,但没有在清单中请求此权限,那么该呼叫会成功还是会崩溃


谢谢。

拥有根手机不会影响Android权限。换句话说,如果一个应用程序做了需要特定权限的“事情”,并且该应用程序没有在AndroidManifest中声明这些权限,那么该应用程序将崩溃


更多信息,请参见。

一些Android权限作为Linux权限实现(例如,外部存储或网络都授予Unix组的成员资格,允许执行这些操作),而其他权限则完全在Android层中实现

“Root”与此无关,因为Android应用程序(可以访问各种Android级别的服务)的主进程作为Root运行几乎是闻所未闻的。相反,当人们在他们的设备上安装root hack时,他们正在做的是添加一个垫片,它可以让助手程序以root身份运行,而不是应用程序本身。如果helper程序想要做的是基于Linux API,并且受到Linux权限的限制,那么这可能会起作用,因为它是基于用户/组的传统强制执行,并且不会被SELinux阻止(为了解决这个问题,一些黑客会从一个守护进程启动helper,该守护进程在SELinux完全激活之前在启动时就已经初始化)

但是对于必须通过Android API完成的事情,root几乎是不相关的,因为通常执行任务的代码不会以root身份运行。通过启动不同的VM实例与Android API交互的一些命令行工具可能具有增强的权限,但这与t尝试在应用程序的流程中执行相同的操作


人们有时还利用根访问权限将.apk放在系统分区上(如果他们可以将其装载为可写)它允许授予某些清单权限,如果在数据分区上以正常方式安装.apk时,在相同.apk的清单中找到这些权限,则会忽略这些权限。

应用程序将崩溃。有趣的是,您在“androidmanifest”中声明的权限这些权限实际上是在本机android框架中实现的,主要是java框架层,还有一点是在此类框架的cpp本机实现上实现的。您可以通过查看android开源项目代码来证实这一点。这些权限实际上是在安卓上实现的不同安全策略层,是什么关于android,有趣的是ti继承了很多基于linux的权限,一个例子是使用用户和RD用户组权限来封装正在运行的应用程序(每个正在运行的应用程序都有不同的组和用户),而且,从android 5开始,SELinux也被启用

可以公平地说,所有这些机制共同加强了安卓系统的整体安全性