Building nodes, certnode, and edges
This commit is contained in:
parent
00bfb5eaaf
commit
380e51229b
18
main.go
18
main.go
|
@ -27,6 +27,7 @@ func main() {
|
|||
wg.Add(2)
|
||||
|
||||
go broker.ReadEventFromKafka()
|
||||
|
||||
// certstream
|
||||
go func() {
|
||||
for {
|
||||
|
@ -37,21 +38,23 @@ func main() {
|
|||
rawNode := models.WrapCertStreamData(*data)
|
||||
models.SaveRaw("raw_certstream.json", rawNode)
|
||||
|
||||
fingerprintNode := models.BuildNode("certstream", "fingerprint", data.Data.LeafCert.Fingerprint)
|
||||
models.SaveNode("nodes.json", fingerprintNode)
|
||||
models.BuildEdge("certstream", rawNode.ID, fingerprintNode.ID)
|
||||
fmt.Println(fingerprintNode)
|
||||
certNode := models.BuildCertNode(rawNode)
|
||||
models.SaveCertNode("nodes.json", certNode)
|
||||
mainNode := models.BuildNode("certstream", "certstream", certNode.ID)
|
||||
models.SaveNode("nodes.json", mainNode)
|
||||
models.BuildEdge("certstream", rawNode.ID, mainNode.ID)
|
||||
models.BuildEdge("certstream", mainNode.ID, certNode.ID)
|
||||
fmt.Println(certNode)
|
||||
allDomains := data.Data.LeafCert.AllDomains
|
||||
var edge *models.Edge
|
||||
for _, domain := range allDomains {
|
||||
domainNode := models.BuildNode("certstream", "domain", domain)
|
||||
models.SaveNode("nodes.json", domainNode)
|
||||
edge = models.BuildEdge("certstream", fingerprintNode.ID, domainNode.ID)
|
||||
edge = models.BuildEdge("certstream", certNode.ID, domainNode.ID)
|
||||
fmt.Println(edge)
|
||||
models.SaveEdge(edge)
|
||||
|
||||
}
|
||||
broker.SendEventToKafka(Conn, *fingerprintNode)
|
||||
// broker.SendEventToKafka(Conn, *fingerprintNode)
|
||||
}
|
||||
|
||||
case err := <-errStream:
|
||||
|
@ -61,6 +64,7 @@ func main() {
|
|||
return
|
||||
}
|
||||
}
|
||||
|
||||
}()
|
||||
|
||||
// pastebin
|
||||
|
|
|
@ -38,6 +38,7 @@ func BuildCertNode(rawNode *CertStreamWrapper) *CertNode {
|
|||
|
||||
// CertNode represents our custom struct of data extraction from CertStream.
|
||||
type CertNode struct {
|
||||
ID string `json:"id"`
|
||||
Fingerprint string `json:"fingerprint"`
|
||||
NotBefore string `json:"notBefore"`
|
||||
NotAfter string `json:"notAfter"`
|
||||
|
|
Loading…
Reference in a new issue