环境权限

✍ dations ◷ 2025-12-01 19:56:03 #存取控制,电脑安全

环境权限(英文:Ambient Authority)是系统访问控制研究中的术语。当主体(比如某个计算机程序或Linux上的某个用户)指明它需要的客体(Object,比如某一文件)的名称和它将要对该客体执行的动作(Operation,比如“复制”)便可以完成该动作的时候,我们称该主体使用了环境权限。

在“环境权限”的定义中:


“环境权限”存在于“广泛的可见空间(比如全局环境变量)”,也就是说任何主体都可以通过名称请求它并完成动作。

下面是一个C程序通过open()程序调用来完成读取文件的操作:

open(“filename”,O_RDONLY, 0)

在程序调用过程中,程序仅仅指明了目标文件的文件名,此文件名不包含任何的权限信息,也就是说C程序无法从此文件名中获得权限信息。在这个语境中,权限信息存在于环境中,这也就是我们所说的“环境权限”。

当环境权限被请求时,是否授予或拒绝权限取决于动作的全局属性,比如作出动作的身份或角色(在Li/Unix语境下,这里的身份即为“用户”)。在使用环境权限的时候,权限的管理将独立于原有的权限控制表(英语:Access-control list)或基于角色的权限控制(英语:Role-based_access_control)等模式,因而正在使用环境权限的程序不会被传统的权限控制手段限制。在这种情况下,系统的权限控制机制无法区分环境权限的使用者是谁,导致了代理混淆问题(英语:Confused deputy problem)

下面的例子来自于 UC Barkely EECS学院 David Wagner教授的PLAS06课程:

# “cp” 必须运行在环境权限下,它可以访问任意用户能够访问的文件$ cp foo.txt bar.txt#“cat” 只需要它用得到的权限$ cat < foo.txt > bar.txt# 环境权限:即使你不需要,也会在调用时带来的权限

今天,因为Unix和Windows系统都是在用户启动程序后直接赋予程序所有用户拥有的权限,所以这两种操作系统都在使用环境权限模式进行权限管理。这不仅可能赋予被执行程序多于所需的权限,还无法控制程序使用了何种、来源于何的权限。这种情形下,用户只能祈望程序没有使用过多权限。

与环境权限相对应的是“基于能力的权限控制”,这一模式要求程序执行时像接收数据那样接收并利用权限。权限授予机制在程序请求权限时审查并发放“权限”,以此赋予主体使用客体的“能力”,以便于避免代理混淆问题。

但是请注意,基于能力的权限管理系统与非环境权限授权系统并不是同义词。

相关

  • 布佛氏论证布佛氏论证(Bulverism)是一种“诉诸为何相信”的非形式谬误,其假定某观点是错的,由此出发解释为什么许多人会相信它,然后断定该观点是错误的。布佛氏论证预设了一个不当的前提:如
  • 药,可以指:
  • 冰河冰川(Glacier)是指大量冰块堆积形成如同河川般的地理景观。是一巨大的流动固体,是在高寒地区由层层积雪堆叠而成的巨大冰川冰。在终年冰封的高山或两极地区,多年的积雪经重力或
  • 天球北极天极是地球的自转轴(地轴)(英语:earth axis),向天球延伸后,在无穷远处与天球交会的两个假想点。夜空中的星星,看起来是从头顶上由东向西移动,使人产生天球也在从东向西自转的感觉,这
  • 徐 里徐里(1961年-),福建人,中国画家,中国美术家协会分党组书记、驻会副主席、秘书长,第十三届全国政协委员。
  • 巴特寮巴特寮(老挝语:ປະເທດລາວ/Pathet Laos,意为老挝国),是1956年由老挝人民党建立的社会政治组织,1975年夺取了老挝的政权并建立了老挝人民民主共和国。狭义上,巴特寮是1950年-1
  • 巴西流浪蜘蛛巴西流浪蜘蛛(学名:)与近亲巴西游走蛛()同为世界上毒性最强的蜘蛛之一,又被称为香蕉蜘蛛,因为它喜欢躲藏在香蕉树里,主要分布在中南美洲,毒性大概可以毒死一只老鼠,它的毒性属于神经
  • 塞拉 (摩洛哥)塞拉(阿拉伯语:سلا‎)是摩洛哥的城市,人口超过900,000,居民主要是穷困的工厂工人。现在的塞拉是污染问题严重,城市规划欠佳,食水供应和污水处理的服务不稳定,使富裕的居民移居到
  • 密码强度密码强度,指一个密码对抗猜测或是暴力破解的有效程度。一般来说,指一个未授权的访问者得到正确密码的平均尝试次数。密码的强度和其长度、复杂度及不可预测度有关。强密码可以
  • 八九政变“八九政变”或“1960年老挝政变”指的是1960年8月9日老挝王国政府军伞兵在首都万象发动政变,成立临时执行委员会掌控国家。