系统管理指南:安全性服务

Procedure如何更改用户的 RBAC 属性

用户属性包括口令、权限配置文件和授权。为用户提供管理功能的最安全的方法是将角色指定给用户。有关说明,请参见直接指定安全属性时的安全注意事项

开始之前

要更改用户属性,您必须已承担主管理员角色或已切换到超级用户。

    使用以下方法之一更改用户的 RBAC 属性。

    • 使用 Solaris Management Console 中的“用户”工具。

      要启动该控制台,请参见如何在 Solaris Management Console 中承担角色。请按照左侧窗格中的说明在“用户帐户”中修改用户。有关更详细的信息,请参见联机帮助。


      提示 –

      为用户直接指定授权、特权或权限配置文件并不是一个好的做法。首选方法是将角色指定给用户。然后,用户承担角色以执行特权操作。


    • 使用 usermod 命令。

      此命令可修改本地名称服务中定义的用户的属性。


      $ usermod -R rolename username
      
      -R rolename

      现有本地角色的名称。

      username

      要修改的现有本地用户的名称。

      有关更多命令选项,请参见 usermod(1M) 手册页。

    • 使用包含 modify 子命令的 smuser 命令。

      此命令可修改 NIS、NIS+ 或 LDAP 等分布式名称服务中的用户的属性。此命令将作为 Solaris Management Console 服务器的客户机运行。


      $ /usr/sadm/bin/smuser -D domain-name \ 
      
      -r admin-role -l <Type admin-role password> \
      
      modify -- -n username -a rolename
      
      -D domain-name

      要管理的域的名称。

      -r admin-role

      可以修改角色的管理角色的名称。管理角色必须具有 solaris.role.assign 授权。如果要修改已承担的角色,则该角色必须具有 solaris.role.delegate 授权。

      -l

      admin-role 的口令输入提示。

      --

      验证选项和子命令选项之间必需的分隔符。

      -n username

      指定了 rolename 的用户的名称。

      -a rolename

      将指定给 username 的角色的名称。您可以指定多个 -a rolename 选项。

      有关更多命令选项,请参见 smuser(1M) 手册页。


示例 9–16 通过命令行修改本地用户的 RBAC 属性

在本示例中,用户 jdoe 现在可以承担系统管理员的角色。


$ usermod -R sysadmin jdoe


示例 9–17 使用 smuser 命令修改用户的 RBAC 属性

在本示例中,为用户 jdoe 指定了两个角色:系统管理员和操作员。由于该用户和这两个角色是在本地定义的,因此不必使用 -D 选项。


$ /usr/sadm/bin/smuser -r primaryadm -l <Type primaryadm password> \

modify -- -n jdoe -a sysadmin -a operadm

在以下示例中,该用户是在 NIS 名称服务中定义的。因此,需要使用 -D 选项。两个角色是在名称服务中定义的。角色 root 是在本地定义的。


$ /usr/sadm/bin/smuser -D nis:/examplehost/example.domain \

-r primaryadm -l <Type primaryadm password> \

modify -- -n jdoe -a sysadmin -a operadm -a root