Android系统是基于Linux内核的,也继承了Linux的基于用户和文件权限的安全机制,并将这种机制用于管理应用程序。
Linux系统对用户的管理:Linux系统可以有多个用户,每个用户都有一个用户名:UserName,同时拥有一个UserID,两者是一一对应的。每个用户可以属于一个或者多个组。
Linux系统的文件权限机制:每个文件都是属于某个用户的,这个用户称作文件的所有者。文件对于所有者、所有者所在组的用户、以及其它任意用户分别开放了不同的操作权限,操作权限分为:读、写、运行三种。只有获得了文件操作权限的应用才能对文件做相应的操作。这就保护了文件的安全性,保证用户对自己不具备权限的文件是不能进行操作。但是,这种机制太过于机械,有时候需要一定的灵活性,所以就出现了超级用户:root,用户root对所有的文件拥有所有权限。-----我的理解:这是一种对静态文件进行保护的安全机制,即文件对用户开放的权限,是指这个文件被操作的权限。
进一步的解释:所谓某用户对文件具有操作权限。除了在控制台中,直接以用户设分手动进行操作,大多数情况下,所谓用户的操作,就是指用户所运行的进程的操作。以某用户身份运行某个进程时,默认地这个进程所拥有的权限,就是用户的权限。当用户对某个文件拥有读权限时,这个进程就可以读这个文件;当用户对某个文件拥有写权限时,这个进程就可以对这个文件进行改写;当用户对某个目录有些权限时,该进程就可以在目录中创建文件,所创建的文件的归该用户所有。----这时候,这个进程的权限,是主动权限,即进程主动对某些文件进行操作的权限。
用户运行的进程默认的只能拥有用户的操作权限,而不管这个进程对应的程序文件本身有什么权限。这太死板。有时候,某些进程需要临时进行一些root用户才有权限执行的操作。为了满足这种需求,就出现了下面的两个权限:
另外,还有两个很特殊的权限,不是对文件进行描述的,而是对文件运行时的进程进行规定的权限,分别对应为setuid和setgid。拥有这两个权限的文件,在运行时,其runner会获得root权限。
Android,在应用安装成功后,就为其指定了一个系统中唯一的UserName,对应着系统中唯一的UID。这个UserName和UID实际上就是传统上的Linux的userName和UID。
转自http://inspurhjx.blog.163.com/blog/static/201579055201211411036973/
分享到:
相关推荐
Android应用程序在安装的过程中,安装服务PackageManagerService会为它们分配一个唯一的UID和GID,以及根据应用程序所申请的权限,赋予其它的GID。有了这些UID和GID之后,应用程序就只能限访问特定的文件,一般就是...
Android沿用了Linux的用户ID(UID)和组ID(GID)机制,每个应用程序在安装后会被分配一个唯一的UID。这种机制使得应用只能访问其被授权的资源,防止非法访问。当应用程序尝试执行超出权限范围的操作时,系统会发出...
Android安全机制是Android操作系统核心设计的一部分,旨在保护用户数据的安全和隐私,以及防止恶意软件的攻击。该机制基于Linux的权限管理系统,通过多种方式确保应用之间的隔离和对资源的访问控制。 1. **权限分离...
同时,Android使用 UID(用户ID)和 GID(组ID)来进一步控制进程间的访问权限,确保了资源的安全隔离。 签名机制是Android安全的另一个重要环节。每个Android应用程序都需要一个数字签名,这个签名验证了应用的...
总而言之,Android的安全机制是围绕着权限分离的核心思想设计的,通过为每个应用程序分配独立的UID和GID来实现基本的隔离,并通过细致入微的权限管理机制进一步增强了系统的安全性和可控性。这些机制相互协作,共同...
Android的安全机制是基于Linux内核的权限管理模型构建的,旨在保护不同应用程序之间的数据隔离和访问控制。在Android系统中,每一个应用都有一个独特的用户识别号(UID)和组识别号(GID),确保应用之间的数据私有...
Android系统增强了Linux的安全机制,为每个应用分配唯一的UID和GID,实现权限的隔离。非root用户具有不同的权限级别,而root用户则拥有全部权限。每个应用只能访问具有相应UID的资源,GID则代表一组权限集合,与特定...
为了实施这一安全策略,Android采用了Linux内核的进程隔离功能,为每个应用程序分配独特的用户ID(UID)和组ID(GID)。这一措施确保了应用程序之间的相互独立,除非应用程序明确声明并获得特定的“permissions”。 ...
本文将深入探讨Android的安全模型,重点分析权限控制机制,旨在帮助开发者和安全研究人员理解并提升应用程序的安全性。 Android安全架构的核心是基于Linux内核的权限管理系统,它构建在微内核之上,为每个应用程序...
《Android安全技术分析》 Android操作系统,作为一款深受人们喜爱的开源系统,基于Linux内核,因其强大功能、低廉价格及开源特性,广泛应用于智能...理解并掌握这些安全技术对于Android开发者和安全研究人员至关重要。
此外,Android操作系统的安全机制分析还包括了UID与GID的使用。UID(用户标识符)和GID(组标识符)是系统用于标识不同应用和用户,并分配权限的基础。每个应用程序都有自己的UID,系统分配的UID保证了应用之间的...
【Android系统安全现状分析】 Android系统作为全球最广泛使用的智能手机操作系统,其...总的来说,Android系统安全现状虽面临挑战,但通过不断优化的安全机制和用户教育,可以有效地降低风险,保障用户的数据安全。
**用户(User)**:在Android系统中,每个应用都默认属于一个独立的用户空间,拥有自己的用户ID (UID) 和组ID (GID),从而实现了应用之间的隔离。 **进程(Process)**:每个Android应用都会运行在一个独立的进程中,这...
此外,系统级别的安全服务如Android沙箱、安全存储和安全网络通信等,都为应用提供了安全的运行环境。 9. **权限分类**:Android权限分为正常权限和危险权限。正常权限对用户隐私或系统稳定性影响较小,安装时自动...
Android系统具有严格的权限管理系统,如Linux的uid/gid、文件权限以及SELinux等。了解并掌握这些安全机制,有助于构建更安全的Android系统。 总之,Android底层系统原理及开发须知涵盖了从硬件驱动到上层服务的全面...
Android系统是基于Linux内核构建的,其安全模型依赖于Linux的沙箱机制(Sandbox),每个应用程序都在自己的进程中运行,具有特定的用户ID(UID)和组ID(GID),以此限制它们对系统资源的访问。这一设计为应用程序...