tools/custom-organization-policy-library/build/custom-constraints/cloudkms/cloudkmsAllowedProtectionLevel.yaml (10 lines of code) (raw):

#@ load("/constraints.lib.star", "build_constraint") #@ constraint = build_constraint("cloudkmsAllowedProtectionLevel") #@ def condition(protection_levels): #@ return 'resource.versionTemplate.protectionLevel in ' + str(protection_levels) + " == false" #@ end #@ if constraint.to_generate(): name: #@ constraint.constraint_name() resourceTypes: - cloudkms.googleapis.com/CryptoKey methodTypes: - CREATE - UPDATE condition: #@ condition(constraint.params().protection_levels) actionType: DENY displayName: Require Cloud KMS keys protection level to be configured correctly description: Ensure the protection level for Cloud KMS keys is configured correctly #@ end