Migrace jednostránkové aplikace JavaScriptu z implicitního udělení do toku ověřovacího kódu
Microsoft Authentication Library pro JavaScript (MSAL.js) v2.0 přináší podporu toku autorizačního kódu s PKCE a CORS pro jednostránkové aplikace na platformě Microsoft Identity Platform. Pokud chcete migrovat aplikaci MSAL.js 1.x s využitím implicitního udělení na MSAL.js 2.0+ (dále jen 2.x) a tok ověřovacího kódu, postupujte podle kroků v následujících částech.
MSAL.js 2.x zlepšuje MSAL.js 1.x tím, že podporuje tok autorizačního kódu v prohlížeči místo implicitního toku udělení. MSAL.js 2.x nepodporuje implicitní tok.
Kroky migrace
Pokud chcete aplikaci aktualizovat na MSAL.js 2.x a tok ověřovacího kódu, existují tři primární kroky:
- Přepněte identifikátory URI přesměrování registrace aplikace z platformy web na platformu jednostránkovou aplikaci.
- Aktualizujte kód z MSAL.js 1.x na 2.x.
- Pokud byly všechny aplikace sdílející registraci aktualizovány na MSAL.js 2.x a tok ověřovacího kódu, zakažte implicitní udělení v registraci aplikace.
Následující části popisují jednotlivé kroky podrobněji.
Přepněte přesměrovací URI na platformu SPA
Pokud chcete i nadále používat stávající registraci aplikace pro své aplikace, v Centru pro správu Microsoft Entra aktualizujte přesměrovací URI registrace na platformu SPA. To umožňuje tok autorizačního kódu s podporou PKCE a CORS pro aplikace, které používají registraci (stále potřebujete aktualizovat kód aplikace na MSAL.js v2.x).
Pro registrace aplikací, které jsou aktuálně nakonfigurované s identifikátory URI přesměrování webové platformy, postupujte takto:
Přihlaste se do Centra pro správu Microsoft Entra.
Přejděte na Identity>Applications> Registrace aplikací, vyberte aplikaci a pak ověřování.
Na dlaždici platformy Web v části URI přesměrování vyberte pruh s varováním, že byste měli migrovat vaše URI.
Vyberte pouze identifikátory URI pro přesměrování, jejichž aplikace budou používat MSAL.js 2.x, a pak vyberte Konfigurovat.
Tyto identifikátory URI přesměrování by se teď měly zobrazit na platformě jednostránkové aplikace, což ukazuje, že podpora CORS s tokem autorizačního kódu a PKCE je pro tyto URI povolená.
Můžete také vytvořit novou registraci aplikace místo aktualizace identifikátorů URI přesměrování ve vaší stávající registraci.
Aktualizace kódu na MSAL.js 2.x
V MSAL 1.x jste vytvořili instanci aplikace inicializací UserAgentApplication následujícím způsobem:
// MSAL 1.x
import * as msal from "msal";
const msalInstance = new msal.UserAgentApplication(config);
V MSAL 2.x inicializovat místo toho [PublicClientApplication][msal-js-publicclientapplication]:
// MSAL 2.x
import * as msal from "@azure/msal-browser";
const msalInstance = new msal.PublicClientApplication(config);
Další změny, které možná budete muset udělat v kódu, najdete v průvodci migrací na GitHubu.
Zakázat implicitní nastavení povolení
Po aktualizaci všech produkčních aplikací, které používají tuto registraci aplikace a její ID klienta na MSAL 2.x a tok autorizačního kódu, byste měli zrušit zaškrtnutí nastavení implicitního udělení oprávnění v nabídce Ověřování registrace aplikace.
Když zrušíte zaškrtnutí implicitního nastavení udělení v registraci aplikace, implicitní tok se zakáže pro všechny aplikace používající registraci a ID klienta.
Nezakažujte implicitní tok udělení před aktualizací všech vašich aplikací na MSAL.js 2.x a [PublicClientApplication][msal-js-publicclientapplication].
Další kroky
Další informace o toku autorizačního kódu, včetně rozdílů mezi toky implicitního a ověřovacího kódu, najdete na platformě Microsoft Identity Platform a toku autorizačního kódu OAuth 2.0.
Přečtěte si další informace o vytvoření jednostránkové aplikace React (SPA), která přihlašuje uživatele v následující vícedílné sérii kurzů.