github.com/aquasecurity/trivy-iac@v0.8.1-0.20240127024015-3d8e412cf0ab/internal/adapters/cloudformation/aws/sns/topic.go (about) 1 package sns 2 3 import ( 4 "github.com/aquasecurity/defsec/pkg/providers/aws/sns" 5 "github.com/aquasecurity/defsec/pkg/types" 6 "github.com/aquasecurity/trivy-iac/pkg/scanners/cloudformation/parser" 7 ) 8 9 func getTopics(ctx parser.FileContext) (topics []sns.Topic) { 10 for _, r := range ctx.GetResourcesByType("AWS::SNS::Topic") { 11 12 topic := sns.Topic{ 13 Metadata: r.Metadata(), 14 ARN: types.StringDefault("", r.Metadata()), 15 Encryption: sns.Encryption{ 16 Metadata: r.Metadata(), 17 KMSKeyID: r.GetStringProperty("KmsMasterKeyId"), 18 }, 19 } 20 21 topics = append(topics, topic) 22 } 23 return topics 24 }