github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/pkg/providers/google/compute/instance.go (about)

     1  package compute
     2  
     3  import (
     4  	defsecTypes "github.com/khulnasoft-lab/defsec/pkg/types"
     5  )
     6  
     7  type Instance struct {
     8  	Metadata                    defsecTypes.Metadata
     9  	Name                        defsecTypes.StringValue
    10  	NetworkInterfaces           []NetworkInterface
    11  	ShieldedVM                  ShieldedVMConfig
    12  	ServiceAccount              ServiceAccount
    13  	CanIPForward                defsecTypes.BoolValue
    14  	OSLoginEnabled              defsecTypes.BoolValue
    15  	EnableProjectSSHKeyBlocking defsecTypes.BoolValue
    16  	EnableSerialPort            defsecTypes.BoolValue
    17  	BootDisks                   []Disk
    18  	AttachedDisks               []Disk
    19  }
    20  
    21  type ServiceAccount struct {
    22  	Metadata  defsecTypes.Metadata
    23  	Email     defsecTypes.StringValue
    24  	IsDefault defsecTypes.BoolValue
    25  	Scopes    []defsecTypes.StringValue
    26  }
    27  
    28  type NetworkInterface struct {
    29  	Metadata    defsecTypes.Metadata
    30  	Network     *Network
    31  	SubNetwork  *SubNetwork
    32  	HasPublicIP defsecTypes.BoolValue
    33  	NATIP       defsecTypes.StringValue
    34  }
    35  
    36  type ShieldedVMConfig struct {
    37  	Metadata                   defsecTypes.Metadata
    38  	SecureBootEnabled          defsecTypes.BoolValue
    39  	IntegrityMonitoringEnabled defsecTypes.BoolValue
    40  	VTPMEnabled                defsecTypes.BoolValue
    41  }