当前位置:主页 > 查看内容

企业上云如何对SLS日志审计服务进行权限控制

发布时间:2021-04-28 00:00| 位朋友查看

简介:一、背景日志审计简介 日志审计是信息安全审计功能的核心部分 是企业信息系统安全风险管控的重要组成部分。SLS的 日志审计服务 针对阿里云的多种云产品 Actiontrail、OSS、SLB、RDS、PolarDB、SAS、WAF等 提供了一站式的日志收集、存储、查询、可视化和告警……
一、背景日志审计简介

日志审计是信息安全审计功能的核心部分 是企业信息系统安全风险管控的重要组成部分。SLS的日志审计服务针对阿里云的多种云产品 Actiontrail、OSS、SLB、RDS、PolarDB、SAS、WAF等 提供了一站式的日志收集、存储、查询、可视化和告警能力 可用于支撑安全分析、合规审计等常见应用场景。

image.png

日志审计的特点

中心化采集跨账号 支持将多个主账号下的日志采集到一个主账号下的Project中。一键式采集 一次性配置采集策略后 即可完成跨账号自动实时发现新资源 例如新创建的RDS、SLB、OSS Bucket实例等 并实时采集日志。中心化存储 将采集到的日志存储到某个地域的中心化Project中 方便后续查询分析、可视化与告警、二次开发等。支持丰富的审计功能继承日志服务现有的所有功能 包括查询分析、加工、报表、告警、导出等功能 支持审计场景下中心化的审计等需求。生态开放对接 与开源软件、阿里云大数据产品、第三方SOC软件无缝对接 充分发挥数据价值。


日志审计服务提供了统一的管理界面 便于用户能够便捷地进行云产品日志的采集配置。该页面提供了对于多种云产品审计日志采集开关、存储方式 区域化/中心化 、TTL、是否开启威胁情报检测等功能。

image.png

企业上云后面临的权限问题

众所周知 主账号拥有该账号下所有资源的所有权 可以对该账号下对所有资源进行配置修改。企业上云后 特别是一个公司多个部门或者多个业务线进行开发的场景 如果都使用主账号操作 风险是非常高的。而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的权限策略。

image.png

2、按照第二部分的权限列表 对子账号进行授权

image.png

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配置权限时 可以添加自定义否定策略。

image.png



本文转自网络,原文链接:https://developer.aliyun.com/article/783833
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐