Rövid útmutató: Jelentkezzen be a felhasználókba, és hívja meg a Microsoft Graphot egy Node.js asztali alkalmazásból
Ebben a rövid útmutatóban letölthet és futtathat egy kódmintát, amely bemutatja, hogyan jelentkezhet be egy asztali Electron-alkalmazás a felhasználókba, és hogyan szerezhet be hozzáférési jogkivonatokat a Microsoft Graph API meghívásához.
Ez a rövid útmutató a Microsoft Authentication Library for Node.js (MSAL Node) és a PKCE engedélyezési kódfolyamatát használja.
Előfeltételek
- Node.js
- Visual Studio Code vagy más kódszerkesztő
A mintaalkalmazás regisztrálása és letöltése
Első lépésként kövesse az alábbi lépéseket.
1. lépés: Az alkalmazás regisztrálása
Tipp.
A cikkben szereplő lépések a portáltól függően kissé eltérhetnek.
Az alkalmazás regisztrálásához és az alkalmazás regisztrációs információinak a megoldáshoz való kézi hozzáadásához kövesse az alábbi lépéseket:
- Jelentkezzen be a Microsoft Entra felügyeleti központba legalább felhőalkalmazás-rendszergazdaként.
- Ha több bérlőhöz is hozzáfér, a felső menü Beállítások ikonjával válthat arra a bérlőre, amelyben regisztrálni szeretné az alkalmazást a Könyvtárak + előfizetések menüből.
- Keresse meg az identitásalkalmazásokat>> Alkalmazásregisztrációk és válassza az Új regisztráció lehetőséget.
- Adja meg például
msal-node-desktop
az alkalmazás nevét. Előfordulhat, hogy az alkalmazás felhasználói látják ezt a nevet, és később módosíthatja. - Válassza a Regisztráció elemet az alkalmazás létrehozásához.
- A Kezelés területen válassza a Hitelesítés lehetőséget.
- Válassza a Platform>mobil- és asztali alkalmazások hozzáadása lehetőséget.
- Az Átirányítási URI-k szakaszban adja meg a következőt
http://localhost
: - Válassza a Konfigurálás lehetőséget.
2. lépés: Az Elektron mintaprojekt letöltése
3. lépés: Az Elektron mintaprojekt konfigurálása
*Bontsa ki a projektet, nyissa meg az ms-identity-JavaScript-nodejs-desktop-main mappát, majd nyissa meg .authConfig.js fájlt. Cserélje le az értéket az alábbiak szerint:
Változó | Leírás | Példa(ok) |
---|---|---|
Enter_the_Cloud_Instance_Id_Here |
Az azure-felhőpéldány, amelyben az alkalmazás regisztrálva van | https://login.microsoftonline.com/ (a záró perjelet is belefoglalva) |
Enter_the_Tenant_Id_Here |
Bérlőazonosító vagy elsődleges tartomány | contoso.microsoft.com vagy aaaabbbb-0000-cccc-1111-dddd2222eeee |
Enter_the_Application_Id_Here |
A regisztrált alkalmazás ügyfél-azonosítója | 00001111-aaaa-2222-bbbb-3333cccc4444 |
Enter_the_Redirect_Uri_Here |
A regisztrált alkalmazás átirányítási URI-ja | msal00001111-aaaa-2222-bbbb-3333cccc4444://auth |
Enter_the_Graph_Endpoint_Here |
Az alkalmazás által meghívni kívánt Microsoft Graph API felhőpéldány | https://graph.microsoft.com/ (a záró perjelet is belefoglalva) |
A fájlnak az alábbihoz hasonlóan kell kinéznie:
const AAD_ENDPOINT_HOST = "https://login.microsoftonline.com/"; // include the trailing slash
const msalConfig = {
auth: {
clientId: "00001111-aaaa-2222-bbbb-3333cccc4444",
authority: `${AAD_ENDPOINT_HOST}/aaaabbbb-0000-cccc-1111-dddd2222eeee`,
},
system: {
loggerOptions: {
loggerCallback(loglevel, message, containsPii) {
console.log(message);
},
piiLoggingEnabled: false,
logLevel: LogLevel.Verbose,
}
}
}
const GRAPH_ENDPOINT_HOST = "https://graph.microsoft.com/"; // include the trailing slash
const protectedResources = {
graphMe: {
endpoint: `${GRAPH_ENDPOINT_HOST}v1.0/me`,
scopes: ["User.Read"],
}
};
module.exports = {
msalConfig: msalConfig,
protectedResources: protectedResources,
};
4. lépés: Az alkalmazás futtatása
A minta függőségeit egyszer kell telepítenie:
cd ms-identity-javascript-nodejs-desktop-main npm install
Ezután futtassa az alkalmazást parancssorban vagy konzolon:
npm start
Válassza a Bejelentkezés lehetőséget a bejelentkezési folyamat elindításához.
Az első bejelentkezéskor a rendszer kérni fogja, hogy adja meg hozzájárulását ahhoz, hogy az alkalmazás bejelentkezhessen, és hozzáférhessen a profiljához. Miután sikeresen bejelentkezett, a rendszer visszairányítja az alkalmazásba.
További információ
A minta működése
Amikor egy felhasználó először választja ki a Bejelentkezés gombot, acquireTokenInteractive
a rendszer meghívja az MSAL-csomópont metódusát. Ez a módszer átirányítja a felhasználót a Microsoft Identitásplatform végponttal való bejelentkezésre, beolvas egy engedélyezési kódot, majd kicseréli egy hozzáférési jogkivonatra.
MSAL-csomópont
Az MSAL-csomópont a felhasználók bejelentkezéséhez és a Microsoft Identitásplatform által védett API eléréséhez használt jogkivonatok lekéréséhez használt kódtár. Az MSAL-csomópont asztali alkalmazásokkal való használatáról ebben a cikkben talál további információt.
Az MSAL-csomópontot az alábbi npm parancs futtatásával telepítheti.
npm install @azure/msal-node --save
Következő lépések
Az Electron asztali alkalmazás MSAL Node-tal való fejlesztéséről az oktatóanyagban talál további információt: