Identity & Access · wrap-up
Cheat sheet & self-check
19 questions across 6 lessons. Each answer links back to the lesson it came from.
Pick an answer to see if you got it, and why.
Q1. Why does a kubeadm cluster have a separate etcd CA?
Show answer
B. Separate trust domains limit blast radius: a certificate issued for a user or kubelet by the cluster CA is useless against etcd.
From lesson 01 · Cluster PKI & certificatesQ2. You add a new load-balancer DNS name, and kubectl complains 'x509: certificate is valid for …, not k8s-api.new.example.com'. Cause?
Show answer
B. TLS clients check that the name they connected to appears in the certificate's Subject Alternative Names.
From lesson 01 · Cluster PKI & certificatesQ3. What are sa.key and sa.pub used for?
Show answer
B. They're a key pair, not certificates: the API server signs ServiceAccount tokens with sa.key and verifies them with sa.pub.
From lesson 01 · Cluster PKI & certificatesQ4. What happens if the API server's certificate expires?
Show answer
B. Expired certificates break TLS everywhere at once. Monitor expiry and renew well before the date.
From lesson 01 · Cluster PKI & certificatesQ5. What's the difference between an Issuer and a ClusterIssuer?
Show answer
B. Use ClusterIssuers for shared, platform-wide CAs; namespaced Issuers when a team manages its own.
From lesson 02 · cert-manager in productionQ6. You need a wildcard certificate (*.apps.example.com) from Let's Encrypt. Which challenge type?
Show answer
B. Let's Encrypt issues wildcard certificates only via DNS-01, which proves control of the domain's DNS.
From lesson 02 · cert-manager in productionQ7. Why test with the Let's Encrypt staging endpoint first?
Show answer
B. Get the whole flow working on staging, then switch the issuer to production.
From lesson 02 · cert-manager in productionQ8. In a client certificate, what does Kubernetes use as the username and groups?
Show answer
B. CN=asha,O=devops authenticates as user 'asha' in group 'devops'. RBAC then decides what that identity may do.
From lesson 03 · Authentication methodsQ9. Why are client certificates a poor choice for human users?
Show answer
B. Kubernetes has no certificate revocation. Humans should authenticate through an identity provider (OIDC), where access can be removed instantly.
From lesson 03 · Authentication methodsQ10. What's special about the ServiceAccount tokens mounted into pods today?
Show answer
B. Bound tokens expire and become invalid when the pod is deleted, far safer than the old long-lived token Secrets.
From lesson 03 · Authentication methodsQ11. Why use a username and group prefix such as 'oidc:'?
Show answer
B. Without a prefix, someone who can create a group called 'system:masters' in the IdP could gain cluster-admin. Prefixes keep namespaces apart.
From lesson 04 · OIDC login for kubectlQ12. Where does the user's password or MFA challenge happen in an OIDC login?
Show answer
B. The API server never sees credentials. It only validates the token's signature, issuer, audience and expiry.
From lesson 04 · OIDC login for kubectlQ13. What does kubelogin do?
Show answer
B. kubectl calls kubelogin through the kubeconfig's exec section; kubelogin returns a fresh ID token each time it's needed.
From lesson 04 · OIDC login for kubectlQ14. Where should MFA be enforced for kubectl access?
Show answer
B. Kubernetes has no MFA of its own. It trusts tokens from an IdP that has already enforced password + second factor (and possibly device and location policies).
From lesson 05 · SSO, federation & MFAQ15. What makes a good break-glass credential?
Show answer
B. Break-glass must work when SSO is down, but using it must be rare, visible and followed by rotation.
From lesson 05 · SSO, federation & MFAQ16. Why put an identity broker (e.g. Dex or Keycloak) between the enterprise IdP and many clusters?
Show answer
B. A broker normalises identities and reduces the number of trust relationships to manage.
From lesson 05 · SSO, federation & MFAQ17. Why is 'create pods' in a namespace close to admin in that namespace?
Show answer
B. Creating workloads lets you choose serviceAccountName and volumes. Treat workload-creation rights as access to everything that namespace's identities can do.
From lesson 06 · RBAC design at scaleQ18. What does an aggregated ClusterRole do?
Show answer
B. Adding the label rbac.authorization.k8s.io/aggregate-to-edit: 'true' to a CRD's role extends the built-in edit role, so teams get access to new resources automatically.
From lesson 06 · RBAC design at scaleQ19. Where should RoleBindings for teams be defined?
Show answer
B. Git gives review, history and drift correction: every access change has an author, a reviewer and a reason.
From lesson 06 · RBAC design at scale