A Graph CLI beállítása
Ez az útmutató egy másolattól az első, csak olvasó Graph-kérésig vezet. Használj kijelölt postafiókot, amelyet az alkalmazás elér.
Előfeltételek
Szükséged van Bun 1.3-as vagy újabb verzióra, egy Entra-alkalmazásra és hitelesítő adatra, bérlői adminisztrátori hozzájárulásra, valamint egy Exchange Online postafiókra. Készítsd elő a Microsoft Graph-hozzáférést. A CLI a MailGen-bejelentkezéstől függetlenül hívja a Graphot.
Függőségek telepítése
A motherrepo gyökeréből:
cd Architecture/GraphSyncExperimenter/cli-graph
bun install
Ha már abban a mappában vagy, csak a bun install parancsot futtasd.
Az alkalmazás beállítása
| Változó | CLI-használat | Formátum |
|---|---|---|
TENANT_ID | Kötelező | Entra-bérlőazonosító |
CLIENT_ID | Kötelező | Az alkalmazás kliensazonosítója |
CLIENT_SECRET | Kötelező | Bizalmas alkalmazástitok |
DELTA_LINK_ENCRYPTION_KEY | Nem olvassa | Külön szinkronizálási és lab-szolgáltatások használják, ezt a CLI nem |
Add meg ezeket a futásidejű értékeket a figyelmen kívül hagyott helyi .env fájlon vagy a folyamat környezetén keresztül:
TENANT_ID=your-tenant-id
CLIENT_ID=your-application-client-id
CLIENT_SECRET=your-client-secret
A valódi hitelesítő adatokat ne tedd dokumentációba, munkafolyamatba, tesztbe vagy commitba. A .env.example konfigurációs neveket tartalmaz, használható titkot nem.
Alkalmazásjogosultságok megadása
Az eszköz adminisztrátori hozzájárulással rendelkező Graph-alkalmazásjogosultságokat használ:
| Jogosultság | Felhasználás |
|---|---|
Mail.ReadWrite | Üzenetek és mappák olvasása és módosítása |
Mail.Send | Küldés a kiválasztott postafiók nevében |
MailboxSettings.ReadWrite | Outlook-főkategóriák kezelése |
A címtárfelhasználó-kereséshez címtár-olvasási hozzáférés is kellhet. Az Exchange-alkalmazáskorlátozások a hozzájárulás után is szűkíthetik a postafiók-elérést. Ahol indokolt, használj ilyen korlátozást kijelölt tesztpostafiókokhoz.
Postafiók kiválasztása
A --user-id <Graph-user-object-ID-or-UPN> jelöli a célpostafiókot. A person@example.com alakú UPN olvasható, de a tényleges, engedélyezett célpont számít. Küldésnél ez a postafiók a feladó. Külön --from felülírás nincs.
Ahol a dokumentáció felhasználóválasztót jelenít meg, az azonosító vagy cím megadása csak a példákat frissíti. A böngészőbeli kulcsa t42.graphCli.userId. A régi kezdeti minta tatar.bela@t42.hu. Az érték a böngésző tárolójában marad, nem hitelesít és nem futtat parancsot. Az alaphelyzet visszaállítása törli a választást, és visszaáll a mintára. A másolt parancsokat használat előtt ellenőrizd.
Telepítés ellenőrzése
Ezek a helyi ellenőrzések nem kérnek postafiók-adatot:
bun run typecheck
bun test
bun run cli -- --help
A sikeres tesztfuttatás és a súgókimenet a helyi telepítést igazolja. Ne támaszkodj rögzített tesztszámra.
Ezután küldj csak olvasó szolgáltatói kérést:
bun run cli -- folder list --user-id person@example.com
Egy JSON-eredményt kell kapnod, status: "Listed" értékkel és 0 kilépési kóddal. Ez a hitelesítő adatot és a postafiók-hatókört ellenőrzi úgy, hogy levelet nem módosít. Más csak olvasó első ellenőrzés a label list és az email list --folder-id inbox.
Ha a kérés 401 választ ad, nézd meg az alkalmazásidentitást és a hitelesítő adat lejárati idejét. 403 esetén ellenőrizd az adminisztrátori hozzájárulást és az Exchange-hatókört. Írási művelet előtt olvasd el a hibaelhárítást. Folytasd a parancsreferenciával.