前文筆者介紹了Solaris 10 角色的管理的概念,下面結合相關命令進行創建角色。Solaris Management Console GUI 是管理 RBAC 的首選方法。另外,還可以使用命令行界面。雖然可以手動編輯本地 RBAC 資料庫,但是強烈建議不要進行此類編輯。以下命令可用於管理對具有 RBAC 的任務進行訪問。表1是RBAC 相關管理命令
命令名稱 | 功能說明 |
auths | 顯示用戶的授權。 |
makedbm | 生成 dbm 文件。 |
nscd | 名稱服務高速緩存守護進程,適用於高速緩存 user_attr、prof_attr 和 exec_attr 資料庫。使用 svcadm 命令重新啟動守護進程。 |
pam_roles | PAM 的角色帳戶管理模塊。檢查承擔角色的授權。 |
pfexec | 由配置文件 shell 使用以執行在 exec_attr 資料庫中指定的帶有安全屬性的命令。 |
policy.conf | 系統安全策略的配置文件。列出授予的授權、授予的許可權和其他安全信息。policy.conf 文件提供了向所有用戶授予特定許可權配置文件、特定授權和特定許可權的方法。 |
profiles | 顯示指定用戶的許可權配置文件。 |
roles | 顯示指定用戶可以承擔的角色。 |
roleadd | 向本地系統中添加角色。 |
roledel | 從本地系統中刪除角色。 |
rolemod | 在本地系統上修改角色的屬性。 |
smattrpop | 將源安全屬性資料庫合併到目標資料庫。用於需要將本地資料庫合併到名稱服務的情況。還用於未提供轉換腳本的升級。 |
smexec | 管理 exec_attr 資料庫中的項。要求驗證。 |
smmultiuser | 管理對用戶帳戶的批量操作。要求驗證。 |
smprofile | 管理 prof_attr 和 exec_attr 資料庫中的許可權配置文件。要求驗證。 |
smrole | 管理角色帳戶中的角色和用戶。要求驗證。 |
smuser | 管理用戶項。要求驗證。 |
useradd | 向系統中添加用戶帳戶。-P 選項將角色指定給用戶帳戶。 |
userdel | 從系統中刪除用戶的登錄。 |
usermod | 修改系統上的用戶帳戶屬性。 |
下面結合具體例子,介紹角色管理命令的使用。
應用實例1:通過命令行在本地創建角色:
l 承擔主管理員角色,或成為root超級用戶。
l 選擇roleadd 命令,在本地命令行上創建角色。命令如下:
# roleadd -c comment -g group -m homedir -u UID -s shell -P profile rolename |
# usermod -u UID -R rolename |
# svcadm restart system/name-service-cache |
l 要解除鎖定角色帳戶,用戶必須創建口令。如果已使用 roleadd 命令添加了本地角色,則必須執行此步驟。
% su rolename Password: <鍵入 rolename 的口令> Confirm Password: <重新鍵入 rolename 的口令> |
應用實例2 :通過命令行讓root 用戶成為角色:
l 以普通用戶身份登錄到目標主機。
l 承擔主管理員角色,或成為超級用戶。
l 創建可承擔 root 角色的本地用戶。命令如下:
$ useradd -c comment -d homedir username |
|
# passwd -r files admuser New Password: <鍵入口令> Re-enter new Password: <重新鍵入口令> passwd: password successfully changed for admuser |
# usermod -K type=role root |
root::::type=role;auths=solaris.*,solaris.grant;profiles=Web Console Management,All;lock_after_retries=no |
# usermod -R root admuser |
% roles root % su root Password: <鍵入 root 的口令> # /usr/ucb/whoami 提示符更改為角色提示符 root $ ppriv $$ |
說明:完成此過程后,將無法再以 root 身份登錄到系統,但在單用戶模式下除外。如果已為您指定 root 角色,則可以對 root 執行 su。通過將 root 用戶更改為角色,可以防止匿名 root 登錄。由於用戶必須首先登錄,然後才能承擔 root 角色,因此用戶的登錄 ID 將提供給審計服務並位於 sulog 文件中。如果將 root 用戶更改為角色,但未將該角色指定給有效用戶,或當前沒有與 root 用戶等效的現有角色,則任何用戶都不能成為超級用戶。為安全起見,至少應為一個本地用戶指定 root 角色。如果以 root 身份登錄,則無法執行此過程。您必須以自身身份登錄,然後才能對 root 執行 su。
應用實例3 :通過命令行更改角色的屬性
使用 smrole modify 命令更改本地角色的屬性:
在以下示例中,將修改 opera 角色以添加介質恢復許可權配置文件。
$ /usr/sadm/bin/smrole -r primaryadm -l <Type primaryadm password> \ modify -- -n opera -c "Handles printers, backup, AND restore" \ -p "Media Restore" |
$ /usr/sadm/bin/smrole -D nis:/examplehost/example.domain \ -r primaryadm -l <Type primaryadm password> \ modify -- -n clockm-r 108 -u 110 |
(責任編輯:A6)
[火星人 ] Solaris 10角色管理命令使用攻略已經有892次圍觀