Checkov自定义策略无法检测变量传入的违规存储账号名该如何配置
解决方法
你需要在自定义策略的definition配置块中新增evaluate_variables: true参数,开启变量值自动解析能力。该参数默认值为false,因此默认状态下自定义策略仅会检测资源属性的硬编码值,不会解析属性引用的变量、变量默认值等动态取值。
修改后完整的自定义策略文件如下:
metadata: name: "Ensure that storage account has no special characters" category: "convention" id: "SCV_VARIABLE_01" definition: resource_types: - "azurerm_storage_account" attribute: "name" operator: regex_match value: "^[a-z0-9]{3,24}$" evaluate_variables: true
如果你的存储账号名是通过tfvars文件传入而非使用变量默认值,还需要在执行Checkov扫描的Docker命令中添加--var-file <tfvars文件路径>参数,保证Checkov可以读取到实际传入的变量值完成检测。
内容的提问来源于stack exchange,提问作者santosh.a
相关产品推荐
相关产品推荐

