github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/pkg/providers/aws/ec2/launch.go (about)

     1  package ec2
     2  
     3  import (
     4  	defsecTypes "github.com/khulnasoft-lab/defsec/pkg/types"
     5  )
     6  
     7  type LaunchConfiguration struct {
     8  	Metadata          defsecTypes.Metadata
     9  	Name              defsecTypes.StringValue
    10  	AssociatePublicIP defsecTypes.BoolValue
    11  	RootBlockDevice   *BlockDevice
    12  	EBSBlockDevices   []*BlockDevice
    13  	MetadataOptions   MetadataOptions
    14  	UserData          defsecTypes.StringValue
    15  }
    16  
    17  type LaunchTemplate struct {
    18  	Metadata defsecTypes.Metadata
    19  	Instance
    20  }
    21  
    22  func (i *LaunchConfiguration) RequiresIMDSToken() bool {
    23  	return i.MetadataOptions.HttpTokens.EqualTo("required")
    24  }
    25  
    26  func (i *LaunchConfiguration) HasHTTPEndpointDisabled() bool {
    27  	return i.MetadataOptions.HttpEndpoint.EqualTo("disabled")
    28  }