企业上云如何对SLS日志审计服务进行权限控制
簡介: 日志審計是信息安全審計功能的核心部分,是企業信息系統安全風險管控的重要組成部分。SLS的日志審計服務針對阿里云的多種云產品(Actiontrail、OSS、SLB、RDS、PolarDB、SAS、WAF等)提供了一站式的日志收集、存儲、查詢、可視化和告警能力,可用于支撐安全分析、合規審計等常見應用場景。
一、背景
日志審計簡介
日志審計是信息安全審計功能的核心部分,是企業信息系統安全風險管控的重要組成部分。SLS的日志審計服務針對阿里云的多種云產品(Actiontrail、OSS、SLB、RDS、PolarDB、SAS、WAF等)提供了一站式的日志收集、存儲、查詢、可視化和告警能力,可用于支撐安全分析、合規審計等常見應用場景。
?
日志審計的特點:
- 中心化采集
-
- 跨賬號:支持將多個主賬號下的日志采集到一個主賬號下的Project中。
- 一鍵式采集:一次性配置采集策略后,即可完成跨賬號自動實時發現新資源(例如新創建的RDS、SLB、OSS Bucket實例等)并實時采集日志。
- 中心化存儲:將采集到的日志存儲到某個地域的中心化Project中,方便后續查詢分析、可視化與告警、二次開發等。
- 支持豐富的審計功能
-
- 繼承日志服務現有的所有功能,包括查詢分析、加工、報表、告警、導出等功能,支持審計場景下中心化的審計等需求。
- 生態開放對接:與開源軟件、阿里云大數據產品、第三方SOC軟件無縫對接,充分發揮數據價值。
?
日志審計服務提供了統一的管理界面,便于用戶能夠便捷地進行云產品日志的采集配置。該頁面提供了對于多種云產品審計日志采集開關、存儲方式(區域化/中心化)、TTL、是否開啟威脅情報檢測等功能。
?
企業上云后面臨的權限問題
眾所周知,主賬號擁有該賬號下所有資源的所有權,可以對該賬號下對所有資源進行配置修改。企業上云后,特別是一個公司多個部門或者多個業務線進行開發的場景,如果都使用主賬號操作,風險是非常高的。而RAM則為企業解決上述問題,提供了一套簡單的統一分配權限、集中管控資源的安全資源控制體系。
企業上云后,面臨的一些常見的權限管控問題:
- 存在多用戶協同操作,RAM用戶分工不同,各司其職。
- 云賬號不想與其他RAM用戶共享云賬號密鑰,密鑰泄露風險較大。
- RAM用戶對資源的訪問方式多種多樣,資源泄露風險高。
- 某些RAM用戶離開組織時,需要收回其對資源的訪問權限。
?
企業上云后,可以通過創建、管理RAM用戶,并控制這些RAM用戶對資源的操作權限(權限最小分配原則),從而達到權限控制的目的。而日志審計服務作為云上日志安全審計的控制中心,是云上日志合規的配置入口,安全性至關重要。同樣的,我們也可以合理的利用RAM達到權限控制目的。
二、日志審計最佳實踐
為了利用RAM對日志審計服務進行權限控制,首先需要明確日志審計場景下涉及的資源:
- 日志審計APP,https://sls.console.aliyun.com/lognext/app/audit/audit_global_config可以查看。
- 存儲審計日志的Project下的資源,包括了Project、Logstore、索引、報表、數據加工任務等。Project分為兩類:
-
- 中心Project:slsaudit-center-${uid}-${region}
- 區域Project:slsaudit-region-${uid}-${region}
?
權限控制涉及的賬號類型及權限,按權限從大到小順序:
- 主賬號:
-
- 權限:天然擁有對APP、Proejct資源所有控制權限。
- 使用場景:不建議直接使用。
- 擁有日志審計寫權限的子賬號(首次開通):
-
- 權限:
-
-
- 系統權限策略:AliyunRAMFullAccess/AliyunSTSAssumeRoleAccess,用于自動創建審計需要的內置角色sls-audit-service-dispatch、sls-audit-service-monitor。
- 自定義日志審計寫最小權限:需要擁有日志審計APP的查看、配置權限,可以查看日志審計project下的數據。
-
-
- 使用場景:可以對日志審計進行首次開通及后續配置變更。
- 擁有日志審計寫權限的子賬號(非首次開通):
-
- 權限:
-
-
- 系統權限策略:AliyunRAMReadOnlyAccess/AliyunSTSAssumeRoleAccess。
- 自定義日志審計寫最小權限:需要擁有日志審計APP的查看、配置權限,可以查看日志審計project下的數據。
-
-
- 使用場景:日志審計開通后,可以對日志審計進行相關的配置變更。
- 擁有日志審計只讀權限的子賬號:
-
- 權限:
-
-
- 系統權限策略:AliyunRAMReadOnlyAccess/AliyunSTSAssumeRoleAccess。
- 自定義日志審計只讀最小權限:需要擁有日志審計APP的查看權限,可以查看日志審計project下的數據。
-
-
- 使用場景:適用于一般權限的開發者。僅可查看日志審計配置,及Project中的數據。
三、RAM子賬號日志審計操作的最小權限
1、自定義日志審計寫最小權限
{"Version": "1","Statement": [{"Effect": "Allow","Action": ["log:GetApp","log:CreateApp"],"Resource": ["acs:log:*:*:app/audit"]},{"Effect": "Allow","Action": ["log:Get*","log:List*","log:CreateJob","log:UpdateJob","log:CreateProject"],"Resource": ["acs:log:*:*:project/slsaudit-*"]}] }2、自定義日志審計只讀最小權限
相對于“自定義日志審計寫最小權限”,去掉了"log:CreateApp" "log:CreateJob" "log:UpdateJob" "log:CreateProject"等權限。
{"Version": "1","Statement": [{"Effect": "Allow","Action": ["log:GetApp"],"Resource": ["acs:log:*:*:app/audit"]},{"Effect": "Allow","Action": ["log:Get*","log:List*"],"Resource": ["acs:log:*:*:project/slsaudit-*"]}] }四、操作步驟
1、創建第三部分中提到的權限
例如創建名為audit_test的權限策略。
?
2、按照第二部分的權限列表,對子賬號進行授權
?
3、登陸子賬號進行審計操作
五、通過權限否定控制
本文第三部分提到的“RAM子賬號日志審計操作的最小權限”,主要是正向出發,盡可能地限制子賬號權限。但是某些場景下,子賬號希望擁有SLS較大的權限,但是需要把日志審計APP配置權限排除在外,這時候就需要使用RAM的權限否定功能。詳細的權限配置如下:
{"Version": "1","Statement": [{"Effect": "Deny","Action": ["log:CreateApp"],"Resource": ["acs:log:*:*:app/audit"]},{"Effect": "Deny","Action": ["log:CreateJob","log:UpdateJob","log:CreateProject"],"Resource": ["acs:log:*:*:project/slsaudit-*"]}] }例如,授予了子賬號AliyunLogFullAccess權限,子賬號會擁有全部的SLS權限。但是想收回審計APP配置權限時,可以添加自定義否定策略。
原文鏈接
本文為阿里云原創內容,未經允許不得轉載。
?
總結
以上是生活随笔為你收集整理的企业上云如何对SLS日志审计服务进行权限控制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何生成 Flink 作业的交互式火焰图
- 下一篇: 云企业网CEN-TR打造企业级私有网络