Skip to content

Commit 31c1dfb

Browse files
committed
Add namespace check for workload connection in gateway rules
1 parent 35e6dae commit 31c1dfb

File tree

3 files changed

+15
-0
lines changed
  • rules
    • exposure-to-internet-via-gateway-api
    • exposure-to-internet-via-istio-ingress
    • unauthenticated-service

3 files changed

+15
-0
lines changed

rules/exposure-to-internet-via-gateway-api/raw.rego

+5
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,11 @@ is_exposed_service(svc) {
5656
svc.spec.type == "LoadBalancer"
5757
}
5858

59+
60+
wl_connected_to_service(wl, svc) {
61+
wl.metadata.namespace == svc.metadata.namespace
62+
}
63+
5964
wl_connected_to_service(wl, svc) {
6065
count({x | svc.spec.selector[x] == wl.metadata.labels[x]}) == count(svc.spec.selector)
6166
}

rules/exposure-to-internet-via-istio-ingress/raw.rego

+5
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,11 @@ is_exposed_service(svc) {
141141
svc.spec.type == "LoadBalancer"
142142
}
143143

144+
145+
wl_connected_to_service(wl, svc) {
146+
wl.metadata.namespace == svc.metadata.namespace
147+
}
148+
144149
wl_connected_to_service(wl, svc) {
145150
count({x | svc.spec.selector[x] == wl.metadata.labels[x]}) == count(svc.spec.selector)
146151
}

rules/unauthenticated-service/raw.rego

+5
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ has_unauthenticated_service(service_name, namespace, service_scan_result) if {
3434
service_scan_result.spec.ports[_].authenticated == false
3535
}
3636

37+
38+
wl_connected_to_service(wl, svc) {
39+
wl.metadata.namespace == svc.metadata.namespace
40+
}
41+
3742
wl_connected_to_service(wl, svc) if {
3843
count({x | svc.spec.selector[x] == wl.metadata.labels[x]}) == count(svc.spec.selector)
3944
}

0 commit comments

Comments
 (0)