接下來的一部分描述了系統登錄, 而且解釋了更多的關於使用者安全上下文一些內容。 本章的最後部分討論permissive模式和enforcing模式。
4.1在登錄時提供使用者上下文
在這一個階段,你應該要重新開機系統並等待那個登錄的提示。 當你安裝了 selinux 的缺省策略包後 (Fedora上是策略的原始程式碼包), 政策檔的安裝使你能夠以一個缺省使用者角色登錄系統。 (當我們還沒有沒有添加一個屬於我們自己的使用者的時候)
以root身份正常登錄你的系統。 你的安全上下文預設情況下為 root:user_r:user_t。 id 命令顯示的類型和你的安全上下文顯示應該是相同的,如下所示我們需要看安全上下文部分,所以不必關心其它欄位):
uid=0(root) gid=0(root) groups=0(root) coNtext=root:user_r:user_t
所以安全上下文是
root:user_r:user_t
現在我們假設你先前已經把你自己的帳戶設置成另外的一個角色。 你可以參考 第五章: 建立使用者帳戶 .。 對於角色轉變有兩個方法。 第一是 , 你登錄的時候。 假設消費者 faye 被認可進入 sysadm_t 域。 消費者 faye 在主控台登錄。 在那 "Your default coNtext is faye:user_r:user_t. Do you want to choose a different one? [n]" 這是提示, 她選擇, y 並按了回車。 她將會見到如下資訊:
[1] faye:user_r:user_t
[2] faye:sysadm_r:sysadm_t
Enter number of choice:
在這一個例子中, 你能見到那消費者身份 " faye" 先前已經被允許訪問sysadm_r 角色和 sysadm_t 域。 這裡將會被顯示的選項是那些你的消費者身份已經被允許訪問的物件。 請注意,這在舊的 SE Linux 已經實現了, 而且將會在新的 SE Linux(在寫這文檔的時候是不可以的) 中被設置為可配置選項, 預設的設置為關閉(OFF)。
如果使用者faye 選擇了選項二 ( 變成 sysadm_r) 然後運行id命令, 她將會見到安全上下文的內容為:
coNtext=faye:sysadm_r:sysadm_t
意味著他現在是 sysadm_r 角色。
接下來是第二個改變使用者安全上下文的方法。
4.2用 newrole -r 命令改變上下文
變更你的安全上下文的第二個方法將使用 newrole-r 的指令。 語法是
newrole -r role
這裡的role 替換你想要轉換成什麼角色。 假設是sysadm_r。 那麼既可以運行:
newrole -r sysadm_r
你將會被要求為你的消費者身份提供密碼, 你可以運行id指令檢查。 如果你沒有授權進入一個新的角色, 你將會見到這樣的顯示(假設消費者fred 嘗試運行的指令)
fred:sysadm_r:sysadm_t is not a valid coNtext
這一個資訊意味著fred使用者不能進入 sysadm_r:sysadm_t 角色:域,因為他沒有被授權可以這麼做。
在成功地變更角色之後, 運行id指令檢查你的安全上下文。