搜索

7.4. 为 MCS 中的用户分配类别

download PDF

您可以通过为 Linux 用户分配类别来定义用户授权。分配了类别的用户可以访问和修改用户类别子集的文件。用户也可以为他们自己分配到的类别分配文件。

无法将 Linux 用户分配给在为相关 SELinux 用户定义的安全范围之外的类别。

注意

类别访问权限在登录期间分配。因此,在用户再次登录前,用户无法访问新分配的类别。同样,如果您撤销了对类别的访问权限,这仅在用户再次登录后有效。

先决条件

  • SELinux 模式设置为 enforcing
  • SELinux 策略被设置为 targetedmls
  • 已安装 policycoreutils-python-utils 软件包。
  • Linux 用户被分配给 SELinux 受限用户:

    • 非特权用户将分配给 user_u.
    • 特权用户被分配给 staff_u

步骤

  1. 定义 SELinux 用户的安全范围。

    # semanage user -m -rs0:c0,c1-s0:c0.c9 <user_u>

    使用 setrans.conf 文件中的类别号 c0c1023 或 category 标签。如需更多信息,请参阅 MCS 中的定义类别标签

  2. 为 Linux 用户分配 MCS 类别。您只能指定相关 SELinux 用户定义的范围内的范围:

    # semanage login -m -rs0:c1 <Linux.user1>
    注意

    您可以使用 chcat 命令从 Linux 用户添加或删除类别。以下示例添加 <category1> 并从 <Linux.user1><Linux.user2> 中删除 <category2>

    # chcat -l -- +<category1>,-<category2> <Linux.user1>,<Linux.user2>

    在使用 -<category> 语法前,您必须在命令行上指定 --。否则,chcat 命令会错误地将类别删除作为命令选项进行解译。

验证

  • 列出分配给 Linux 用户的类别:

    # chcat -L -l <Linux.user1>,<Linux.user2>
    <Linux.user1>: <category1>,<category2>
    <Linux.user2>: <category1>,<category2>

其他资源

  • chcat (8) 手册页
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.