MCPcopy
hub / github.com/BishopFox/jsluice / objectMatcher

Method objectMatcher

user-patterns.go:95–124  ·  view source on GitHub ↗

objectMatcher returns a SecretMatcher for matching against objects

()

Source from the content-addressed store, hash-verified

93
94// objectMatcher returns a SecretMatcher for matching against objects
95func (u *UserPattern) objectMatcher() SecretMatcher {
96 return SecretMatcher{"(object) @matches", func(n *Node) *Secret {
97 pairs := n.NamedChildren()
98
99 matched := 0
100
101 for _, pat := range u.Object {
102 matcher := pat.pairMatcher()
103
104 for _, pair := range pairs {
105 if matcher.Fn(pair) != nil {
106 matched++
107 break
108 }
109 }
110 }
111
112 if matched != len(u.Object) {
113 return nil
114 }
115
116 secret := &Secret{
117 Kind: u.Name,
118 Data: n.AsObject().AsMap(),
119 Severity: u.Severity,
120 }
121
122 return secret
123 }}
124}
125
126// pairMatcher returns a SecretMatcher for matching against key/value pairs
127func (u *UserPattern) pairMatcher() SecretMatcher {

Callers 1

SecretMatcherMethod · 0.95

Calls 4

NamedChildrenMethod · 0.80
pairMatcherMethod · 0.80
AsObjectMethod · 0.80
AsMapMethod · 0.45

Tested by

no test coverage detected