Skip to content

Your First Probe

This walkthrough creates an RBAC probe, watches it execute, and reads the result. It takes about 2 minutes.

Terminal window
kubectl create namespace sidereal-test-target
Terminal window
kubectl apply -f - <<EOF
apiVersion: sidereal.cloud/v1alpha1
kind: SiderealProbe
metadata:
name: rbac-test
namespace: sidereal-system
spec:
probeType: rbac
targetNamespace: sidereal-test-target
executionMode: observe
intervalSeconds: 300
controlMappings:
nist-800-53:
- AC-6(5)
EOF

This tells Sidereal: every 5 minutes, verify that the sidereal-probe-rbac ServiceAccount cannot perform unauthorized operations in the sidereal-test-target namespace. Record results but don’t create incidents (observe mode).

The probe executes immediately on creation, then every 5 minutes:

Terminal window
# Watch for the probe Job
kubectl get jobs -n sidereal-system -l sidereal.cloud/probe-name=rbac-test --watch

Once the Job completes:

Terminal window
kubectl get siderealproberesults -n sidereal-system \
-l sidereal.cloud/probe-name=rbac-test
Terminal window
kubectl describe siderealproberesult -n sidereal-system \
-l sidereal.cloud/probe-name=rbac-test

You should see:

  • outcome: Pass — the RBAC deny path was enforced
  • controlEffectiveness: Effective
  • integrityStatus: Verified — HMAC check passed
Terminal window
kubectl get siderealprobe rbac-test -n sidereal-system -o yaml

The .status section shows lastExecutedAt, lastOutcome, lastControlEffectiveness, and up to 10 recentResults.