Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
MSAL4J-omfång
Vilka är huvudfunktionerna i MSAL?
Hämtar token från en säkerhetstokentjänst (STS) för ett klientprogram för åtkomst till en skyddad resurs.
Vad är MSAL4J?
MSAL är tillgängligt för många programmeringsspråk och plattformar. MSAL4J är utformat för att användas i alla program som körs på den Java virtuella datorn.
Vilka standardprotokoll följer MSAL för tokenförvärv?
MSAL implementerar en anpassad version av OAuth2-protokollet. För vissa specifika scenarier kan den också internt använda andra protokoll (t.ex. WS-Trust).
Är MSAL ett allmänt bibliotek för tokenförvärv med hjälp av OAuth2-protokollet?
Nej. MSAL är ett klientbibliotek för Microsoft Entra ID, Active Directory Federation Services (ADFS) (ADFS) och Azure Active Directory B2C. Det finns vissa anpassade begrepp som "resurs" som krävs av ADAL och som anses vara tillägg till den allmänna OAuth2-protokollspecifikationen och som inte stöds av andra STS.
Upptrappning av API
Ska jag inaktivera validering av auktoritet genom att skicka false till konstruktorn?
Det beror på vilken typ av auktoritet du pratar med. Om det är ADFS måste du skicka falskt eftersom ADFS för närvarande inte stöder verifiering av utfärdare. Om det är Microsoft Entra ID har du fortfarande möjlighet att ange false, men det rekommenderas att ange true, särskilt om du får adressen till auktoriteten från en tredje part (t.ex. via en 401-utmaning). Detta är för att skydda program och användare från att omdirigeras till skadliga slutpunkter för att ange sina autentiseringsuppgifter.
Vilken överlagrad variant av AcquireToken ska jag anropa?
Det beror på vilken typ av klientprogram du använder och vilket scenario du behöver en token för. Se vägledningen som beskrivs i Hämta token.
Felsökning
Vilka är de vanligaste orsakerna till fel vid användning av MSAL?
Problem i MSAL kan ha olika orsaker. Dessa är de vanliga syndarna:
- Datorn har anslutningsproblem.
- Dina program/användare är inte korrekt konfigurerade på Microsoft Entra ID eller ADFS.
- Du använder ett felaktigt API för din uppgift (MSAL har flera liknande överlagringar för metoden AcquireToken).
- Det finns en bugg i MSAL! Ja, det är alltid möjligt. Om du är säker på att inget av ovanstående objekt är orsaken till felet kan du rapportera det till oss så undersöker och åtgärdar vi felet om det finns.
Vilka verktyg kan jag använda för att diagnostisera ett problem i ADAL?
Det finns flera diagnostikverktyg som du kan använda:
- MSAL-exempel: Det första bästa verktyget är den uppsättning exempel som publicerats tillsammans med MSAL (i bibliotekslagringsplatsen samt exempel som publicerats i AzureSamples GitHub organisation). Försök att hitta det närmaste exemplet på ditt program och ladda ned och köra det på datorn. Om exemplet fungerar korrekt måste du följa samma steg i exempelappen i ditt program.
- MSAL-diagnostikloggar: Du kan aktivera loggning. Då skrivs några loggar med information om de interna stegen i MSAL. Du kan analysera loggarna för att hitta problemet. Om du kontaktar MSAL-teamet måste du också skicka loggarna för att hjälpa till med analysen. Du hittar instruktionen om hur du aktiverar MSAL-loggar i den officiella dokumentationen
- Nätverksspårningar: Använd ett verktyg som Fiddler för att registrera all http-kommunikation som MSAL gör med servern. Det är särskilt enkelt att använda Fiddler på Windows stationära datorer. Dela nätverksspårningsfilen med MSAL-teamet om vi är inblandade i att diagnostisera problemet.
Vilken typ av fel returneras från MSAL som undantag och vilken typ rapporteras till användaren?
De flesta fel returneras från MSAL i form av ett undantag. Det finns dock begränsade fall där MSAL visar felet i webbläsarkontrollen. Dessa fall inträffar främst när klienten inte kan verifieras eller om utfärdarservern inte kan nås.
Har MSAL någon form av logik för återförsök i?
Nej. Om en verksamhet misslyckas rapporterar MSAL ett fel via ett undantag. Undantaget innehåller en felkod och en statuskod i de fall felet returneras från auktoriteten. I sådana fall är det utvecklarens uppgift att undersöka statuskoden (som främst återspeglar http-statuskoden för svaret) i undantaget och avgör om du vill försöka igen eller inte. 502 är vanligtvis den statuskod som garanterar ett nytt försök.
MSAL:s versionsmodell
Hur ofta släpper MSAL en ny version?
Det finns inget fördefinierad schema. Vi försöker publicera serviceversioner mycket regelbundet för att åtgärda buggar och avblockera kunder. Större versioner tar vanligtvis längre tid och vi släpper flera förhandsversioner innan en större version är allmänt tillgänglig.
Vad är kompatibilitetsmodellen för MSAL-versioner?
Målet är att upprätthålla bakåtkompatibilitet inom en större version. För det försöker vi bara åtgärda buggar eller lägga till nya funktioner i serviceversioner (vilket ökar delversionen). Det finns dock ingen kompatibilitetsgaranti mellan större versioner. Vi kan lägga till eller ta bort stöd för vissa plattformar eller scenarier. Därför rekommenderar vi att du förstår omfånget för ändringarna och testar den nya versionen fullständigt innan du byter till den i din produktionskod.