合规性即代码,规则是企业合规要求的代码式诠释,把合规条款对应成一段规则代码,代码的本质是对一项资源配置的判断逻辑。配置审计服务使用函数计算服务的函数来承载规则代码,称之为“规则函数”,在配置审计服务中引用规则函数后,配置关联的资源、触发机制等信息后,就构成了配置审计服务中的规则。

在实际的合规监控中,就是通过实时的资源配置变更触发规则函数的执行,来判断某个资源配置是否合规的。多个规则的组合就实现了对整个资源配置的合规监控。

规则的定义

规则的本质是一段判断逻辑,判断资源的某一个配置项是否合规,具备以下特点:

  • 规则函数的入参是通过资源的查询API,可以获取的配置项,如资源的规格、所属Region、名称、状态、端口/网口开关状态等。入参名称与配置项名称保持一致。
  • 规则函数的逻辑是对入参值的判断,判断逻辑由您的代码决定,比如当SLB的HTTPS监听状态为“开”时,认为“合规”。那么入参就是SLB的资源上代表HTTPS监听状态的配置字段,而当该字段值表示“关闭”时,认为“不合规”。
  • 规则函数的出参是合规的结果。

规则指向的资源类型

在函数计算中定义完的规则函数,此时还不具有目标指向性,并没有声明指向哪个资源类型,且不同资源间可能存在同名的配置参数,仅仅根据规则函数的入参设置无法实现准确的合规评估。

所以需要在配置审计中,将已经创建好的规则函数与确定的资源类型绑定。当该类型类型的实体资源发生配置变更时,系统先找到资源关联的规则有哪些,再根据具体哪个配置发生了变更来决定要触发哪条规则。

规则的触发

上述已经提到,资源发生配置变更时,配置审计能够准确知道是哪些配置发生了变更。以变更了的参数作为入参的规则函数就会被触发执行,评估本次变更的结果是否合规。所以,规则函数的入参名称要与实际资源配置的参数名称保持一致。

此外,配置审计还支持您将规则设置为定时触发,可定期为您执行合规评估。

合规评估的结果

配置审计将获取的变更结果作为入参传入规则函数,规则函数返回合规结果给配置审计,在配置审计控制台以各种方式为您呈现和统计。可参考查看规则评估结果的说明。

您可以在函数计算服务中自定义规则函数,参见自定义规则的开发。也可以使用配置审计为您准备的预设规则,参见阿里云预设规则列表