Great question! Here’s a clear, non-technical explanation and then a technical one for OIDC identity provider, especially in the context of Kubernetes and AWS.
In Simple Words:
OIDC stands for OpenID Connect.
An OIDC identity provider is like a trusted gatekeeper that verifies “who you are” on the internet or within an organization.
- If you’ve ever logged into a website using Google, Facebook, or Apple, you used an OIDC identity provider.
- In Kubernetes and AWS, the OIDC identity provider lets AWS “trust” that a Kubernetes pod is really who it says it is.
In the Context of AWS EKS and Kubernetes:
- Every EKS cluster can have an OIDC provider URL (something like
https://oidc.eks.us-west-2.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE
). - AWS uses this OIDC provider to verify which Kubernetes service account (and thus which pod) is asking for permissions.
- This enables IAM Roles for Service Accounts (IRSA)—so specific pods can get their own AWS permissions, safely and securely.
Analogy:
Imagine you’re at a club. The bouncer (AWS) will only let you in (give you permissions) if your ID badge (from OIDC provider) matches what’s on their approved list (IAM role trust policy).
In Technical Terms:
- OIDC (OpenID Connect) is an identity layer built on top of OAuth 2.0, an open standard for authentication.
- An OIDC identity provider is a service that can:
- Issue identity tokens (JWTs) after authenticating a user or system.
- Sign these tokens so other systems (like AWS) can trust them.
- In AWS EKS, the OIDC provider is set up for your cluster, and AWS recognizes the tokens your Kubernetes cluster issues to service accounts.
Why is this important?
- Secure authentication: Lets AWS know exactly which K8s pod/service account is making a request.
- Fine-grained permissions: Only the pod with the right service account and OIDC-issued token gets the IAM role.
In Summary:
- OIDC identity provider = a system that can vouch for identities in a secure, trusted way.
- In EKS, it’s the bridge between AWS IAM and Kubernetes service accounts for secure, pod-level permissions.
Here’s how to check if your AWS EKS cluster has an OIDC identity provider set up, and how to set it up if it’s missing.
A. How to Check If OIDC Provider Is Already Set Up for Your EKS Cluster
- Get your EKS cluster name and region.
- List the OIDC provider for your cluster with the AWS CLI:
aws eks describe-cluster --name <your-cluster-name> --region <region>
- Look for the
identity
section in the output:"identity": { "oidc": { "issuer": "https://oidc.eks.<region>.amazonaws.com/id/XXXXXXXXXXXXXXX" } }
- If you see the
issuer
URL, your EKS cluster has an OIDC provider endpoint.
- Look for the
- Check if the OIDC provider is associated with your AWS account:
aws iam list-open-id-connect-providers
- Look for one that matches your EKS cluster’s OIDC
issuer
URL. - Optionally, verify in the AWS Console under IAM > Identity providers.
- Look for one that matches your EKS cluster’s OIDC
B. How to Set Up (Associate) an OIDC Provider for Your EKS Cluster
If you do not see your OIDC provider listed, run:
eksctl utils associate-iam-oidc-provider \
--region <region> \
--cluster <your-cluster-name> \
--approve
Code language: HTML, XML (xml)
- This command checks if the provider exists and creates it if missing.
- It associates your EKS cluster’s OIDC issuer URL with your AWS account, enabling IAM Roles for Service Accounts (IRSA).
C. How to Check in the AWS Console
- Go to IAM > Identity providers in the AWS Management Console.
- You should see an entry of Provider Type: OpenID Connect with the URL that matches your EKS cluster’s OIDC issuer URL.
Summary Table
Step | Command |
---|---|
Check OIDC in EKS cluster | aws eks describe-cluster --name <name> --region <region> |
List OIDC providers (AWS) | aws iam list-open-id-connect-providers |
Associate OIDC with cluster | eksctl utils associate-iam-oidc-provider ... |
AWS Console | IAM > Identity Providers |
I’m a DevOps/SRE/DevSecOps/Cloud Expert passionate about sharing knowledge and experiences. I have worked at Cotocus. I share tech blog at DevOps School, travel stories at Holiday Landmark, stock market tips at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at TrueReviewNow , and SEO strategies at Wizbrand.
Do you want to learn Quantum Computing?
Please find my social handles as below;
Rajesh Kumar Personal Website
Rajesh Kumar at YOUTUBE
Rajesh Kumar at INSTAGRAM
Rajesh Kumar at X
Rajesh Kumar at FACEBOOK
Rajesh Kumar at LINKEDIN
Rajesh Kumar at WIZBRAND