liveBook · Manning

Authentication and authorization

As explained in Kubernetes for Developers

Authorization is the process of determining which actions an authenticated identity may perform on system resources.

Authentication (AuthN) verifies which identity is presenting credentials; authorization (AuthZ) determines what that identity may do inside the Kubernetes cluster. A user may authenticate through platform IAM and retrieve kubectl credentials while receiving no Kubernetes permissions. RBAC then grants precise access to resources and actions. section 12.6

Kubernetes separates access decisions across these controls:

  • Platform IAM can allow cluster authentication, such as retrieving credentials, without granting actions inside the cluster. section 12.6

A developer limited to team1

A developer can create a deployment in the team1 namespace but receives Forbidden when targeting default, updating the team1 namespace, or creating a priority class until corresponding permissions are added.

How Kubernetes for Developers covers it

How deep it goes
Explains credentials, IAM, RBAC bindings, namespaces, verbs, and denial outcomes, stopping short of broader policy design.
Examples
Uses Role, RoleBinding, ClusterRole, ClusterRoleBinding, kubectl commands, and Forbidden responses for a developer identity.
What it assumes
Assumes familiarity with users, kubectl, Kubernetes resources, namespaces, and platform IAM terminology.
What you can do after
Operate/configure Kubernetes access by assigning IAM authentication and narrowly scoped RBAC permissions.
How it connects
Connects authentication with IAM, authorization with RBAC, and access testing with Kubernetes namespaces and kubectl.

Also explained in

Compare how 5 books explain authentication and authorization →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Kubernetes for Developers. The section links point to the parts of the book it draws on.