Megosztás a következőn keresztül:


Miért szükséges a Microsoft 365-höz készült PowerShell használata?

Ez a cikk a Microsoft 365 Nagyvállalati verzióra és az Office 365 Nagyvállalati verzióra egyaránt vonatkozik.

A Microsoft 365 Felügyeleti központban kezelheti Microsoft 365-ös felhasználói fiókjait és licenceit. A Microsoft 365-szolgáltatásokat, például az Exchange Online-t, a Teamst és a SharePointot is kezelheti. Ha ehelyett a PowerShell használatával kezeli ezeket a szolgáltatásokat, kihasználhatja és kihasználhatja a parancssori és szkriptelési nyelvi környezetet a sebesség, az automatizálás és a további képességek érdekében.

Megjegyzés:

Az Azure Active Directory modult a Microsoft Graph PowerShell SDK váltja fel. A Microsoft Graph PowerShell SDK-val elérheti az összes Microsoft Graph API-t. További információ: Ismerkedés a Microsoft Graph PowerShell SDK-val. A cikkben szereplő Microsoft 365-höz készült PowerShell-parancsok némelyike frissült a Microsoft Graph PowerShell használatára.

Ez a cikk bemutatja, hogyan kezelheti a Microsoft 365-öt a PowerShell használatával:

  • A Microsoft 365 Felügyeleti központban nem látható további információk megjelenítése

  • Csak a PowerShell-lel konfigurálhat funkciókat és beállításokat

  • Tömeges műveletek végrehajtása

  • Adatok szűrése

  • Adatok nyomtatása vagy mentése

  • Kezelés a szolgáltatások között

Ne feledje, hogy a Microsoft 365-höz készült PowerShell a Windows PowerShell modulkészlete, amely a Windows-alapú szolgáltatások és platformok parancssori környezete. Ez a környezet egy parancshéjnyelvet hoz létre, amely további modulokkal bővíthető. Lehetővé teszi egyszerű vagy összetett parancsok vagy szkriptek végrehajtását. Miután például telepítette a Microsoft 365-höz készült PowerShell-modulokat, és csatlakozott a Microsoft 365-előfizetéséhez, a következő parancs futtatásával listázhatja a Microsoft Exchange Online összes felhasználói postaládáját:

Get-Mailbox

A postaládák listáját a Microsoft 365 Felügyeleti központban is lekérheti, de az összes webalkalmazás összes webhelyének elemeit megszámolni nem egyszerű.

A Microsoft 365-höz készült PowerShell célja, hogy segítsen a Microsoft 365 kezelésében, nem pedig a Microsoft 365 Felügyeleti központ lecserélésében. A rendszergazdáknak képesnek kell lenniük a Microsoft 365-höz készült PowerShell használatára, mert vannak olyan konfigurációs eljárások, amelyek csak a Microsoft 365-höz készült PowerShell-parancsokkal végezhetők el. Ezekben az esetekben az alábbiakat kell tudnia:

  • Telepítse a Microsoft 365-höz készült PowerShell-modulokat (minden rendszergazdai számítógépen csak egyszer kell elvégezni).

  • Csatlakozzon a Microsoft 365-előfizetéséhez (minden PowerShell-munkamenethez egyszer).

  • Gyűjtse össze a Microsoft 365-parancsokhoz szükséges PowerShell futtatásához szükséges információkat.

  • Futtassa a Microsoft 365-höz készült PowerShell-parancsokat.

Miután elsajátította ezeket az alapvető ismereteket, nem kell listáznia a postaláda felhasználóit a Get-Mailbox paranccsal. Azt sem kell megértenie, hogyan hozhat létre új parancsot, például a korábban idézett parancsot, hogy megszámolja az összes webalkalmazás összes webhelyének összes listaelemét. A Microsoft és a rendszergazdák közössége szükség szerint segíthet az ilyen feladatok elvégzésében.

A Microsoft 365-höz készült PowerShell olyan információkat jeleníthet meg, amelyeket nem lát a Microsoft 365 Felügyeleti központban

A Microsoft 365 Felügyeleti központ sok hasznos információt jelenít meg, de nem jeleníti meg a Microsoft 365 által a felhasználókról, licencekről, postaládákról és webhelyekről tárolt összes lehetséges információt. Íme egy példa a Microsoft 365 Felügyeleti központ felhasználóira és csoportjaira :

Példa a felhasználók és csoportok megjelenítésére a Microsoft 365 Felügyeleti központban.

Ez a nézet számos esetben tartalmazza a szükséges információkat. Vannak azonban olyan esetek, amikor többre van szüksége. A Microsoft 365 licencelése (és a felhasználók számára elérhető Microsoft 365-funkciók) például részben a felhasználó földrajzi helyétől függ. Előfordulhat, hogy az Egyesült Államokban élő felhasználókra kiterjeszthető szabályzatok és funkciók nem egyeznek meg az Indiában vagy Belgiumban élő felhasználókra vonatkozó szabályzatokkal és funkciókkal. A felhasználó földrajzi helyének meghatározásához kövesse az alábbi lépéseket a Microsoft 365 Felügyeleti központban:

  1. Kattintson duplán a felhasználó megjelenítendő nevére.

  2. A felhasználói tulajdonságok megjelenítési paneljén válassza a részletek elemet.

  3. A részletek megjelenítésében válassza ki a további részleteket.

  4. Görgessen, amíg meg nem találja az Ország vagy régió címsort:

    Példa egy felhasználó régióadataira a Microsoft 365 Felügyeleti központban.

  5. Írja a felhasználó megjelenítendő nevét és helyét egy papírlapra, vagy másolja és illessze be a Jegyzettömbbe.

Ezt az eljárást minden felhasználónál meg kell ismételnie. Ha sok felhasználója van, ez a folyamat fárasztó lehet. A PowerShell használatával az alábbi parancsokkal jelenítheti meg ezeket az információkat az összes felhasználó számára.

Megjegyzés:

Az Azure Active Directory modult a Microsoft Graph PowerShell SDK váltja fel. A Microsoft Graph PowerShell SDK-val elérheti az összes Microsoft Graph API-t. További információ: Ismerkedés a Microsoft Graph PowerShell SDK-val.

Először használjon Microsoft Entra DC-rendszergazdai vagy felhőalkalmazás-rendszergazdai fiókot a Microsoft 365-bérlőhöz való csatlakozáshoz.

A felhasználó adatainak lekéréséhez a User.ReadBasic.All engedélyhatókörre vagy a "Licenc hozzárendelése" Graph API referenciaoldalon felsorolt egyéb engedélyek egyikére van szükség.

A bérlőben elérhető licencek olvasásához az Organization.Read.All engedélyhatókör szükséges.

Megjegyzés:

Az Azure AD- és MSOnline PowerShell-modulok 2024. március 30-ától elavultak. További információért olvassa el az elavulással kapcsolatos frissítést. Ezen időpont után ezeknek a moduloknak a támogatása a Microsoft Graph PowerShell SDK-ra való migrálásra és a biztonsági javításokra korlátozódik. Az elavult modulok továbbra is működni fognak 2025. március 30-án.

Javasoljuk, hogy migráljon a Microsoft Graph PowerShellbe a Microsoft Entra ID (korábbi nevén Azure AD) használatához. A gyakori migrálási kérdésekért tekintse meg a migrálással kapcsolatos gyakori kérdéseket. Jegyzet: Az MSOnline 1.0.x verziói 2024. június 30. után fennakadásokat tapasztalhatnak.

Connect-MgGraph -Scopes "User.ReadBasic.All"
Get-MgUser -All -Property DisplayName, UsageLocation | Select DisplayName, UsageLocation

Íme egy példa az eredményekre:

DisplayName                               UsageLocation
-----------                               -------------
Bonnie Kearney                            GB
Fabrice Canel                             BR
Brian Johnson (TAILSPIN)                  US
Anne Wallace                              US
Alex Darrow                               US
David Longmuir                            BR

A PowerShell-parancs értelmezése: Kérje le az összes felhasználót az aktuális Microsoft 365-előfizetésben (Get-MgUser), de csak az egyes felhasználók nevét és helyét jelenítse meg (Select DisplayName, UsageLocation).

Mivel a Microsoft 365-höz készült PowerShell támogatja a command-shell nyelvet, a Get-MgUser parancs által kapott információkat tovább módosíthatja. Előfordulhat például, hogy ezeket a felhasználókat a tartózkodási helyük szerint szeretné rendezni, az összes brazil felhasználót egy csoportba, az egyesült államokbeli felhasználókat és így tovább. A parancs a következő:

Get-MgUser -All -Property DisplayName, UsageLocation | Select DisplayName, UsageLocation | Sort UsageLocation, DisplayName

Íme egy példa az eredményekre:

DisplayName                                 UsageLocation
-----------                                 -------------
David Longmuir                              BR
Fabrice Canel                               BR
Bonnie Kearney                              GB
Alex Darrow                                 US
Anne Wallace                                US
Brian Johnson (TAILSPIN)                    US

A PowerShell-parancs értelmezése: Szerezze be az aktuális Microsoft 365-előfizetés összes felhasználóját, de csak az egyes felhasználók nevét és helyét jelenítse meg, és először a helyük, majd a nevük szerint rendezze őket (UsageLocation rendezése, DisplayName).

További szűrést is használhat. Ha például csak Brazíliában lévő felhasználók adatait szeretné megtekinteni, használja ezt a parancsot:

Get-MgUser -All -Property DisplayName, Country | Where-Object {$_.Country -eq "BR"} | Select DisplayName, Country 

Íme egy példa az eredményekre:

DisplayName                                           UsageLocation
-----------                                           -------------
David Longmuir                                        BR
Fabrice Canel                                         BR

A PowerShell-parancs értelmezése: Szerezze be az összes felhasználót az aktuális Microsoft 365-előfizetésből, akiknek a helye Brazília (ahol {$_). UsageLocation -eq "BR"}), majd jelenítse meg az egyes felhasználók nevét és helyét.

Megjegyzés a nagy tartományokról

Ha több tízezer felhasználót tartalmazó nagy tartománnyal rendelkezik, a cikkben ismertetett példák kipróbálása szabályozáshoz vezethet. Az olyan tényezők alapján, mint a számítási teljesítmény és a rendelkezésre álló hálózati sávszélesség, előfordulhat, hogy egyszerre túl sokat próbál megtenni. Előfordulhat, hogy a nagy szervezetek ezeket a PowerShell-műveleteket két parancsra szeretnék felosztani.

A következő parancs például visszaadja az összes felhasználói fiókot, és megjeleníti az egyes fiókok nevét és helyét:

Get-MgUser -All | Select DisplayName, UsageLocation

Ez nagyszerűen működik a kisebb tartományok esetében. Nagy szervezetekben azonban érdemes lehet a műveletet két parancsra osztani: az egyik parancs a felhasználói fiók adatainak változóban való tárolására, a másik pedig a szükséges információk megjelenítésére szolgál. Íme egy példa:

$x = Get-MgUser -All -Property DisplayName, UsageLocation
$x | Select DisplayName, UsageLocation

A PowerShell-parancsok ezen készletének értelmezése a következő:

  1. Kérje le az aktuális Microsoft 365-előfizetés összes felhasználóját, és tárolja az információkat egy $x nevű változóban ($x = Get-MgUser).
  2. A változó tartalmának megjelenítése $x, de csak az egyes felhasználók nevét és helyét tartalmazza ($x | Válassza a DisplayName, UsageLocation lehetőséget).

A Microsoft 365 olyan funkciókkal rendelkezik, amelyeket csak a Microsoft 365-höz készült PowerShell-lel konfigurálhat

A Microsoft 365 Felügyeleti központ célja, hogy hozzáférést biztosítson a legtöbb környezetre vonatkozó gyakori, hasznos felügyeleti feladatokhoz. Más szóval a Microsoft 365 Felügyeleti központ úgy lett kialakítva, hogy a tipikus rendszergazda elvégezhesse a leggyakoribb felügyeleti feladatokat. Vannak azonban olyan feladatok, amelyeket nem lehet elvégezni a felügyeleti központban.

A Skype Vállalati online verzió felügyeleti központjában például létrehozhat egyéni értekezlet-összehívásokat:

Példa egyéni értekezlet-összehívások megjelenítésére a Skype Vállalati online verzió felügyeleti központjában.

Ezekkel a beállításokkal személyre szabott és professzionális megjelenést adhat az értekezlet-összehívásokhoz. Az értekezletkonfigurációs beállítások azonban nem csupán egyéni értekezlet-összehívások létrehozásakor merülnek fel. Az értekezletek például alapértelmezés szerint a következőt teszik lehetővé:

  • Névtelen felhasználók, hogy automatikusan belépjenek az egyes értekezletekbe.

  • Résztvevők az értekezlet rögzítéséhez.

  • A szervezet összes felhasználója előadóként lesz kijelölve az értekezletbe való bekapcsolódáskor.

Ezek a beállítások nem érhetők el a Skype Vállalati online verzió felügyeleti központjában. Ezeket a Microsoft 365-höz készült PowerShellből vezérelheti. Íme egy parancs, amely letiltja ezt a három beállítást:

Set-CsMeetingConfiguration -AdmitAnonymousUsersByDefault $False -AllowConferenceRecording $False -DesignateAsPresenter "None"

Megjegyzés:

A parancs futtatásához telepítenie kell a Skype Vállalati online verzió PowerShell-modulját.

A PowerShell-parancs értelmezése:

  1. Az új Skype Vállalati online verziós értekezletek (Set-CsMeetingConfiguration) beállításaiban tiltsa le, hogy a névtelen felhasználók automatikusan beléphessenek az értekezletekbe (-AdmitAnonymousUsersByDefault $False).
  2. Tiltsa le, hogy a résztvevők rögzíthessenek értekezleteket (-AllowConferenceRecording $False).
  3. Ne jelöljön ki a szervezet összes felhasználóját előadóként (-DesignateAsPresenter "None").

Az alapértelmezett beállítások visszaállításához (a beállítások engedélyezéséhez) futtassa az alábbi parancsot:

Set-CsMeetingConfiguration -AdmitAnonymousUsersByDefault $True -AllowConferenceRecording $True -DesignateAsPresenter "Company"

Vannak más hasonló forgatókönyvek is, ezért a rendszergazdáknak tudniuk kell, hogyan kell futtatni a PowerShellt a Microsoft 365-parancsokhoz.

A Microsoft 365-höz készült PowerShell nagyszerűen használható tömeges műveletekhez

A Microsoft 365 Felügyeleti központhoz hasonló vizuális felületek akkor a legértékesebbek, ha egyetlen műveletet kell elvégeznie. Ha például le kell tiltania egy felhasználói fiókot, a felügyeleti központban gyorsan megkeresheti és törölheti a jelölőnégyzetet. Ez egyszerűbb lehet, mint egy hasonló művelet végrehajtása a PowerShellben.

Ha azonban sok dolgot vagy néhány kiválasztott dolgot kell módosítania egy nagy halmazon belül, előfordulhat, hogy a Microsoft 365 Felügyeleti központ nem a legjobb eszköz. Tegyük fel például, hogy módosítania kell az előtagot több ezer telefonszámon, vagy el kell távolítania az adott felhasználót Ken Myer-t az összes SharePoint-webhelyéről. Hogyan teheti ezt meg a Microsoft 365 Felügyeleti központban?

Az utolsó példában tegyük fel, hogy több száz SharePoint-webhelye van, és nem tudja, melyiknek tagja Ken Meyer. Először a Microsoft 365 Felügyeleti központban kell elvégeznie ezt az eljárást az egyes webhelyeken:

  1. Válassza ki a webhely URL-címét .

  2. A webhelycsoport tulajdonságok mezőjében válassza a Webhely címe hivatkozást a webhely megnyitásához.

  3. A webhelyen válassza a Megosztás lehetőséget.

  4. A Megosztás párbeszédpanelen válassza ki azt a hivatkozást, amely a webhelyhez engedéllyel rendelkező összes felhasználót megjeleníti:

    Példa egy SharePoint-webhely tagjainak megtekintésére a SharePoint Felügyeleti központban.

  5. A Megosztva a következővel párbeszédpanelen válassza a Speciális lehetőséget.

  6. Görgessen le a felhasználók listájában, keresse meg és válassza a Ken Myer elemet (feltéve, hogy rendelkezik engedélyekkel a webhelyhez), majd válassza a Felhasználói engedélyek eltávolítása lehetőséget.

Ez sok időt vesz igénybe több száz webhely esetében.

Másik lehetőségként futtassa a következő parancsot a Microsoft 365-höz készült PowerShellben Ken Myer eltávolításához az összes webhelyről:

Get-SPOSite | ForEach {Remove-SPOUser -Site $_.Url -LoginName "kenmyer@litwareinc.com"}

Megjegyzés:

Ehhez a parancshoz telepítenie kell a SharePoint PowerShell-modult.

A PowerShell-parancs értelmezése: Szerezze be az összes SharePoint-webhelyet az aktuális Microsoft 365-előfizetésben (Get-SPOSite), és minden webhely esetében távolítsa el Ken Meyert azoknak a felhasználóknak a listájáról, akik hozzáférhetnek hozzá (ForEach {Remove-SPOUser -Site $_). URL -LoginName "kenmyer@litwareinc.com"}).

Azt mondjuk a Microsoft 365-nek, hogy távolítsa el Ken Meyert minden webhelyről, beleértve azokat is, amelyekhez nincs hozzáférése. Így az eredmények olyan hibákat fognak megjeleníteni azoknál a webhelyeknél, amelyekhez nem rendelkezik hozzáféréssel. A parancs egy további feltételével eltávolíthatjuk Ken Meyert csak azokról a webhelyekről, amelyeken szerepel a bejelentkezési listáján. A visszaadott hibák azonban nem okoznak kárt magukban a webhelyekben. A parancs futtatása több száz webhelyen eltarthat néhány percig, nem pedig a Microsoft 365 Felügyeleti központon keresztüli munkaórákig.

Íme egy másik tömeges művelet. Ezzel a paranccsal adhat hozzá Bonnie Kearney-t, egy új SharePoint-rendszergazdát a szervezet összes webhelyéhez:

Get-SPOSite | ForEach {Add-SPOUser -Site $_.Url -LoginName "bkearney@litwareinc.com" -Group "Members"}

A PowerShell-parancs értelmezése: Szerezze be az összes SharePoint-webhelyet az aktuális Microsoft 365-előfizetésben, és minden webhelyhez engedélyezze Bonnie Kearney hozzáférését úgy, hogy a bejelentkezési nevét hozzáadja a webhely Tagok csoportjához (ForEach {Add-SPOUser -Site $_). URL -LoginName "bkearney@litwareinc.com" -Group "Members"}).

A Microsoft 365-höz készült PowerShell kiválóan alkalmas az adatok szűrésére

A Microsoft 365 Felügyeleti központ számos módszert kínál az adatok szűrésére, hogy könnyen megtalálja az információk célzott részhalmazát. Az Exchange például megkönnyíti a felhasználói postaláda gyakorlatilag bármely tulajdonságának szűrését. Íme például a Bloomington városban élő összes felhasználó postaládáinak listája:

Példa egy speciális keresésre a Microsoft 365 Felügyeleti központban a Bloomington városban élő összes felhasználó postaládáinak listájában.

Az Exchange Felügyeleti központ lehetővé teszi a szűrési feltételek kombinálására is. Megkeresheti például a Bloomingtonban élő és a Pénzügy osztályon dolgozó összes személy postaládáját.

Az Exchange Felügyeleti központban azonban korlátozások vonatkoznak a műveletekre. Például nem találta meg olyan könnyen a Bloomingtonban vagy San Diegóban élő személyek postaládáját, illetve a postaládákat, akik nem Bloomingtonban élnek.

A Következő Microsoft 365-höz készült PowerShell-paranccsal lekérheti a Postaládák listáját a Bloomingtonban vagy San Diegóban élő összes személy számára:

Get-User | Where {$_.RecipientTypeDetails -eq "UserMailbox" -and ($_.City -eq "San Diego" -or $_.City -eq "Bloomington")} | Select DisplayName, City

Íme egy példa az eredményekre:

DisplayName                              City
-----------                              ----
Alex Darrow                              San Diego
Bonnie Kearney                           San Diego
Julian Isla                              Bloomington
Rob Young                                Bloomington

A PowerShell-parancs értelmezése: Szerezze be az összes felhasználót az aktuális Microsoft 365-előfizetésből, akiknek van postaládája San Diego vagy Bloomington városában (ahol {$_). RecipientTypeDetails -eq "UserMailbox" -and ($_. City -eq "San Diego" -or $_. City -eq "Bloomington")}), majd jelenítse meg az egyes városok nevét és városát (Válassza a DisplayName, City lehetőséget).

És itt a parancs listázhatja az összes postaládát azoknak, akik bárhol élnek, kivéve Bloomington:

Get-User | Where {$_.RecipientTypeDetails -eq "UserMailbox" -and $_.City -ne "Bloomington"} | Select DisplayName, City

Íme egy példa az eredményekre:

DisplayName                               City
-----------                               ----
MOD Administrator                         Redmond
Alex Darrow                               San Diego
Allie Bellew                              Bellevue
Anne Wallace                              Louisville
Aziz Hassouneh                            Cairo
Belinda Newman                            Charlotte
Bonnie Kearney                            San Diego
David Longmuir                            Waukesha
Denis Dehenne                             Birmingham
Garret Vargas                             Seattle
Garth Fort                                Tulsa
Janet Schorr                              Bellevue

A PowerShell-parancs értelmezése: Szerezze be az összes felhasználót az aktuális Microsoft 365-előfizetésből, akiknek postaládája nem Bloomington városában található (ahol {$_). RecipientTypeDetails -eq "UserMailbox" -and $_. City -ne "Bloomington"}), majd megjelenítheti az egyes városok nevét és városát.

Helyettesítő karakterek használata

Helyettesítő karaktereket is használhat a PowerShell-szűrőkben a név egy részének egyeztetéséhez. Tegyük fel például, hogy egy felhasználói fiókot keres. Csak arra emlékszik, hogy a felhasználó vezetékneve Anderson , vagy talán Henderson vagy Jorgenson volt.

Ezt a felhasználót a Microsoft 365 Felügyeleti központban követheti nyomon a keresőeszköz használatával, és három különböző keresést hajthat végre:

  • Egy Andersonnak

  • One for Henderson

  • Egyet Jorgensonnak

Mivel mindhárom név "fiú" végződésű, a PowerShellben beállíthatja, hogy az összes olyan felhasználó megjelenjen, akinek a neve "son" végződésű. A parancs a következő:

Get-User -Filter '{LastName -like "*son"}'

A PowerShell-parancs értelmezése: Kérje le az aktuális Microsoft 365-előfizetés összes felhasználóját, de használjon egy szűrőt, amely csak azokat a felhasználókat listázza, akiknek a vezetékneve "son" (-Szűrő: {LastName -like "*son"}). A * bármilyen karakterkészletet jelent, amely a felhasználó vezetéknevében szereplő betűket jelöli.

A Microsoft 365-höz készült PowerShell megkönnyíti az adatok nyomtatását és mentését

A Microsoft 365 Felügyeleti központban megtekintheti az adatlistákat. Íme egy példa a Skype Vállalati online verzió felügyeleti központjára, amely megjeleníti a Skype Vállalati online verzióban engedélyezett felhasználók listáját:

Példa a Skype Vállalati online verzió felügyeleti központjára, amely megjeleníti a Skype Vállalati online verzióban engedélyezett felhasználók listáját.

Ha fájlba szeretné menteni ezeket az adatokat, be kell illesztenie őket egy dokumentumba vagy Egy Microsoft Excel-munkalapra. Mindkét esetben további formázásra lehet szükség. Emellett a Microsoft 365 Felügyeleti központ nem biztosít módot a megjelenített lista közvetlen nyomtatására.

Szerencsére a PowerShell használatával nemcsak megjelenítheti a listát, hanem mentheti egy olyan fájlba, amely könnyen importálható az Excelbe. Íme egy példaparancs, amellyel a Skype Vállalati online verzió felhasználói adatait egy vesszővel tagolt értékeket tartalmazó fájlba mentheti, amelyet aztán egyszerűen importálhat táblázatként egy Excel-munkalapra:

Get-CsOnlineUser | Select DisplayName, UserPrincipalName, UsageLocation | Export-Csv -Path "C:\Logs\SfBUsers.csv" -NoTypeInformation

Íme egy példa az eredményekre:

Példa a Skype Vállalati online verzió felhasználói adatainak Excel-munkalapjára importált táblázatra, amelyet vesszővel tagolt értékeket tartalmazó fájlba mentettek.

A PowerShell-parancs értelmezése: A Skype Vállalati online verzió összes felhasználójának lekérése az aktuális Microsoft 365-előfizetésben (Get-CsOnlineUser); csak a felhasználónevet, az UPN-t és a helyet szerezze be (Select DisplayName, UserPrincipalName, UsageLocation); majd mentse ezeket az adatokat egy C:\Logs\SfBUsers.csv nevű CSV-fájlba (Export-Csv -Path "C:\Logs\SfBUsers.csv" -NoTypeInformation).

A lista XML-fájlként vagy HTML-lapként való mentésére is használhat beállításokat. Sőt, további PowerShell-parancsokkal közvetlenül Excel-fájlként mentheti, bármilyen egyéni formázással.

A listát közvetlenül a Windows alapértelmezett nyomtatójára megjelenítő PowerShell-parancs kimenetét is elküldheti. Íme egy példaparancs:

Get-CsOnlineUser | Select DisplayName, UserPrincipalName, UsageLocation | Out-Printer

A nyomtatott dokumentum így fog kinézni:

Példa egy kinyomtatott dokumentumra, amely egy Közvetlenül a Windows alapértelmezett nyomtatójára küldött PowerShell-parancs kimenete volt.

A PowerShell-parancs értelmezése: A Skype Vállalati online verzió összes felhasználójának lekérése az aktuális Microsoft 365-előfizetésben; csak a felhasználónevet, az egyszerű felhasználónevet és a helyet szerezze be; majd küldje el ezeket az adatokat az alapértelmezett Windows-nyomtatóra (Out-Printer).

A nyomtatott dokumentum formátuma megegyezik a PowerShell-parancsablakban megjelenő formázással. A nyomtatott példány beszerzéséhez egyszerűen adja hozzá a |-t. Nyomtatón kívül a parancs végéig.

A Microsoft 365-höz készült PowerShell lehetővé teszi a kiszolgálói termékek kezelését

A Microsoft 365-öt alkotó összetevőket úgy tervezték, hogy együttműködjenek. Tegyük fel például, hogy új felhasználót ad hozzá a Microsoft 365-höz, és olyan információkat ad meg, mint a felhasználó részlege és telefonszáma. Ezek az információk akkor lesznek elérhetők, ha a felhasználó adatait a Microsoft 365 bármely szolgáltatásában eléri: Skype Vállalati online verzió, Exchange vagy SharePoint.

Ez azonban a termékcsomagra kiterjedő általános információkra vonatkozik. A termékspecifikus információk, például a felhasználó Exchange-postaládájára vonatkozó információk általában nem érhetők el a csomagban. Például arról, hogy egy felhasználó postaládája engedélyezve van-e, vagy sem, csak az Exchange Felügyeleti központban érhető el.

Tegyük fel, hogy olyan jelentést szeretne készíteni, amely a következő információkat jeleníti meg az összes felhasználó számára:

  • A felhasználó megjelenítendő neve

  • Azt határozza meg, hogy a felhasználó rendelkezik-e Microsoft 365-licenccel

  • Engedélyezve van-e a felhasználó Exchange-postaládája

  • Azt jelzi, hogy a felhasználó engedélyezve van-e a Skype Vállalati online verzióhoz

Ilyen jelentést nem készíthet egyszerűen a Microsoft 365 Felügyeleti központban. Ehelyett külön dokumentumot kellene létrehoznia az információk tárolásához, például egy Excel-munkalapot. Ezután szerezze be az összes felhasználónevet és licencelési információt a Microsoft 365 Felügyeleti központból, szerezze be a postaláda adatait az Exchange Felügyeleti központból, szerezze be a Skype Vállalati online verzió adatait a Skype Vállalati online verzió felügyeleti központjából, majd egyesítse ezeket az információkat.

A másik lehetőség az, hogy egy PowerShell-szkripttel lefordítja a jelentést.

Az alábbi példaszkript bonyolultabb, mint a cikkben eddig látott parancsok. Ez azonban azt mutatja, hogy a PowerShell használatával olyan információnézeteket hozhat létre, amelyek másként nehezen érhetők el. Az alábbi szkripttel állíthatja össze és jelenítheti meg a szükséges listát:

Connect-MgGraph -Scopes "User.ReadBasic.All"
$x = Get-MgUser -All

foreach ($i in $x)
    {
      $y = Get-Mailbox -Identity $i.UserPrincipalName
      $i | Add-Member -MemberType NoteProperty -Name IsMailboxEnabled -Value $y.IsMailboxEnabled

      $y = Get-CsOnlineUser -Identity $i.UserPrincipalName
      $i | Add-Member -MemberType NoteProperty -Name EnabledForSfB -Value $y.Enabled
    }

$x | Select DisplayName, IsLicensed, IsMailboxEnabled, EnabledforSfB

Íme egy példa az eredményekre:

DisplayName             IsLicensed   IsMailboxEnabled   EnabledForSfB
-----------             ----------   ----------------   --------------
Bonnie Kearney          True         True               True
Fabrice Canel           True         True               True
Brian Johnson           False        True               False
Anne Wallace            True         True               True
Alex Darrow             True         True               True
David Longmuir          True         True               True
Katy Jordan             False        True               False
Molly Dempsey           False        True               False

Ennek a PowerShell-szkriptnek az értelmezése a következő:

  1. Kérje le az aktuális Microsoft 365-előfizetés összes felhasználóját, és tárolja az adatokat egy $x nevű változóban ($x = Get-MgUser).
  2. Indítson el egy hurkot, amely az $x változó összes felhasználója felett fut (foreach ($i $x)).
  3. Definiáljon egy $y nevű változót, és tárolja benne a felhasználó postaládájának adatait ($y = Get-Mailbox -Identity $i.UserPrincipalName).
  4. Adjon hozzá egy új tulajdonságot az IsMailBoxEnabled nevű felhasználói adatokhoz. Állítsa be a felhasználó postaládájának IsMailBoxEnabled tulajdonságára ($i | Add-Member -MemberType NoteProperty -Name IsMailboxEnabled -Value $y.IsMailboxEnabled).
  5. Definiáljon egy $y nevű változót, és tárolja benne a felhasználó Skype Vállalati online verziós adatait ($y = Get-CsOnlineUser -Identity $i.UserPrincipalName).
  6. Adjon hozzá egy új tulajdonságot az EnabledForSfB nevű felhasználói adatokhoz. Állítsa be a felhasználó Skype Vállalati online verziós adatainak Engedélyezett tulajdonságára ($i | Add-Member -MemberType NoteProperty -Name EnabledForSfB -Value $y.Enabled).
  7. Megjeleníti a felhasználók listáját, de csak a nevüket, a licencelésüket és a két új tulajdonságot, amelyek jelzik, hogy engedélyezve van-e a postaládájuk, és hogy engedélyezve van-e a Skype Vállalati online verzió ($x | Válassza a DisplayName, IsLicensed, IsMailboxEnabled, EnabledforSfB lehetőséget).

Lásd még

A Microsoft 365-höz készült PowerShell használatának első lépései

Microsoft 365 felhasználói fiókok, licencek és csoportok kezelése a PowerShell-lel

Jelentések létrehozása a Microsoft 365-ben a Windows PowerShell használatával