github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/terraform/aws/apigateway/namesv2.go (about)

     1  package apigateway
     2  
     3  import (
     4  	v2 "github.com/khulnasoft-lab/defsec/pkg/providers/aws/apigateway/v2"
     5  	"github.com/khulnasoft-lab/defsec/pkg/terraform"
     6  	"github.com/khulnasoft-lab/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  }