github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/cloudformation/aws/workspaces/workspace.go (about)

     1  package workspaces
     2  
     3  import (
     4  	"github.com/khulnasoft-lab/defsec/pkg/providers/aws/workspaces"
     5  	"github.com/khulnasoft-lab/defsec/pkg/scanners/cloudformation/parser"
     6  )
     7  
     8  func getWorkSpaces(ctx parser.FileContext) (workSpaces []workspaces.WorkSpace) {
     9  	for _, r := range ctx.GetResourcesByType("AWS::WorkSpaces::Workspace") {
    10  		workspace := workspaces.WorkSpace{
    11  			Metadata: r.Metadata(),
    12  			RootVolume: workspaces.Volume{
    13  				Metadata: r.Metadata(),
    14  				Encryption: workspaces.Encryption{
    15  					Metadata: r.Metadata(),
    16  					Enabled:  r.GetBoolProperty("RootVolumeEncryptionEnabled"),
    17  				},
    18  			},
    19  			UserVolume: workspaces.Volume{
    20  				Metadata: r.Metadata(),
    21  				Encryption: workspaces.Encryption{
    22  					Metadata: r.Metadata(),
    23  					Enabled:  r.GetBoolProperty("UserVolumeEncryptionEnabled"),
    24  				},
    25  			},
    26  		}
    27  
    28  		workSpaces = append(workSpaces, workspace)
    29  	}
    30  	return workSpaces
    31  }