在雲端與資安架構中,Tag 與 Label 經常被混用,但兩者的設計目的與強制程度截然不同。搞清楚這個差異,是建立正確存取控制與資源管理策略的第一步。
Label:MAC 架構下的強制安全屬性
Label(標籤) 是強制存取控制(MAC, Mandatory Access Control)架構的核心元件。每個受保護的資源都必須附加 Label,用以表示其敏感度等級(如 Confidential、Secret、Top Secret)。存取決策由系統強制執行,使用者無法自行繞過或修改。Label 決定的核心問題是:「你有沒有資格存取這份資料?」在 SELinux、MLS(Multi-Level Security)等系統中,Label 是不可或缺的強制屬性,錯誤設定將直接導致存取被拒。
Tag:彈性的中繼資料鍵值對
Tag(標記) 是附加於資源的自由形式鍵值對,設計目的是分類、管理與追蹤資產。Tag 不影響存取控制邏輯,而是回答:「這個資源是什麼、屬於誰、用在哪個環境?」例如 env=production、owner=backend-team。Tag 可隨時新增、修改或刪除,不需要特殊授權。AWS、GCP、Azure 等雲端平台廣泛使用 Tag 進行成本分攤、資源篩選與自動化操作。
💡 核心差異整理
- 強制性:Label 由系統強制執行,Tag 完全自由選用。
- 用途:Label 決定「能否存取」,Tag 描述「這是什麼」。
- 可變性:Label 不可隨意修改,Tag 可自由增刪變更。
- 應用場景:Label 用於 MAC/資安合規,Tag 用於資源管理與成本追蹤。
正確區分 Label 與 Tag,能避免將管理屬性誤用於安全決策,也能防止以 Tag 替代強制控制而造成的資安漏洞。安全靠 Label 把關,管理靠 Tag 梳理,兩者各司其職,缺一不可。
📚 參考文獻
- NSA — SELinux Overview:SELinux MAC 與 Label 機制的官方說明。
- AWS — Tagging AWS Resources:Tag 在雲端資源管理上的官方最佳實踐。
- NIST SP 800-53 — Security and Privacy Controls:MAC 與 Label 在合規框架中的定義。
⚠️ 本文內容基於撰寫時的最新資訊,實際應用時請參考官方文件的最新版本。
留言
張貼留言