Autentiseringsproblem i Azure HDInsight
Den här artikeln beskriver felsökningssteg och möjliga lösningar på problem när du interagerar med Azure HDInsight-kluster.
På säkra kluster som backas upp av Azure Data Lake Gen2, när domänanvändare loggar in på klustertjänsterna via HDI Gateway (som att logga in på Apache Ambari-portalen), försöker HDI Gateway först hämta en OAuth-token från Microsoft Entra och sedan få en Kerberos-biljett från Microsoft Entra Domain Services. Autentiseringen kan misslyckas i något av dessa steg. Den här artikeln syftar till att felsöka några av dessa problem.
När autentiseringen misslyckas uppmanas du att ange autentiseringsuppgifter. Om du avbryter den här dialogrutan skrivs felmeddelandet ut. Här följer några vanliga felmeddelanden:
invalid_grant eller unauthorized_client, 50126
Problem
Inloggningen misslyckas för federerade användare med felkoden 50126 (inloggningen lyckas för molnanvändare). Felmeddelandet liknar:
Reason: Bad Request, Detailed Response: {"error":"invalid_grant","error_description":"AADSTS70002: Error validating credentials. AADSTS50126: Invalid username or password\r\nTrace ID: 0000aaaa-11bb-cccc-dd22-eeeeee333333\r\n Correlation ID: aaaa0000-bb11-2222-33cc-444444dddddd\r\nTimestamp: 2019-01-28 17:49:58Z","error_codes":[70002,50126], "timestamp":"2019-01-28 17:49:58Z","trace_id":"0000aaaa-11bb-cccc-dd22-eeeeee333333","correlation_id":"aaaa0000-bb11-2222-33cc-444444dddddd"}
Orsak
Microsoft Entra-felkod 50126 innebär att AllowCloudPasswordValidation
principen inte har angetts av klientorganisationen.
Åtgärd
Använd autentiseringsuppgifter för hybrididentitetsadministratörför att använda lösenordshashvärden för ADFS-backade användare. Använd som AllowCloudPasswordValidationPolicy
du ser i artikeln Använd Enterprise Security Package i HDInsight.
invalid_grant eller unauthorized_client, 50034
Problem
Inloggningen misslyckas med felkoden 50034. Felmeddelandet liknar:
{"error":"invalid_grant","error_description":"AADSTS50034: The user account Microsoft.AzureAD.Telemetry.Diagnostics.PII doesn't exist in the aaaabbbb-0000-cccc-1111-dddd2222eeee directory. To sign into this application, the account must be added to the directory.\r\nTrace ID: 2222cccc-33dd-eeee-ff44-aaaaaa555555\r\nCorrelation ID: cccc2222-dd33-4444-55ee-666666ffffff\r\nTimestamp: 2019-04-29 15:52:16Z", "error_codes":[50034],"timestamp":"2019-04-29 15:52:16Z","trace_id":"2222cccc-33dd-eeee-ff44-aaaaaa555555", "correlation_id":"cccc2222-dd33-4444-55ee-666666ffffff"}
Orsak
Användarnamnet är felaktigt (finns inte). Användaren använder inte samma användarnamn som används i Azure Portal.
Åtgärd
Använd samma användarnamn som fungerar i portalen.
invalid_grant eller unauthorized_client, 50053
Problem
Användarkontot är utelåst, felkod 50053. Felmeddelandet liknar:
{"error":"unauthorized_client","error_description":"AADSTS50053: You've tried to sign in too many times with an incorrect user ID or password.\r\nTrace ID: 00aa00aa-bb11-cc22-dd33-44ee44ee44ee\r\nCorrelation ID: 11bb11bb-cc22-dd33-ee44-55ff55ff55ff\r\nTimestamp: 2019-06-06 09:47:23Z","error_codes":[50053],"timestamp":"2019-06-06 09:47:23Z","trace_id":"aaaa0000-bb11-2222-33cc-444444dddddd","correlation_id":"aaaa0000-bb11-2222-33cc-444444dddddd"}
Orsak
För många inloggningsförsök med ett felaktigt lösenord.
Åtgärd
Vänta i 30 minuter eller så, stoppa alla program som försöker autentisera.
invalid_grant eller unauthorized_client, 50053 (#2)
Problem
Lösenordet har upphört att gälla, felkod 50053. Felmeddelandet liknar:
{"error":"user_password_expired","error_description":"AADSTS50055: Password is expired.\r\nTrace ID: 6666aaaa-77bb-cccc-dd88-eeeeee999999\r\nCorrelation ID: eeee4444-ff55-6666-77aa-888888bbbbbb\r\nTimestamp: 2019-06-06 17:29:37Z","error_codes":[50055],"timestamp":"2019-06-06 17:29:37Z","trace_id":"6666aaaa-77bb-cccc-dd88-eeeeee999999","correlation_id":"eeee4444-ff55-6666-77aa-888888bbbbbb","suberror":"user_password_expired","password_change_url":"https://portal.microsoftonline.com/ChangePassword.aspx"}
Orsak
Lösenordet har upphört att gälla.
Åtgärd
Ändra lösenordet i Azure Portal (i ditt lokala system) och vänta sedan i 30 minuter på att synkroniseringen ska komma ikapp.
interaction_required
Problem
Ta emot felmeddelandet interaction_required
.
Orsak
Principen för villkorsstyrd åtkomst eller MFA används för användaren. Eftersom interaktiv autentisering inte stöds ännu måste användaren eller klustret undantas från MFA/villkorlig åtkomst. Om du väljer att undanta klustret (IP-adressbaserad undantagsprincip) kontrollerar du att AD ServiceEndpoints
är aktiverat för det virtuella nätverket.
Åtgärd
Använd principen för villkorlig åtkomst och undanta HDInsight-kluster från MFA enligt beskrivningen i Konfigurera ett HDInsight-kluster med Enterprise Security Package med hjälp av Microsoft Entra Domain Services.
Inloggning nekad
Problem
Logga in nekad.
Orsak
För att komma till det här steget är din OAuth-autentisering inte ett problem, men Kerberos-autentisering är det. Om det här klustret som backas upp av ADLS lyckades OAuth-inloggningen innan Kerberos-autentiseringen görs. På WASB-kluster görs inte OAuth-inloggning. Det kan finnas många orsaker till Kerberos-fel – till exempel att lösenordshashvärden är osynkroniserade, användarkontot är utelåst i Microsoft Entra Domain Services och så vidare. Lösenordshasherna synkroniseras endast när användaren ändrar lösenord. När du skapar Microsoft Entra Domain Services-instansen börjar den synkronisera lösenord som ändras när du har skapat den. Det kan inte retroaktivt synkronisera lösenord som angavs före starten.
Åtgärd
Om du tror att lösenord kanske inte är synkroniserade kan du prova att ändra lösenordet och vänta några minuter på att synkronisera.
Försök att SSH till en Du måste försöka autentisera (kinit) med samma användarautentiseringsuppgifter, från en dator som är ansluten till domänen. SSH till noden head/edge med en lokal användare och kör sedan kinit.
Kinit misslyckas
Problem
Kinit misslyckas.
Orsak
Varierar.
Åtgärd
För att kinit ska lyckas måste du känna till ditt sAMAccountName
(det här är det korta kontonamnet utan sfären). sAMAccountName
är vanligtvis kontoprefixet (som bob i bob@contoso.com
). För vissa användare kan det vara annorlunda. Du behöver möjlighet att bläddra/söka i katalogen för att lära dig din sAMAccountName
.
Sätt att hitta sAMAccountName
:
Om du kan logga in på Ambari med hjälp av den lokala Ambari-administratören kan du titta på listan över användare.
Om du har en domänansluten Windows-dator kan du använda windows AD-standardverktygen för att bläddra. Detta kräver ett arbetskonto i domänen.
Från huvudnoden kan du använda SAMBA-kommandon för att söka. Detta kräver en giltig Kerberos-session (lyckad kinit). net ads search "(userPrincipalName=bob*)"
Sök-/b bläddra-resultatet bör visa attributet
sAMAccountName
. Du kan också titta på andra attribut sompwdLastSet
,badPasswordTime
osvuserPrincipalName
. för att se om dessa egenskaper matchar vad du förväntar dig.
Kinit misslyckas med förautentiseringsfel
Problem
Kinit misslyckas med Preauthentication
fel.
Orsak
Felaktigt användarnamn eller lösenord.
Åtgärd
Kontrollera ditt användarnamn och lösenord. Kontrollera även om det finns andra egenskaper som beskrivs. Om du vill aktivera utförlig felsökning kör export KRB5_TRACE=/tmp/krb.log
du från sessionen innan du provar kinit.
Jobbet/HDFS-kommandot misslyckas på grund av TokenNotFoundException
Problem
Jobbet/HDFS-kommandot misslyckas på grund av TokenNotFoundException
.
Orsak
Den nödvändiga OAuth-åtkomsttoken hittades inte för att jobbet/kommandot skulle lyckas. ADLS/ABFS-drivrutinen försöker hämta OAuth-åtkomsttoken från autentiseringstjänsten innan lagringsbegäranden görs. Den här token registreras när du loggar in på Ambari-portalen med samma användare.
Åtgärd
Kontrollera att du har loggat in på Ambari-portalen en gång via användarnamnet vars identitet används för att köra jobbet.
Fel vid hämtning av åtkomsttoken
Problem
Användaren får felmeddelandet Error fetching access token
.
Orsak
Det här felet uppstår tillfälligt när användare försöker komma åt ADLS Gen2 med hjälp av ACL:er och Kerberos-token har upphört att gälla.
Åtgärd
För Azure Data Lake Storage Gen1 rensar du webbläsarens cacheminne och loggar in på Ambari igen.
För Azure Data Lake Storage Gen2 försöker Kör-användaren
/usr/lib/hdinsight-common/scripts/RegisterKerbTicketAndOAuth.sh <upn>
logga in som
Nästa steg
Om du inte ser problemet eller inte kan lösa problemet går du till någon av följande kanaler för mer support:
Få svar från Azure-experter via Azure Community Support.
Anslut med @AzureSupport – det officiella Microsoft Azure-kontot för att förbättra kundupplevelsen. Ansluta Azure-communityn till rätt resurser: svar, support och experter.
Om du behöver mer hjälp kan du skicka en supportbegäran från Azure Portal. Välj Support i menyraden eller öppna hubben Hjälp + support . Mer detaljerad information finns i Skapa en Azure Support begäran. Tillgång till support för prenumerationshantering och fakturering ingår i din Microsoft Azure-prenumeration och teknisk support ges via ett supportavtal för Azure.