RBAC 用户无法在 Solaris 10 上执行 useradd

RBAC 用户无法在 Solaris 10 上执行 useradd

我正在尝试使用 RBAC 在 Solaris 10 中创建一个可以执行 useradd 和 userdel 命令的用户。但由于某些原因,在我创建配置文件、角色和用户后,当我执行 useradd 命令时,该用户收到权限被拒绝错误。我认为我正在遵循我认为正确的步骤,如下所示:

通过添加/etc/security/prof_attr “分配此配置文件”管理命令来创建 Solaris 配置文件/etc/security/exec_attr

使用roleadd命令设置角色密码添加新的 Solaris 角色 使用 rolemod 将此角色分配给配置文件

6.创建一个新用户并将该用户分配给角色添加到PATH=$PATH:/usr/sbin该用户的.profile中并将其导出。用户创建 从此用户登录到 Solaris 并运行 useradd。 Receiving error UX:useradd: ERROR: Permission denied

我在一些线程和网站中读到,要执行此操作,您必须执行 pfexec 或提供对角色的 sudo 访问权限等。但是,如果 Solaris 提供 RBAC,那么上述 steos 是按照 Solaris 文档的,所以它应该可以工作。有人可以帮助澄清这一点或我可以实现这一目标的方式吗?或者也许我错了并且遗漏了一些东西?

注意:如果我创建基于 root 的用户,我可以执行上述操作,但需要使用 RBAC 用户来实现此目的。

答案1

从您的整体描述来看,您缺少一步。你拥有的是:

  1. 创建 RBAC 配置文件/etc/security/prof_attr
  2. 创建配置文件允许的命令/etc/security/exec_attr
  3. 创建角色帐户并向其分配配置文件。roleadd -s /usr/bin/pfksh -P "Created Profile" roleA && passwd roleA
  4. 创建用户帐户并为其分配角色。useradd -R roleA user01
  5. 尝试使用分配给使用用户帐户的角色的配置文件。 (不会工作)

您有两种方法可以完成这项工作。使用您的部署,您需要以下内容:

  • 用户需要成为角色su - roleA,然后角色可以通过pfexec执行useradd。pfexec useradd ..或者只是将 pfksh shell 分配给角色用户。

  • 或者直接将配置文件分配给用户。使用 pfexec 或将 pfksh 分配给用户 shell。usermod -P "Created Profile" -s /usr/bin/pfksh user01; useradd

如果您遇到问题,可以使用它ppriv -eD useradd来查看缺少的授权。

相关内容