若要在 SaltStack Config 中針對角色型存取控制 (RBAC) 定義角色,則必須定義允許的工作,同時指派資源存取權。工作是可以在使用者介面中執行的特定作業,例如建立、編輯或執行工作。資源是環境的元素,例如特定主節點、部屬節點、目標、檔案資料等。

工作

工作表示 SaltStack Config 中的常見使用案例。啟用工作會為角色提供完成工作所需的全部權限。

工作索引標籤包括下列選項:

工作

說明

建立和刪除新目標

角色可以建立新目標。指派給此角色的使用者可以編輯和刪除已建立的目標或在資源存取權下定義的其他目標。

目標是指一或多個 Salt 主節點中的一組部屬節點,將為其套用工作的 Salt 命令。Salt 主節點也可以像部屬節點一樣進行管理,如果正在執行部屬節點服務,也可以成為目標。請參閱〈部屬節點〉

修改 pillar 資料

角色可以檢視、編輯和刪除儲存在 pillar 中的機密資訊。屬於該角色的使用者可以編輯或刪除已建立的 pillar。如果已授與資源存取權 (僅透過 API (RaaS) 存取),則使用者還可以編輯或刪除其他 pillar。

Pillar 是在 Salt 主節點上定義並使用目標傳遞到一或多個部屬節點的資料結構。僅允許將機密的目標資料安全地傳送到相關部屬節點。請參閱 Pillar

修改檔案伺服器

角色可以檢視檔案伺服器,並且可以建立、編輯或刪除檔案。屬於該角色的使用者可以編輯或刪除已建立的檔案。如果已授與資源存取權 (僅透過 API (RaaS) 存取),則使用者還可以編輯或刪除其他檔案。

檔案伺服器是一個位置,用於儲存 Salt 特定檔案 (例如 top 檔案或狀態檔案) 以及可散佈到部屬節點的檔案 (例如系統組態檔)。請參閱〈檔案伺服器〉

對部屬節點執行任意命令

角色可以觸發工作之外的命令,以便 Salt 主節點挑選。角色不僅限於執行包括在指定工作定義中的命令。

部屬節點是執行部屬節點服務的節點,可以接聽 Salt 主節點的命令並執行請求的工作。請參閱〈部屬節點〉

接受、刪除和拒絕金鑰

角色可根據需要針對初始組態接受、刪除和拒絕部屬節點金鑰。

部屬節點金鑰允許在 Salt 主節點和 Salt 部屬節點之間進行加密通訊。請參閱〈部屬節點金鑰〉

讀取和修改使用者、角色、權限

角色可以檢視使用者和相關聯的資料,以及編輯角色和權限設定。

附註:此工作僅適用於內建管理員和超級使用者角色。

角色可用來為具有一組共同需求的多個使用者定義權限。

對 Salt 主節點執行命令

角色可以對 Salt 主節點執行命令,例如執行協調。

對 Salt 主節點執行的命令也稱為 Salt 執行器。Salt 執行器是用於在 Salt 主節點上執行便利函數的模組。請參閱〈工作〉。透過新增此權限,角色能夠使用 [部屬節點] 索引標籤下執行命令功能中的 salt-run 選項。

合規性 - 建立、編輯、刪除和評估

角色可以建立、編輯、刪除以及評估 SaltStack SecOps Compliance 原則。除了為此工作授與權限之外,還必須為希望角色對其執行動作的任何目標定義資源存取權。例如,如果希望 OracleLinuxAdmin 角色為 OracleLinux 目標定義原則,則需要為該角色指派完成此工作的權限以及對 OracleLinux 目標的資源存取權。

此工作不允許角色修復 SaltStack SecOps Compliance 原則。

SaltStack SecOps ComplianceSaltStack Config 的一項附加元件,用於管理環境中所有系統的安全合規性態勢。如需詳細資訊,請參閱〈使用和管理 SaltStack SecOps〉

備註:

需要 SaltStack SecOps 授權。

合規性 - 修復

角色可以修復在 SaltStack SecOps Compliance 評估中偵測到的任何不合規的部屬節點。

SaltStack SecOps ComplianceSaltStack Config 的一項附加元件,用於管理環境中所有系統的安全合規性態勢。請參閱〈使用和管理 SaltStack SecOps〉

備註:

需要 SaltStack SecOps 授權。

合規性 - 更新 SaltStack 內容

角色可以將更新下載至 SaltStack SecOps Compliance 安全性程式庫。

漏洞 - 建立、編輯、刪除和評估

角色可以建立、編輯、刪除以及評估 SaltStack SecOps Vulnerability 原則。除了為此工作授與權限之外,還必須為希望角色對其執行評估的任何目標定義資源存取權。

此工作不允許角色修復 SaltStack SecOps Vulnerability 原則。

SaltStack SecOps VulnerabilitySaltStack Config 的一項附加元件,用於管理環境中所有系統上的漏洞。請參閱〈使用和管理 SaltStack SecOps〉

備註:

需要 SaltStack SecOps 授權。

漏洞 - 修復

角色可以修復在 SaltStack SecOps Vulnerability 評估中偵測到的漏洞。

SaltStack SecOps VulnerabilitySaltStack Config 的一項附加元件,用於管理環境中所有系統上的漏洞。請參閱〈使用和管理 SaltStack SecOps〉

備註:

需要 SaltStack SecOps 授權。

資源存取權

透過資源存取權索引標籤,可以定義目標和工作的資源存取權。目標是指一或多個 Salt 主節點中的一組部屬節點,將為其套用工作的 Salt 命令。Salt 主節點也可以像部屬節點一樣進行管理,如果正在執行部屬節點服務,也可以成為目標。工作用於執行遠端執行工作、套用狀態和啟動 Salt 執行器。

以下說明了不同層級的資源存取權:

  • 目標
    • 唯讀 - 角色可以檢視指示的目標及其詳細資料,但無法對其進行編輯或刪除。
    • 讀取/寫入 - 角色可以檢視和編輯指示的目標。
    • 讀取/寫入/刪除 - 角色可以檢視、編輯和刪除指示的目標。
  • 工作
    • 唯讀 - 角色可以檢視指示的工作及其詳細資料,但無法對其編輯或刪除,也無法執行工作。
    • 讀取/執行 - 角色可以檢視和執行指示的工作。
    • 讀取/執行/寫入 - 角色可以檢視和編輯指示的工作以及執行該工作。
    • 讀取/執行/寫入/刪除 - 角色可以檢視、編輯和刪除指示的工作以及執行該工作。
  • 其他資源類型 - 必須使用 API (RaaS) 定義以下資源類型的存取權:請參閱設定 API 權限,或連絡管理員以尋求協助。
    • 檔案伺服器中的檔案
    • Pillar 資料
    • 驗證組態

所有其他資源類型 (工作、目標及以上所列項目除外) 不需要任何特定的資源存取設定。

允許的工作和資源存取權之間的差異

允許的工作是一類廣泛的允許動作,而資源存取權更為細微,可用於指定可對其執行動作的特定資源 (例如工作或目標),如下圖所示。


permissions-resources-concept

在下列範例中,角色可以在 Linux 目標群組上執行 test.ping。角色具有下列權限設定:

  • 對 Linux 目標的讀取權限
  • 對包含 test.ping 命令的工作的讀取/執行權限

permissions-resources-example

依預設,複製的角色會從原始角色繼承允許的工作。複製的角色不會繼承資源存取權,該權限必須單獨定義。請參閱指派對工作或目標的存取權