keyvault-csi-driver

Mount Azure Key Vault secrets into Kubernetes pods via SecretProviderClass.

7|1|Updated Jul 12, 2026
One-click install
npx skills add https://github.com/julianobarbosa/claude-code-skills --skill keyvault-csi-driver
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: keyvault-csi-driver
Source: https://github.com/julianobarbosa/claude-code-skills/tree/main/skills/keyvault-csi-driver-skill
Command: npx skills add https://github.com/julianobarbosa/claude-code-skills --skill keyvault-csi-driver

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires azure-cli, and includes scripts (resource) and references (resource) components.

What problem does it solves?

This Skill simplifies and secures the process of injecting secrets, keys, and certificates from Azure Key Vault directly into Kubernetes pods. It eliminates the need to store sensitive data in Kubernetes Secrets or application code, reducing attack surface and ensuring compliance.

Core Features & Use Cases

  • Dynamic Secret Injection: Mount Key Vault secrets as files into pods or sync them to Kubernetes Secrets.
  • Managed Identity Integration: Authenticate securely to Key Vault using Azure Managed Identities, avoiding hardcoded credentials.
  • Automated Rotation: Supports automatic rotation of secrets, ensuring applications always use the latest versions.
  • Use Case: Configure a database password stored in Key Vault to be mounted as a file in your application pod, and also synced to a Kubernetes Secret for other tools to consume, all without manual intervention.

Quick Start

Use the keyvault-csi-driver skill to create a SecretProviderClass for my 'my-app' in namespace 'dev', fetching the 'my-db-password' secret from 'kv-my-dev' Key Vault.

Frequently Asked Questions about keyvault-csi-driver

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I inject secrets from Azure Key Vault into Kubernetes pods?

Use the Secrets Store CSI Driver to mount Key Vault secrets directly into pods as files or sync them to Kubernetes Secrets. Create a SecretProviderClass resource that maps Key Vault objects to pod volumes, authenticate via managed identity, and the driver handles injection without storing credentials in your cluster.

Can I use managed identity to authenticate Kubernetes pods to Azure Key Vault?

Yes. Managed identity eliminates hardcoded credentials by allowing pods to authenticate to Key Vault securely. Configure your pod identity and grant it RBAC or access policy permissions on Key Vault, then reference it in your SecretProviderClass for automatic authentication.

What's the best way to handle automatic secret rotation in Kubernetes?

The Secrets Store CSI Driver supports automatic rotation of Key Vault secrets. Mount secrets as files in pods—the driver refreshes them at configurable intervals—and optionally sync rotated secrets to Kubernetes Secrets so dependent applications stay current without manual restarts.

How do I troubleshoot 403 permission errors when accessing Key Vault from Kubernetes?

Verify your pod identity has RBAC or access policy permissions on the Key Vault and specific secrets or certificates. Check SecretProviderClass configuration for correct Key Vault name and object references, and confirm managed identity is properly bound to your pod and workload.

Can I manage secrets across multiple Kubernetes clusters and namespaces with Key Vault?

Yes. Create SecretProviderClass resources in each namespace and cluster, all pointing to the same Key Vault. Use managed identities scoped to each cluster, grant appropriate RBAC permissions per cluster, and the CSI Driver handles namespace-isolated secret injection consistently.

Do I need to store certificates in Key Vault separately from secrets in Kubernetes?

No. Key Vault stores certificates, keys, and secrets in a single vault. The Secrets Store CSI Driver maps any object type—certificate, key, or secret—to your SecretProviderClass and injects them as files or synced Kubernetes Secrets with the same mechanism.