(一)、类型强制策略的安全上下文
所有的操作系统访问控制都是基于与主体和客体相关的访问控制属性的。在SELinux中,访问控制属性杯称作安全上下文。所有的客体(文件,进程间通信,通信管道,套接字,网络主机等)和主体(进程)有一个和他们相关的单一安全上下文。一个安全上下文有三个元素:用户,角色和类型标识符。指定和显示一个安全上下文常用的格式如下:
用户(user):角色(role):类型标识符(type)
每一个元素的字符串标识符杯定义在SELinux的策略语言中,策略语言的细节后面慢慢讨论。就现在来说,仅仅理解一个有效的安全上下文一定要有一个有效的用户,角色和类型标识符,并且标识符被策略书写者定义。每一个标识符的命名空间都是正交的。(所以,举个例子,用户,角色和类型有相同的字符串标识符是可以的,但是不推荐使用。)
检查安全上下文:
SELinux通过添加-Z选项修改了系统命令来展示主体和客体的安全上下文。例如,ls -Z 显示了文件系统对象的安全上下文,ps -Z展示了进程的安全上下文。另外一个有用的命令是 id,他展示你的shell的安全上下文(也就是说,你的当前的用户,角色和类型)。下面的例子展示了一个运行在SELinux中的shell的安全上下文。
$ id -Z
joe:user_r:user_t
你可以在你自己的SELinux中使用这些命令,正如我们在这一章节中使用的一样。
(二)、SELinux和标准Linux比较
此时此刻,比较在标准Linux和SELinux中的访问控制属性是非常有用的。为了简单起见,我们坚持使用常用的文件系统对象,例如文件和目录。在标准Linux中,主体的进程访问属性是通过进程结构体提供的在linux内核中所有进程的真实有效的用户ID和组ID。这些属性被内核所保护着,并且经过一些列的控制方式来设置。包括登录进程和setuid程序。对于客体来说,文件的索引节点包含着一系列的访问模式位和文件的用户ID和组ID,前者是基于三个读/写/可执行位的集合来实现控制访问,这三个分别代表文件拥有者,文件组和其他任何人。后者决定了文件的所有者和组来决定对于一个给定的访问尝试应该使用哪一个位集合。
正如前面所述,在SELinux中,访问控制属性他基本上就是安全上下文。所有的客体和主体有一个相关的安全上下文。标准Linux使用进程的用户/组ID,文件访问模式位和文件用户/组ID来同意或者是拒绝访问,SELinux使用进程和客体的安全上下文来进行访问控制。更具体的说,由于SELinux的主要访问控制特征是TE,即类型强制策略,安全上下文中的类型标识符被用来决定访问。
注意:
SELinux是在标准Linux之上添加的类型强制机制。也就是说标准Linux和SELinux访问控制都必须满足才能访问客体。所以,例如,我们有SELinux对于文件的一个写权限,但是没有标准linux的写权限,我们依然不能想文件中写入数据。
下面的表列出了标准Linux和SELinux的一些区别:
(三)、关于安全上下文更多的信息
安全上下文是一个简单的,一致的访问控制属性。在SELinux中,类型标识符是安全上下文中决定访问的主要的部分。由于历史原因,进程的类型经常被称作域(domain)。使用域和域类型来代表进程的类型是比较普遍的,所以我们不可避免的要是用术语“域”。大体上,认为域,域类型,主体类型和进程类型是同义的。
在安全上下文中的用户标识符和角色标识符在访问控制策略中起很小的作用,因为是类型强制策略而不是约束条件强制策略,约束条件强制策略我们将在第七章中讨论。对于进程来说,用户标识符和角色标识符是非常有趣的。
因为他们被用来控制用户标识符和Linux用户账户的类型相关联的。对于客体来说,用户标识符和角色标识符几乎没用。作为一个公约,一个客体的角色通常是 object_r ,一个客体的用户通常是创建该客体的进程的用户标识符。他们在访问控制中没有作用。
最后,要知道标准Linux中的用户ID和SELinux在安全上下文中的用户标识符的不同。技术上,他们是完全正交的标识符,被标准的访问控制机制和安全增强型的访问控制机制分别使用。他们之间的任何联系都是通过登录进程按照公约严格提供的,而不是被SELinux策略直接实施的。
<script type="text/javascript">
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
});
</script>
版权声明:本文为博主原创文章,未经博主允许不得转载。
分享到:
相关推荐
chcon命令是修改对象(文件)的安全上下文,比如:用户、角色、类型、安全级别。也就是将每个文件的安全环境变更至指定环境。 语法格式: chcon [参数] 常用参数: -h 影响符号连接而非引用的文件 -R 递归处理...
网络游戏-在建立对等安全上下文时验证移动网络节点的方法.zip
商业编程-源码-Windows NT 2000中以用户系统级安全上下文方式创建进程的源代码.zip
通过chroot方式限制用户ssh登陆后被限定在某个目录中,可以用于作一些只读用户,让其只能访问特定目录,并通过目录下其他目录的属主及权限控制方式实现该用户为...2020-11-10 更新selinux安全上下文 有其他问题请留言。
semanage命令是用来查询与修改SELinux默认目录的安全上下文。SELinux的策略与规则管理相关命令:seinfo命令、sesearch命令、getsebool命令、setsebool命令、semanage命令。 语法格式:semanage [参数] 常用参数: ...
至少,存储过程在执行前,首先会执行预编译,(如果由于非法参数的原因)编译出错则不会执行,这在某种程度上提供一层天然的屏障。 我至今还记得大约八、九年前采用的一个权限控制系统就是通过拼凑一个SQL语句,最终...
将任何Pod /容器部署到Kubernetes或OpenShift上时,请以最小的特权,对功能的最小访问权限进行部署,并在可能的情况下(通过安全上下文和安全上下文约束(SCC))避免root(0)用户。 由于需要部署可能需要通过...
例如,在下列情况中使用允许采用指针的不安全上下文是正确的: 处理磁盘上的现有结构 涉及内部包含指针的结构的高级 COM 或平台调用方案 性能关键代码 不鼓励在其他情况下使用不安全上下文。具体地说,不应该使用不...
经过身份验证的帐户将通过PrimaryIdentity添加到IIS安全上下文和WCF上下文中,以进行进一步处理。 用 将DLL程序集添加到WCF应用程序的bin目录(fe c:\ inetpub \ wwwroot \ sealsigndssservice \ bin) 将LDAP...
Windows NT/2000 为我们提供了CreateProcessAsUser函数,它类似于CreateProcess,所不同的是新进程以用户的安全上下文方式运行。有时必须以用户系统级的安全上下文方式运行进程,CreateProcessAsUser函数并不允许...
在基于角色的访问控制...该文建立基于属性与安全上下文约束的用户角色自动指派模型,给出用户角色自动指派算法,实现用户角色指派的自动化,保证指派后系统的灵活性与安全性,为RBAC模型在大型系统中的应用创造条件。
spring_cloud_kafka_jwt PoC-通过Apache Kafka在微服务之间传播Spring Cloud JWT安全上下文
建议安全上下文以后,使用共享安全上下文对SOAP消息进行加密和签名。但是采用UserName客户端身份验证。也就是客户端提供用户名和密码才可以访问此服务。 1.身份验证(服务器):提供证书,(使用 HTTP)用于初始会话...
上下文感知学习基础,包括上下文的概念,上下文计算及应用,传感器技术,上下文信息模型,安全与个人隐私等。
安全提供者的动态上下文 描述 这是一个创建动态上下文集的简单(原始)项目您可以为不同的提供者使用不同的范围通常在 java.security.Security 上添加(删除)安全提供程序具有全局范围(JVM):有时这可能是一个...
在SQL Server 2005中建立新的用户 亲自实践 遇到了好多错误 列成文档 供参考
MDC上下文传播Spring集成MDC上下文传播的概念证明。 与SecurityContextPropagationChannelInterceptor制作方法相同。 在当前的实现中,它们尚不能合并。手动测试以为例。 解决方案准备就绪时要进行的集成测试。不...
【知识目标】 掌握: 一般权限与特殊权限 【能力目标】 能分析权限的功能 【思政目标】 ...当为“+”字符时,表示该文件在使用SElinux安全上下文的同时,还混用了其他访问控制措施(如:访问控制列表ACL)。
上下文访问控制是普适计算安全中极具挑战性的重要问题。基于使用控制模型(UCONABC),提出了普适计算的上下文访问控制模型(CACM)。CACM不仅关心授权,而且引入了职责和条件。针对普适计算医疗保健环境中的三种...