/
cognito.go
35 lines (26 loc) · 990 Bytes
/
cognito.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package cognito
import (
"sync"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/padok-team/yatas/plugins/commons"
)
func RunChecks(wa *sync.WaitGroup, s aws.Config, c *commons.Config, queue chan []commons.Check) {
var checkConfig commons.CheckConfig
checkConfig.Init(c)
var checks []commons.Check
cognitoPools := GetCognitoPools(s)
cognitoPoolsDetailed := GetDetailedCognitoPool(s, cognitoPools)
cognitoUserPools := GetCognitoUserPools(s)
cognitoUserPoolsDetailed := GetDetailedCognitoUserPool(s, cognitoUserPools)
go commons.CheckTest(checkConfig.Wg, c, "AWS_COG_001", CheckIfCognitoAllowsUnauthenticated)(checkConfig, cognitoPoolsDetailed, "AWS_COG_001")
go commons.CheckTest(checkConfig.Wg, c, "AWS_COG_002", CheckIfCognitoSelfRegistration)(checkConfig, cognitoUserPoolsDetailed, "AWS_COG_002")
go func() {
for t := range checkConfig.Queue {
t.EndCheck()
checks = append(checks, t)
checkConfig.Wg.Done()
}
}()
checkConfig.Wg.Wait()
queue <- checks
}