Require a valid JWT for a workload
Scenario ica-sec-003 · about 9 minutes · 9 points · 5 grader checks
Validate end-user JWTs with a RequestAuthentication and an inline key set, and deny requests that carry no token.
- jwt
- requestauthentication
- authorizationpolicy
- request-principals
- securing-workloads
What you will practise
- Configure a RequestAuthentication with an issuer and an inline JWKS
- Require a request principal with an AuthorizationPolicy
- Tell 401 (invalid token) apart from 403 (no token, not allowed)
Start this lab
With the CLI installed and signed in, this command provisions a single node cluster on your Mac, applies the scenario setup and prints the task below.
goldenkube start ica-sec-003Task
The task text exactly as the CLI shows it. Solve it on the cluster, then run goldenkube submit.
Requirements and details
- Certification
- ICA · Istio Certified Associate
- Domain
- Securing Workloads
- Difficulty
- Hard
- Cluster topology
- Single node
- Cluster features
- None beyond the base cluster
- Recommended time
- 9 minutes
- Points
- 9
- Grader checks
- 5
- Kubernetes version
- 1.35
- Minimum CLI version
- 0.1.0
- Scenario version
- 1
- Published
Grading runs locally: 5 state checks read your cluster when you submit; the scenario passes when every check passes. Hints, the reference solution and the check definitions are available only inside the CLI, not on this page.
More Securing Workloads labs
Mesh-wide strict mTLS with a namespace exception
Require mutual TLS for the whole mesh while one legacy namespace keeps accepting plain text.
Single node · ~7 min · 7 points
- mtls
- peerauthentication
- strict
- permissive
- securing-workloads
goldenkube start ica-sec-001
Allow one service account to call two paths
Write an ALLOW AuthorizationPolicy that admits a single workload identity for GET on two paths and nothing else.
Single node · ~8 min · 8 points
- authorizationpolicy
- allow
- principals
- spiffe
- securing-workloads
goldenkube start ica-sec-002
Terminate TLS at the ingress gateway with an HTTPS redirect
Serve a host over HTTPS at the ingress gateway from a Kubernetes TLS secret and redirect plain HTTP to HTTPS.
Single node · ~10 min · 10 points
- gateway
- tls
- https-redirect
- credentialname
- securing-workloads
goldenkube start ica-sec-004
Deny by default, allow reads, deny one caller
Combine a namespace-wide deny-all with an ALLOW and a DENY AuthorizationPolicy and reason about their evaluation order.
Single node · ~9 min · 9 points
- authorizationpolicy
- deny-by-default
- allow-nothing
- deny
- securing-workloads
goldenkube start ica-sec-005
Independent community project, not affiliated with or endorsed by CNCF or The Linux Foundation. Lab results are practice feedback, not an exam score.