Introduction to Workload Identity
Workload Identity on AKS on Azure enables us to assign permissions to Kubernetes workloads so they can interact with Azure resources. For example, we have an Azure Key Vault that we use to store sensitive information. To interact with Azure Key Vault, we need some form of credentials. Workload Identities are machine identities representing software workloads that require identities to interact with Azure resources. Instead of creating an identity or a service principal, we can use Workload Identity by manually attaching their credentials to the service. This way, each service can have its own identity and authenticate by itself.
In Kubernetes, we can assign a Workload Identity to our Pods. By granting the RBAC permissions to this identity, we will be able to interact with Azure Key Vault.
Here is an example of how Workload Identity works:
Figure 9.2 – Workload Identity behind the scenes (source: https://learn...