环境权限

✍ dations ◷ 2025-05-12 01:44:00 #存取控制,电脑安全

环境权限(英文: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系统都是在用户启动程序后直接赋予程序所有用户拥有的权限,所以这两种操作系统都在使用环境权限模式进行权限管理。这不仅可能赋予被执行程序多于所需的权限,还无法控制程序使用了何种、来源于何的权限。这种情形下,用户只能祈望程序没有使用过多权限。

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

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

相关

  • 棋类棋类、棋类游戏、棋是华人对游戏依照用具与内容来区别的一种特有分类名称,英文无直接对应的字词,然而多数种类棋子可翻成"Piece",或会分类成棋盘游戏("Boardgame"),藏族可对应的
  • 1143年重要事件及趋势重要人物
  • 胡志明市医药大学胡志明市医药大学(Đại học Y Dược Thành phố Hồ Chí Minh)坐落在越南最大的城市胡志明市。该大学主要教学方向是医科和药学,前身为越南共和国的著名学府“西贡医科大
  • 昆图斯·凯基利乌斯·梅特卢斯·巴勒阿里库斯昆图斯·凯基利乌斯·梅特卢斯·巴勒阿里库斯(拉丁语:Quintus Caecilius Metellus Balearicus,前170年-?)是罗马共和国的政治人物与将领,并当选为前123年的罗马执政官。昆图斯·凯
  • 人类灭绝之后的动物人类灭绝之后的动物(英语:After Man: A Zoology of the Future),是英国地质学家兼作家道格尔.狄克森(Dougal Dixon)的著作,出版于1981年。在书中他讲述了他想象中的五千万年以后的自
  • 㐷姓《百家姓》中无此姓㐷姓是一个中国罕见姓氏,主要分布于山东省滨州市惠民县辛店镇㐷家村。此姓的来源说法不一,《玉篇》《广韵》记载春秋时期有齐国大夫以此为名,或成为其最早的
  • 卡尔·戈德马克卡尔·戈德马克(德语:Karl Goldmark,匈牙利语:Goldmark Károly,1830年5月18日-1915年1月2日),犹太血统的匈牙利作曲家,小提琴家。生于一贫困家庭,有兄弟姐妹十余人。早年到维也纳音乐
  • 尼泊尔共产党(统一)尼泊尔共产党(统一)(尼泊尔语:नेपाल कम्युनिष्ट पार्टी (एकिकृत))是尼泊尔的一个已不存在的共产主义政党。该党成立于2007年。2013年4月,该党并入尼泊
  • Fragment's NoteFragment's Note运行在iPhone 4S (iOS 5.1.1) 的游戏主菜单《Fragment's Note》(假名:フラグメンツノート)是一款由日本游戏厂商ULLUCUSHEAVEN和ALVION共同开发、于2012年7月18
  • 奥托·恩斯特·雷莫奥托·恩斯特·雷莫(德语:Otto Ernst Remer,1912年8月18日-1997年10月4日)是德国的一名德军官员,在德国军方主导的1944年7月20日密谋案中有决定性的作用。 战争期间他受伤九次。战