github.com/aquasecurity/trivy-iac@v0.8.1-0.20240127024015-3d8e412cf0ab/internal/adapters/terraform/aws/apigateway/namesv2.go (about)

     1  package apigateway
     2  
     3  import (
     4  	v2 "github.com/aquasecurity/defsec/pkg/providers/aws/apigateway/v2"
     5  	"github.com/aquasecurity/defsec/pkg/terraform"
     6  	"github.com/aquasecurity/defsec/pkg/types"
     7  )
     8  
     9  func adaptDomainNamesV2(modules terraform.Modules) []v2.DomainName {
    10  
    11  	var domainNames []v2.DomainName
    12  
    13  	for _, module := range modules {
    14  		for _, nameBlock := range module.GetResourcesByType("aws_apigatewayv2_domain_name") {
    15  			domainName := v2.DomainName{
    16  				Metadata:       nameBlock.GetMetadata(),
    17  				Name:           nameBlock.GetAttribute("domain_name").AsStringValueOrDefault("", nameBlock),
    18  				SecurityPolicy: types.StringDefault("TLS_1_0", nameBlock.GetMetadata()),
    19  			}
    20  			if config := nameBlock.GetBlock("domain_name_configuration"); config.IsNotNil() {
    21  				domainName.SecurityPolicy = config.GetAttribute("security_policy").AsStringValueOrDefault("TLS_1_0", config)
    22  			}
    23  			domainNames = append(domainNames, domainName)
    24  		}
    25  	}
    26  
    27  	return domainNames
    28  }