AADSTS7000222 - BadRequest 或 InvalidClientSecret 错误
本文介绍如何识别和解决AADSTS7000222
尝试创建或升级Microsoft Azure Kubernetes 服务(AKS)群集时发生的错误BadRequest
InvalidClientSecret
(或)。
先决条件
现象
尝试创建或升级 AKS 群集时,会收到以下错误消息之一。
错误代码 | 消息 |
---|---|
BadRequest |
ServicePrincipalProfile 中的凭据无效。 有关详细信息,请参阅 https://aka.ms/aks-sp-help 。 (详细信息:adal:刷新请求失败。 状态代码 = “401”。 响应正文:{“error”: “invalid_client”, “error_description”: “AADSTS7000222: 应用”<application-id>“提供的客户端密钥已过期。访问Azure 门户为应用创建新密钥:https://aka.ms/NewClientSecret或考虑使用证书凭据增强安全性:https://aka.ms/certCreds” |
InvalidClientSecret |
客户身份验证对租户无效: <租户 ID>:adal:刷新请求失败。 状态代码 = “401”。 响应正文:{“error”: “invalid_client”, “error_description”: “AADSTS7000222: 应用”<application-id>“提供的客户端密钥已过期。访问Azure 门户为应用创建新密钥:https://aka.ms/NewClientSecret或考虑使用证书凭据增强安全性:https://aka.ms/certCreds” |
原因
生成此服务主体警报的问题通常因以下原因之一而发生:
客户端密码已过期。
提供了不正确的凭据。
订阅的 Microsoft Entra ID 租户中不存在服务主体。
验证原因
运行以下 Azure CLI 代码,检索 AKS 群集的服务主体配置文件并 检查服务主体的到期日期:
SP_ID=$(az aks show --resource-group <rg-name> \
--name <aks-cluster-name> \
--query servicePrincipalProfile.clientId \
--output tsv)
az ad app credential list --id "$SP_ID"
或者,可以验证服务主体名称和机密是否正确且未过期。 为此,请按照下列步骤进行操作:
在 Azure 门户中,搜索并选择“Microsoft Entra ID”。
在Microsoft Entra ID 的导航窗格中,选择应用注册。
在 “拥有的应用程序 ”选项卡上,选择受影响的应用程序。
查找服务主体名称和机密信息,并验证信息是否正确和最新。
解决方案
在更新或轮换 AKS 群集文章的凭据中,请根据需要按照以下文章部分之一中的说明操作:
使用新的服务主体凭据,按照本文的 “更新 AKS 群集”中的说明,使用服务主体凭据 部分操作。
详细信息
联系我们寻求帮助
如果你有任何疑问或需要帮助,请创建支持请求或联系 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区。