Résoudre les problèmes liés au code d’erreur ServicePrincipalValidationClientError
Cet article explique comment identifier et résoudre l’erreur ServicePrincipalValidationClientError
qui peut se produire si vous essayez de créer et de déployer un cluster Microsoft Azure Kubernetes Service (AKS).
Conditions préalables
-
Azure CLI, version 2.0.59 ou ultérieure. Si Azure CLI est déjà installé, vous pouvez trouver le numéro de version en exécutant
az --version
.
Symptômes
Lorsque vous essayez de déployer un cluster AKS, le message d’erreur suivant s’affiche :
adal : la demande d’actualisation a échoué. Code d’état = '401'.
Corps de la réponse : {
« error » : « invalid_client »,
« error_description » : « AADSTS7000215 : clé secrète client non valide fournie. Vérifiez que le secret envoyé dans la demande correspond à la valeur de clé secrète client, et non à l’ID de clé secrète client, pour un secret ajouté à l’application « 123456789-1234-1234-1234567890987 ». \r\n
ID de trace : 12345\r\n
ID de corrélation : 6789\r\n
Horodatage : 2022-02-03 03 :07 :11Z »,
« error_codes » : [7000215],
« timestamp » : « 2022-02-03 03 :07 :11Z »,
« trace_id » : « 12345 »,
« correlation_id » : « 6789 »,
« error_uri » : « https://login.microsoftonline.com/error?code=7000215 »
} Point de terminaison https://login.microsoftonline.com/123456787/oauth2/token?api-version=1.0
Cause
Le secret fourni pour le principal de service en surbrillance n’est pas valide.
Solution 1 : Réinitialiser le secret du principal de service
Réinitialisez le secret utilisé pour le principal de service en exécutant la commande az ad sp credential reset :
az ad sp credential reset --name "01234567-89ab-cdef-0123-456789abcdef" --query password --output tsv
Cette commande réinitialise le secret et l’affiche en sortie. Ensuite, vous pouvez spécifier le nouveau secret lorsque vous réessayez de créer le cluster.
Solution 2 : Créer un principal de service
Vous pouvez créer un principal de service et obtenir le secret qui lui est associé en exécutant la commande az ad sp create-for-rbac :
az ad sp create-for-rbac --role Contributor
La sortie de la commande doit ressembler à la chaîne JSON suivante :
{
"appId": "12345678-9abc-def0-1234-56789abcdef0",
"name": "23456789-abcd-ef01-2345-6789abcdef01",
"password": "3456789a-bcde-f012-3456-789abcdef012",
"tenant": "456789ab-cdef-0123-4567-89abcdef0123"
}
Notez les appId
valeurs et password
générées. Après avoir obtenu ces valeurs, vous pouvez réexécuter la commande de création de cluster pour le nouveau principal de service et le nouveau secret.
Informations supplémentaires
Contactez-nous pour obtenir de l’aide
Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.