github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/terraform/nifcloud/nas/nas_security_group.go (about) 1 package nas 2 3 import ( 4 "github.com/khulnasoft-lab/defsec/pkg/providers/nifcloud/nas" 5 "github.com/khulnasoft-lab/defsec/pkg/terraform" 6 defsecTypes "github.com/khulnasoft-lab/defsec/pkg/types" 7 ) 8 9 func adaptNASSecurityGroups(modules terraform.Modules) []nas.NASSecurityGroup { 10 var nasSecurityGroups []nas.NASSecurityGroup 11 12 for _, resource := range modules.GetResourcesByType("nifcloud_nas_security_group") { 13 nasSecurityGroups = append(nasSecurityGroups, adaptNASSecurityGroup(resource)) 14 } 15 return nasSecurityGroups 16 } 17 18 func adaptNASSecurityGroup(resource *terraform.Block) nas.NASSecurityGroup { 19 var cidrs []defsecTypes.StringValue 20 21 for _, rule := range resource.GetBlocks("rule") { 22 cidrs = append(cidrs, rule.GetAttribute("cidr_ip").AsStringValueOrDefault("", resource)) 23 } 24 25 return nas.NASSecurityGroup{ 26 Metadata: resource.GetMetadata(), 27 Description: resource.GetAttribute("description").AsStringValueOrDefault("", resource), 28 CIDRs: cidrs, 29 } 30 }