Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A felhasználóknak hitelesíteni kell a Microsoft Entra-azonosítót ahhoz, hogy a Microsoft Graph hozzáférhessen a szervezeti adatokhoz. Ebben a gyakorlatban látni fogja, hogyan használható a Microsoft Graph Toolkit összetevő a mgt-login felhasználók hitelesítésére és egy hozzáférési jogkivonat lekérésére. A hozzáférési jogkivonat ezután a Microsoft Graph felé irányuló hívások indítására használható.
Megjegyzés:
Ha még nem ismeri a Microsoft Graphot, erről a Microsoft Graph alapjai képzési tervében tudhat meg többet.
Ebben a gyakorlatban a következőt fogja elvégezni:
- Megtudhatja, hogyan társíthat Microsoft Entra ID-alkalmazást a Microsoft Graph Toolkittel a felhasználók hitelesítéséhez és a szervezeti adatok lekéréséhez.
- Ismerje meg a hatókörök fontosságát.
- Megtudhatja, hogyan használható a Microsoft Graph Toolkit mgt-login összetevője a felhasználók hitelesítésére és egy hozzáférési jogkivonat lekérésére.
A bejelentkezési funkció használata
Az előző gyakorlatban létrehozott egy alkalmazásregisztrációt a Microsoft Entra-azonosítóban, és elindította az alkalmazáskiszolgálót és az API-kiszolgálót. A fájlban
.enva következő értékeket is frissítette (TEAM_IDésCHANNEL_IDnem kötelező):ENTRAID_CLIENT_ID=<APPLICATION_CLIENT_ID_VALUE> TEAM_ID=<TEAMS_TEAM_ID> CHANNEL_ID=<TEAMS_CHANNEL_ID>A folytatás előtt győződjön meg arról, hogy elvégezte az előző gyakorlatot .
Lépjen vissza a böngészőbe (http://localhost:4200), válassza a Bejelentkezés lehetőséget a fejlécben, és jelentkezzen be egy rendszergazdai felhasználói fiókkal a Microsoft 365 Developer-bérlőjéből.
Jótanács
Jelentkezzen be a Microsoft 365 fejlesztői bérlői rendszergazdai fiókjával. A fejlesztői bérlő többi felhasználóját a Microsoft 365 Felügyeleti központban tekintheti meg.
Ha első alkalommal jelentkezik be az alkalmazásba, a rendszer kérni fogja, hogy járuljon hozzá az alkalmazás által kért engedélyekhez. A kód felfedezése során a következő szakaszban további információt kaphat ezekről az engedélyekről (más néven "hatókörökről"). A folytatáshoz válassza az Elfogadás lehetőséget.
Miután bejelentkezett, látnia kell a fejlécben megjelenő felhasználó nevét.
A bejelentkezési kód felfedezése
Most, hogy bejelentkezett, nézzük meg a felhasználóba való bejelentkezéshez és a hozzáférési jogkivonat és a felhasználói profil lekéréséhez használt kódot. Megismerheti a Microsoft Graph Toolkit részét képező mgt-login webösszetevőt.
Jótanács
Ha Visual Studio Code-ot használ, közvetlenül a következő kiválasztásával nyithatja meg a fájlokat:
- Windows/Linux: Ctrl + P
- Mac: Cmd + P
Ezután írja be a megnyitni kívánt fájl nevét.
Nyissa meg az ügyfelet/package.json, és figyelje meg, hogy a csomagok és
@microsoft/mgta@microsoft/mgt-componentscsomagok a függőségek részét képezik. A@microsoft/mgtcsomag MSAL (Microsoft Authentication Library) szolgáltatói funkciókat és webösszetevőket tartalmaz, például mgt-logint és másokat, amelyekkel bejelentkezhet a felhasználókba, és lekérheti és megjelenítheti a szervezeti adatokat.Nyissa meg az ügyfelet/src/main.ts , és figyelje meg a csomag következő importálását
@microsoft/mgt-components. Az importált szimbólumok az alkalmazásban használt Microsoft Graph Toolkit-összetevők regisztrálására szolgálnak.import { registerMgtLoginComponent, registerMgtSearchResultsComponent, registerMgtPersonComponent, } from '@microsoft/mgt-components';Görgessen a fájl aljára, és jegyezze fel a következő kódot:
registerMgtLoginComponent(); registerMgtSearchResultsComponent(); registerMgtPersonComponent();Ez a kód regisztrálja a
mgt-login,mgt-search-resultsésmgt-persona webösszetevőket, és lehetővé teszi az alkalmazáson belüli használatukat.Ha az mgt-login összetevő használatával szeretne bejelentkezni a felhasználókba, a Microsoft Entra ID alkalmazás ügyfél-azonosítóját (az .env fájlban
ENTRAID_CLIENT_IDtárolja) hivatkozni és használni kell.Nyissa meg graph.service.ts , és keresse meg a függvényt
init(). A fájl teljes elérési útja az ügyfél/src/app/core/graph.service.ts. A következő importálás és kód jelenik meg:import { Msal2Provider, Providers, ProviderState } from '@microsoft/mgt'; init() { if (!this.featureFlags.microsoft365Enabled) return; if (!Providers.globalProvider) { console.log('Initializing Microsoft Graph global provider...'); Providers.globalProvider = new Msal2Provider({ clientId: ENTRAID_CLIENT_ID, scopes: ['User.Read', 'Presence.Read', 'Chat.ReadWrite', 'Calendars.Read', 'ChannelMessage.Read.All', 'ChannelMessage.Send', 'Files.Read.All', 'Mail.Read'] }); } else { console.log('Global provider already initialized'); } }Ez a kód létrehoz egy új
Msal2Providerobjektumot, amely átadja a Microsoft Entra-azonosító ügyfélazonosítóját az alkalmazásregisztrációból, ésscopesamelyhez az alkalmazás hozzáférést kér. Ezekscopessegítségével kérhet hozzáférést az alkalmazás által elérhető Microsoft Graph-erőforrásokhoz. AzMsal2Providerobjektum létrehozása után hozzá lesz rendelve azProviders.globalProviderobjektumhoz, amelyet a Microsoft Graph Eszközkészlet összetevői használnak az adatok Microsoft Graph-ból való lekéréséhez.Nyissa meg header.component.html a szerkesztőben, és keresse meg az mgt-login összetevőt . A fájl teljes elérési útja az ügyfél/src/alkalmazás/fejléc/header.component.html.
@if (this.featureFlags.microsoft365Enabled) { <mgt-login class="mgt-dark" (loginCompleted)="loginCompleted()"></mgt-login> }Az mgt-login összetevő lehetővé teszi a felhasználó bejelentkezését, és hozzáférést biztosít a Microsoft Graph-hoz használt jogkivonathoz. Sikeres bejelentkezés esetén az
loginCompletedesemény aktiválódik, amely meghívja a függvénytloginCompleted(). Bár ebben a példában az mgt-login egy Angular-összetevőn belül használatos, bármely webalkalmazással kompatibilis.Az mgt-login összetevő megjelenítése a
featureFlags.microsoft365Enabledbeállítotttrueértéktől függ. Ez az egyéni jelző ellenőrzi a környezeti változó jelenlététENTRAID_CLIENT_IDannak ellenőrzéséhez, hogy az alkalmazás megfelelően van-e konfigurálva, és képes-e hitelesíteni a Microsoft Entra-azonosítóval. A jelölő olyan esetekhez lesz hozzáadva, amikor a felhasználók úgy döntenek, hogy csak a mi- vagy kommunikációs gyakorlatokat hajtják végre az oktatóanyagon belül, ahelyett, hogy a gyakorlatok teljes sorozatát követik.Nyissa meg header.component.ts , és keresse meg a függvényt
loginCompleted. Ez a függvény akkor lesz meghívva, amikor azloginCompletedesemény ki van adva, és kezeli a bejelentkezett felhasználó profiljának lekérését a használatávalProviders.globalProvider.async loginCompleted() { const me = await Providers.globalProvider.graph.client.api('me').get(); this.userLoggedIn.emit(me); }Ebben a példában hívást kezdeményezünk a Microsoft Graph
meAPI-hoz a felhasználó profiljának lekéréséhez (meez az aktuális bejelentkezett felhasználót jelöli). Athis.userLoggedIn.emit(me)kódutasítás egy eseményt bocsát ki az összetevőből a profiladatok szülőösszetevőnek való továbbításához. Ebben az esetben a szülőösszetevő app.component.ts fájl, amely az alkalmazás fő összetevője.Ha többet szeretne megtudni az mgt-login összetevőről, látogasson el a Microsoft Graph Toolkit dokumentációjához.
Most, hogy bejelentkezett az alkalmazásba, nézzük meg, hogyan kérhetők le a szervezeti adatok.