Description:
This control ensures that every secret stored in Azure Key Vaults using Access Policy (Non-RBAC) authorization has a defined expiration date. Setting expiration dates enforces secret rotation, limits prolonged exposure of credentials, and reduces the risk of compromised secrets being exploited indefinitely.
Rationale:
Secrets without expiration remain valid indefinitely, increasing the impact of credential leaks and operational risk. Enforcing expiration ensures periodic rotation, improves auditability, and supports identity lifecycle policies. This aligns with security best practices and regulatory guidance for credential management.
Impact:
Applications that depend on expired secrets will fail authentication if rotation is not completed in advance. This control requires a rotation mechanism and monitoring of expiry schedules. Teams must plan for renewal workflows and proper alerting.
Default Value:
By default, secrets do not have expiration dates in Azure Key Vault unless explicitly configured.
Pre-requisites:
Azure Key Vault must already exist.
Key Vault must use the Access Policy model (Non-RBAC).
Key Vault SKU must be Standard or Premium.
Secrets must be created in the vault.
Test Plan:
Sign in to the Azure portal.
Navigate to Key Vaults and select a vault that uses Access Policies (not RBAC).
Open Secrets and review each secret.
Verify that an expiration date is defined for every secret.
If there is no expiration date, follow the implementation steps.
Implementation Steps:
Sign in to the Azure portal
Navigate to Key Vaults and select the target Key Vault.
Under the Objects section, select Secrets.
Choose the secret you want to update.
Click New version.
Ensure Enabled is set to Yes and configure an appropriate Expiration date.
Click Create to save the changes.
Backout Plan:
Go to the Azure portal and navigate to Key Vaults.
Select the targeted Key Vault.
Under Objects, select Secrets.
Choose the secret you want to roll back.
Temporarily extend the expiration by creating a New Version or removing the expiration date, if required.
References:
https://learn.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates
https://learn.microsoft.com/en-us/azure/key-vault/secrets/quick-create-port
https://learn.microsoft.com/en-us/azure/key-vault/secrets/about-secrets
https://learn.microsoft.com/en-us/azure/key-vault/general/assign-access-policy


