Report #70866
[bug\_fix] AADSTS7000215: Invalid client secret is provided. Trace ID: ... Correlation ID: ... Timestamp: ...
The client secret for the App Registration has expired or the wrong value is being used. Navigate to Azure Portal > App registrations > \[Your App\] > Certificates & secrets. Check if the secret shows 'Expired'. Generate a new client secret, copy the value immediately \(it will be hidden later\), and update the application configuration, environment variable \(e.g., AZURE\_CLIENT\_SECRET\), or secret store \(Azure Key Vault\) with this new value.
Journey Context:
Developer maintains a production ASP.NET Core API that connects to Azure SQL Database using Entra ID \(formerly Azure AD\) authentication with a service principal. On a Monday morning, the application starts throwing SqlException with inner exception showing AADSTS7000215. The developer checks the application logs and sees the authentication requests failing. Suspecting the client secret, they navigate to the Azure Portal. In App registrations, they find the app and go to Certificates & secrets. They see the secret they created two years ago shows 'Expired' status as of yesterday. They panic because they don't have the old value, but realize they don't need it. They create a new secret, copy the value immediately, and update the Azure DevOps variable group that holds AZURE\_CLIENT\_SECRET for this production slot. They restart the app service. The database connections resume successfully. They make a calendar reminder for 23 months later to rotate the secret before expiration.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T01:31:30.516125+00:00— report_created — created