この記事では、Microsoft Azure Kubernetes Service (AKS) クラスターを作成またはアップグレードしようとしたときに発生する AADSTS7000222 エラー (BadRequest または InvalidClientSecret) を特定して解決する方法について説明します。
[前提条件]
症状
AKS クラスターを作成またはアップグレードしようとすると、次のいずれかのエラー メッセージが表示されます。
| エラー コード | メッセージ |
|---|---|
BadRequest |
ServicePrincipalProfile の資格情報が無効でした。 詳細については、 https://aka.ms/aks-sp-help を参照してください。 (詳細: adal: 更新要求に失敗しました。 状態コード = '401'。 応答本文: {"error": "invalid_client"、"error_description": "AADSTS7000222: アプリ '<application-id>' に指定されたクライアント シークレット キーの有効期限が切れています。 Azure portal にアクセスしてアプリの新しいキーを作成します。 https://aka.ms/NewClientSecret、またはセキュリティを強化するために証明書資格情報を使用することを検討してください: https://aka.ms/certCreds。 |
InvalidClientSecret |
テナントに対する顧客認証が無効です: <テナント ID>: adal: 更新要求に失敗しました。 状態コード = '401'。 応答本文: {"error": "invalid_client"、"error_description": "AADSTS7000222: アプリ '<application-id>' に指定されたクライアント シークレット キーの有効期限が切れています。 Azure portal にアクセスしてアプリの新しいキーを作成します。 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 portal で、Microsoft Entra ID を探して選択します。
Microsoft Entra ID のナビゲーション ウィンドウで、[アプリの 登録] を選択します。
[ 所有アプリケーション ] タブで、影響を受けるアプリケーションを選択します。
サービス プリンシパル名とシークレット情報を見つけ、情報が正しく最新であることを確認します。
解決策
AKS クラスターの資格情報の更新またはローテーションに関する記事で、必要に応じて、次の記事のセクションのいずれかの手順に従います。
新しいサービス プリンシパル資格情報を使用して、その記事の「 サービス プリンシパル資格情報を使用して AKS クラスターを更新する 」セクションの手順に従います。
詳細情報
お問い合わせはこちらから
ご質問がある場合は、 Azure コミュニティサポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。