接前一篇文章:SELinux零知識學習三十七、SELinux策略語言之約束(1)
四、SELinux策略語言之約束
SELinux對策略允許的訪問提供了更嚴格的約束機制,不管策略的allow規則如何。
SELinux有兩種類型的約束:
- constrain語句
constrain語句是最常見的約束,使得可以基于用戶、角色以及源和目標安全上下文的類型做更多的訪問限制;
- validatetrans語句
validtrans語句是后添加到SELinux中的,其使得可以基于舊的、新的和進程安全上下文,對安全上下文改變事件做更多的訪問限制。
2. 約束語句
constrain語句包含三個元素:將要應用約束的一套客體類別;為那些受約束的類別指定的一套許可和一個約束的布爾表達式。約束是由客體類別進行組織并存儲在策略中的。
constrain語句使你可以通過基于源和目標安全上下文之間的關系定義約束,對特定客體類別限制特定的許可。完整的constrain語句語法如下:
constrain 類別集 許可集 表達式;