Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
MSAL.js ondersteunt het verkrijgen van tokens van wam (Web Account Manager) op Windows. Deze tokens zijn gebonden aan het apparaat waarop ze zijn verkregen en worden niet in de cache opgeslagen in de lokale opslag of sessionStorage van de browser.
Ondersteunde omgeving
Deze functie wordt momenteel alleen ondersteund in de volgende omgeving:
- Een computer waarop een Windows build wordt uitgevoerd die ondersteuning biedt voor de functie (meer informatie hierover)
- de browsers Chrome en Edge of Teams
- Windows Accounts-extensie (versie 1.0.5 of hoger) is geïnstalleerd als u Chrome of Edge gebruikt
- App moet worden gehost op
https
Daarnaast wordt deze functie momenteel alleen ondersteund voor werk- en schoolaccounts
De functie in MSAL.js inschakelen
Om deze functie in MSAL.js in te schakelen, stelt u de vlag allowPlatformBroker in uw configuratieobject als volgt in op true:
const msalConfig = {
auth: {
clientId: "insert-clientId"
},
system: {
allowPlatformBroker: true
}
};
Daarnaast moet u de nieuwe initialize API aanroepen en wachten voordat u andere MSAL.js API aanroept.
const pca = new PublicClientApplication(msalConfig);
// Initialize will establish a connection with the browser extension, if present
await pca.initialize();
// Call handleRedirectPromise, after initialization is complete
await pca.handleRedirectPromise();
// After initialize and handleRedirectPromise have completed, you may call any of the other APIs as you would without this feature
pca.acquireTokenSilent();
Er zijn geen andere wijzigingen nodig om deze nieuwe functie te ondersteunen. Elke gebruiker die toegang heeft tot uw app vanuit een ondersteunde omgeving, kan nu apparaatgebonden tokens verkrijgen. Gebruikers in niet-ondersteunde omgevingen blijven tokens verkrijgen via de traditionele webstromen.
Hier vindt u een werkend voorbeeld
Verschillen bij het gebruik van WAM om tokens te verkrijgen
Er zijn een paar dingen die zich mogelijk iets anders gedragen bij het verkrijgen van tokens via WAM.
- Alle cacheconfiguraties zijn alleen van toepassing op de lokale cache van MSAL. De systeemeigen broker beheert zijn eigen, veiligere cache die wordt gebruikt in plaats van browseropslag en biedt geen ondersteuning voor de configuratie van het cachegedrag. Dit betekent dat u mogelijk een token in de cache ontvangt, ongeacht de waarde van aanvraagparameters, zoals:
forceRefresh,cacheLookupPolicyofstoreInCache. Bovendien worden tokens die van de systeemeigen broker worden ontvangen , niet opgeslagen in lokale opslag of sessieopslag, ongeacht wat u hebt geconfigureerd in PublicClientApplication. - Als WAM de gebruiker moet vragen om interactie, wordt er een systeemprompt geopend. Deze prompt ziet er iets anders uit dan de pop-upvensters van de browser die u mogelijk gewend bent.
- Het overschakelen van uw account in de WAM-prompt wordt niet ondersteund en MSAL.js genereert een fout (foutcode: user_switch) als dit gebeurt. Het is de verantwoordelijkheid van uw app om deze fout te ondervangen en te verwerken op een manier die zinvol is voor uw scenario's (bijvoorbeeld een foutpagina weergeven, opnieuw proberen met het nieuwe account, opnieuw proberen met het oorspronkelijke account, enzovoort)