Del via


Hvorfor du trenger å bruke PowerShell for Microsoft 365

Denne artikkelen gjelder for både Microsoft 365 Enterprise og Office 365 Enterprise.

Med Administrasjonssenter for Microsoft 365 kan du administrere Microsoft 365-brukerkontoer og -lisenser. Du kan også administrere Microsoft 365-tjenestene, for eksempel Exchange Online, Teams og SharePoint. Hvis du i stedet bruker PowerShell til å administrere disse tjenestene, kan og dra nytte av kommandolinje- og skriptspråkmiljøet for hastighet, automatisering og flere funksjoner.

Obs!

Azure Active Directory-modulen erstattes av Microsoft Graph PowerShell SDK. Du kan bruke Microsoft Graph PowerShell SDK til å få tilgang til alle Microsoft Graph API-er. Hvis du vil ha mer informasjon, kan du se Komme i gang med Microsoft Graph PowerShell SDK. Noen PowerShell for Microsoft 365-kommandoer i denne artikkelen er oppdatert for å bruke Microsoft Graph PowerShell.

Denne artikkelen viser hvordan du bruker PowerShell til å administrere Microsoft 365 til å:

  • Vis tilleggsinformasjon som du ikke kan se i Administrasjonssenter for Microsoft 365

  • Konfigurer funksjoner og innstillinger bare mulig med PowerShell

  • Utføre masseoperasjoner

  • Filtrere data

  • Skrive ut eller lagre data

  • Administrer på tvers av tjenester

Husk at PowerShell for Microsoft 365 er et sett med moduler for Windows PowerShell, som er et kommandolinjemiljø for Windows-baserte tjenester og plattformer. Dette miljøet oppretter et kommandoskallspråk som kan utvides med flere moduler. Den gir en måte å utføre enkle eller komplekse kommandoer eller skript på. Når du for eksempel har installert PowerShell for Microsoft 365-moduler og koblet til Microsoft 365-abonnementet, kan du kjøre følgende kommando for å vise alle brukerpostboksene for Microsoft Exchange Online:

Get-Mailbox

Du kan også få listen over postbokser ved hjelp av Administrasjonssenter for Microsoft 365 men det er ikke enkelt å telle elementene i alle listene for alle nettstedene for alle nettappene.

PowerShell for Microsoft 365 er utformet for å hjelpe deg med å administrere Microsoft 365, ikke erstatte Administrasjonssenter for Microsoft 365. Administratorer må kunne bruke PowerShell for Microsoft 365 fordi det finnes noen konfigurasjonsprosedyrer som bare kan gjøres gjennom PowerShell for Microsoft 365-kommandoer. I disse tilfellene må du vite hvordan du gjør følgende:

  • Installer PowerShell for Microsoft 365-moduler (bare gjort én gang for hver administratordatamaskin).

  • Koble til Microsoft 365-abonnementet (én gang for hver PowerShell-økt).

  • Samle inn informasjonen du trenger for å kjøre nødvendige PowerShell for Microsoft 365-kommandoer.

  • Kjør PowerShell for Microsoft 365-kommandoer.

Når du har lært disse grunnleggende ferdighetene, trenger du ikke å føre opp postboksbrukerne ved hjelp av kommandoen Hent postboks . Du trenger heller ikke å forstå hvordan du oppretter en ny kommando, for eksempel kommandoen som ble sitert tidligere, for å telle alle elementene i alle listene for alle nettstedene for alle nettappene. Microsoft og fellesskapet av administratorer kan hjelpe deg med slike oppgaver etter behov.

PowerShell for Microsoft 365 kan vise informasjon som du ikke kan se med Administrasjonssenter for Microsoft 365

Den Administrasjonssenter for Microsoft 365 viser mye nyttig informasjon, men den viser ikke all mulig informasjon som Microsoft 365 lagrer om brukere, lisenser, postbokser og nettsteder. Her er et eksempel for brukere og grupper i Administrasjonssenter for Microsoft 365:

Eksempel på visning av brukere og grupper i Administrasjonssenter for Microsoft 365.

Denne visningen inneholder informasjonen du trenger i mange tilfeller. Noen ganger trenger du imidlertid mer. Microsoft 365-lisensiering (og Microsoft 365-funksjonene som er tilgjengelige for en bruker) avhenger for eksempel delvis av brukerens geografiske plassering. Policyene og funksjonene som du kan utvide til en bruker som bor i USA, er kanskje ikke de samme som de du kan utvide til en bruker i India eller Belgia. Følg disse trinnene i Administrasjonssenter for Microsoft 365 for å fastslå en brukers geografiske plassering:

  1. Dobbeltklikk brukerens visningsnavn.

  2. Velg detaljer i visningsruten for brukeregenskaper.

  3. Velg flere detaljer i detaljvisningen.

  4. Rull til du finner overskriften Land eller område:

    Eksempel på områdeinformasjon for en bruker i Administrasjonssenter for Microsoft 365.

  5. Skriv brukerens visningsnavn og plassering på et ark, eller kopier og lim det inn i Notisblokk.

Du må gjenta denne prosedyren for hver bruker. Hvis du har mange brukere, kan denne prosessen være kjedelig. Med PowerShell kan du vise denne informasjonen for alle brukerne ved hjelp av følgende kommandoer.

Obs!

Azure Active Directory-modulen erstattes av Microsoft Graph PowerShell SDK. Du kan bruke Microsoft Graph PowerShell SDK til å få tilgang til alle Microsoft Graph API-er. Hvis du vil ha mer informasjon, kan du se Komme i gang med Microsoft Graph PowerShell SDK.

Først bruker du en Microsoft Entra DC-administrator, cloud application Admin eller global administratorkonto for å koble til Microsoft 365-leieren.

Henting av informasjon for en bruker krever User.ReadBasic.All tillatelsesomfang eller én av de andre tillatelsene som er oppført på referansesiden Tilordne lisens graph API.

Tillatelsesomfanget Organization.Read.All kreves for å lese lisensene som er tilgjengelige i leieren.

Obs!

Azure AD- og MSOnline PowerShell-moduler avvikles fra og med 30. mars 2024. Hvis du vil ha mer informasjon, kan du lese avskrivingsoppdateringen. Etter denne datoen er støtte for disse modulene begrenset til overføringshjelp til Microsoft Graph PowerShell SDK og sikkerhetsoppdateringer. De avskrevne modulene vil fortsette å fungere til og med 30. mars 2025.

Vi anbefaler at du overfører til Microsoft Graph PowerShell for å samhandle med Microsoft Entra ID (tidligere Azure AD). Se vanlige spørsmål om overføring for vanlige spørsmål om overføring. Merk: Versjoner 1.0.x av MSOnline kan oppleve forstyrrelser etter 30. juni 2024.

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

Her er et eksempel på resultatene:

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

Tolkningen av denne PowerShell-kommandoen er: Hent alle brukerne i det gjeldende Microsoft 365-abonnementet (Get-MgUser), men vis bare navnet og plasseringen for hver bruker (Velg Visningsnavn, Bruksplassering).

Fordi PowerShell for Microsoft 365 støtter et kommandoskallspråk, kan du ytterligere manipulere informasjonen som innhentes av Get-MgUser-kommandoen . Kanskje du for eksempel vil sortere disse brukerne etter plassering, gruppere alle de brasilianske brukerne sammen, alle USA brukerne sammen og så videre. Her er kommandoen:

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

Her er et eksempel på resultatene:

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

Tolkningen av denne PowerShell-kommandoen er: Hent alle brukerne i det gjeldende Microsoft 365-abonnementet, men vis bare navnet og plasseringen for hver bruker, og sorter dem først etter plassering og deretter navnet (Sorter UsageLocation, DisplayName).

Du kan også bruke ekstra filtrering. Hvis du for eksempel bare vil se informasjon om brukere basert i Brasil, bruker du denne kommandoen:

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

Her er et eksempel på resultatene:

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

Tolkningen av denne PowerShell-kommandoen er: Hent alle brukerne i det gjeldende Microsoft 365-abonnementet hvis plassering er Brasil (hvor {$_. UsageLocation -eq "BR"}) og vis deretter navnet og plasseringen for hver bruker.

Et notat om store domener

Hvis du har et stort domene med titusenvis av brukere, kan det å prøve noen av eksemplene vi viser i denne artikkelen, føre til begrensning. Basert på faktorer som databehandlingskraft og tilgjengelig nettverksbåndbredde, kan det hende du prøver å gjøre for mye samtidig. Store organisasjoner vil kanskje dele noen av disse PowerShell-operasjonene inn i to kommandoer.

Følgende kommando returnerer for eksempel alle brukerkontoene og viser navnet og plasseringen for hver av dem:

Get-MgUser -All | Select DisplayName, UsageLocation

Det fungerer bra for mindre domener. Men i en stor organisasjon vil du kanskje dele denne operasjonen i to kommandoer: én kommando for å lagre brukerkontoinformasjonen i en variabel og en annen for å vise den nødvendige informasjonen. Her er et eksempel:

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

Tolkningen av dette settet med PowerShell-kommandoer er:

  1. Hent alle brukerne i det gjeldende Microsoft 365-abonnementet, og lagre informasjonen i en variabel kalt $x ($x = Get-MgUser).
  2. Vis innholdet i variabelen $x, men inkluder bare navnet og plasseringen for hver bruker ($x | Velg DisplayName, UsageLocation).

Microsoft 365 har funksjoner som du bare kan konfigurere med PowerShell for Microsoft 365

Den Administrasjonssenter for Microsoft 365 er ment å gi tilgang til vanlige, nyttige administrative oppgaver som gjelder for de fleste miljøer. Med andre ord ble Administrasjonssenter for Microsoft 365 utformet slik at den typiske administratoren kan utføre de vanligste administrasjonsoppgavene. Men det finnes noen oppgaver som ikke kan gjøres i administrasjonssenteret.

Administrasjonssenteret for Skype for Business Online gir for eksempel noen alternativer for å opprette egendefinerte møteinvitasjoner:

Eksempel på visning av egendefinerte møteinvitasjoner i Skype for Business Online Admin-senteret.

Med disse innstillingene kan du legge til et snev av tilpassing og profesjonalitet i møteinvitasjoner. Men det er mer til innstillinger for møtekonfigurasjon enn bare å opprette egendefinerte møteinvitasjoner. Møter tillater for eksempel som standard:

  • Anonyme brukere får automatisk inngang til hvert møte.

  • Deltakere som skal spille inn møtet.

  • Alle brukere fra organisasjonen tilordnes som presentatører når de blir med i møtet.

Disse innstillingene er ikke tilgjengelige fra administrasjonssenteret for Skype for Business Online. Du kan kontrollere dem fra PowerShell for Microsoft 365. Her er en kommando som deaktiverer disse tre innstillingene:

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

Obs!

Hvis du vil kjøre denne kommandoen, må du installere PowerShell-modulen Skype for Business Online.

Tolkningen av denne PowerShell-kommandoen er:

  1. Deaktiver innstillingene for nye Skype for Business Nettmøter (Set-CsMeetingConfiguration), slik at anonyme brukere kan få automatisk inngang til møter (-AdmitAnonymousUsersByDefault $False).
  2. Deaktiver muligheten for deltakere til å ta opp møter (-AllowConferenceRecording $False).
  3. Ikke angi alle brukere fra organisasjonen som presentatører (-DesignateAsPresenter "None").

Hvis du vil gjenopprette disse standardinnstillingene (aktiver alternativene), kjører du denne kommandoen:

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

Det finnes også andre lignende scenarioer, og derfor bør administratorer vite hvordan de skal kjøre PowerShell for Microsoft 365-kommandoer.

PowerShell for Microsoft 365 er flott for masseoperasjoner

Visuelle grensesnitt som Administrasjonssenter for Microsoft 365 er mest verdifulle når du har én enkelt operasjon å gjøre. Hvis du for eksempel trenger å deaktivere én brukerkonto, kan du bruke administrasjonssenteret til raskt å finne og fjerne merket i en avmerkingsboks. Dette kan være enklere enn å utføre en lignende operasjon i PowerShell.

Men hvis du må endre mange ting eller noen valgte ting i et stort sett med andre ting, kan det hende Administrasjonssenter for Microsoft 365 ikke er det beste verktøyet. La oss for eksempel si at du må endre prefikset på tusenvis av telefonnumre eller fjerne den bestemte brukeren Ken Myer fra alle SharePoint-nettstedene. Hvordan ville du gjort det i Administrasjonssenter for Microsoft 365?

I det siste eksemplet kan du si at du har flere hundre SharePoint-nettsteder, og du vet ikke hvilke Ken Meyer er medlem av. Du må starte på Administrasjonssenter for Microsoft 365 og deretter utføre denne prosedyren for hvert område:

  1. Velg URL-adressen til området.

  2. Velg koblingen Adresse til webområde i egenskapsboksen for områdesamlingen for å åpne området.

  3. Velg Del på nettstedet.

  4. Velg koblingen som viser alle brukerne som har tillatelser til nettstedet, i dialogboksen Del :

    Eksempel på visning av medlemmer av et SharePoint-område i SharePoint Admin-senteret.

  5. Velg Avansert i dialogboksen Delt med.

  6. Rull nedover listen over brukere, finn og velg Ken Myer (forutsatt at han har tillatelser til nettstedet), og velg deretter Fjern brukertillatelser.

Dette vil ta lang tid for flere hundre steder.

Alternativet er å kjøre følgende kommando i PowerShell for Microsoft 365 for å fjerne Ken Myer fra alle nettstedene dine:

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

Obs!

Denne kommandoen krever at du installerer SharePoint PowerShell-modulen.

Tolkningen av denne PowerShell-kommandoen er: Få alle SharePoint-nettstedene i det gjeldende Microsoft 365-abonnementet (Get-SPOSite), og for hvert nettsted fjerner du Ken Meyer fra listen over brukere som har tilgang til det (ForEach {Remove-SPOUser -Site $_. URL-adresse -LoginName "kenmyer@litwareinc.com"}).

Vi ber Microsoft 365 om å fjerne Ken Meyer fra alle nettsteder, inkludert de han ikke har tilgang til. Så resultatene vil vise feil for de nettstedene som han ikke har tilgang til. Vi kan bruke en ekstra betingelse på denne kommandoen for å fjerne Ken Meyer bare fra nettstedene som har ham på påloggingslisten. Men feilene som returneres, forårsaker ingen skade på selve nettstedene. Denne kommandoen kan ta noen minutter å kjøre mot hundrevis av nettsteder, i stedet for timer med å arbeide gjennom Administrasjonssenter for Microsoft 365.

Her er et annet eksempel på masseoperasjoner. Bruk denne kommandoen til å legge til Bonnie Kearney, en ny SharePoint-administrator, på alle områder i organisasjonen:

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

Tolkningen av denne PowerShell-kommandoen er: Hent alle SharePoint-nettstedene i det gjeldende Microsoft 365-abonnementet, og for hvert nettsted kan Bonnie Kearney få tilgang ved å legge til påloggingsnavnet til Medlemmer-gruppen på nettstedet (ForEach {Add-SPOUser -Site $_. URL-adresse -LoginName "bkearney@litwareinc.com" -Group "Members"}).

PowerShell for Microsoft 365 er flink til å filtrere data

Med Administrasjonssenter for Microsoft 365 kan du filtrere dataene på flere måter for enkelt å finne et målrettet delsett med informasjon. Exchange gjør det for eksempel enkelt å filtrere etter praktisk talt alle egenskaper i en brukerpostboks. Her er for eksempel listen over postbokser for alle brukerne som bor i byen Bloomington:

Eksempel på å gjøre et avansert søk i Administrasjonssenter for Microsoft 365 etter listen over postbokser for alle brukerne som bor i byen Bloomington.

Administrasjonssenteret for Exchange lar deg også kombinere filtervilkår. Du kan for eksempel finne postboksene for alle personene som bor i Bloomington og arbeider i finansavdelingen.

Det finnes imidlertid begrensninger for hva du kan gjøre i Exchange Admin-senteret. Du kan for eksempel ikke like enkelt finne postboksene til personer som bor i Bloomington eller San Diego, eller postboksene for alle som ikke bor i Bloomington.

Du kan bruke følgende PowerShell for Microsoft 365-kommando for å få en liste over postbokser for alle som bor i Bloomington eller San Diego:

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

Her er et eksempel på resultatene:

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

Tolkningen av denne PowerShell-kommandoen er: Hent alle brukerne i det gjeldende Microsoft 365-abonnementet som har en postboks i byen San Diego eller Bloomington (hvor {$_. RecipientTypeDetails -eq "UserMailbox" -and ($_. By -eq "San Diego" -eller $_. By -eq "Bloomington")}), og vis deretter navnet og byen for hver (Velg Visningsnavn, By).

Og her er kommandoen for å liste opp alle postboksene for folk som bor hvor som helst bortsett fra Bloomington:

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

Her er et eksempel på resultatene:

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

Tolkningen av denne PowerShell-kommandoen er: Hent alle brukerne i det gjeldende Microsoft 365-abonnementet som har en postboks som ikke er plassert i byen Bloomington (hvor {$_. RecipientTypeDetails -eq "UserMailbox" -and $_. City -ne "Bloomington"}), og vis deretter navnet og byen for hver.

Bruke jokertegn

Du kan også bruke jokertegn i PowerShell-filtrene til å samsvare med en del av et navn. Anta for eksempel at du leter etter en brukerkonto. Alt du kan huske er at brukerens etternavn var Anderson eller kanskje Henderson eller Jorgenson.

Du kan spore opp brukeren i Administrasjonssenter for Microsoft 365 ved hjelp av søkeverktøyet og utføre tre forskjellige søk:

  • En til Anderson

  • En for Henderson

  • En for Jorgenson

Fordi alle tre av disse navnene slutter på «sønn», kan du be PowerShell om å vise alle brukerne som har navnet «sønn». Her er kommandoen:

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

Tolkningen av denne PowerShell-kommandoen er: Hent alle brukerne i det gjeldende Microsoft 365-abonnementet, men bruk et filter som bare viser brukere som har etternavn som slutter på «sønn» (-Filter {LastName –like «*son»}). *står for et hvilket som helst sett med tegn, som er bokstaver i brukerens etternavn.

PowerShell for Microsoft 365 gjør det enkelt å skrive ut eller lagre data

Med Administrasjonssenter for Microsoft 365 kan du vise lister med data. Her er et eksempel på administrasjonssenteret for Skype for Business Online som viser en liste over brukere som har blitt aktivert for Skype for Business Online:

Eksempel på Skype for Business Online Admin center som viser en liste over brukere som har blitt aktivert for Skype for Business Online.

Hvis du vil lagre denne informasjonen i en fil, må du lime den inn i et dokument eller microsoft Excel-regneark. Begge tilfellene kan kreve ekstra formatering. I tillegg gir ikke Administrasjonssenter for Microsoft 365 en måte å skrive ut listen som vises direkte.

Heldigvis kan du bruke PowerShell til ikke bare å vise listen, men for å lagre den i en fil som enkelt kan importeres til Excel. Her er en eksempelkommando for å lagre Skype for Business online brukerdata til en kommadelt fil (CSV), som deretter enkelt kan importeres som en tabell i et Excel-regneark:

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

Her er et eksempel på resultatene:

Eksempel på en tabell som er importert til et Excel-regneark for Skype for Business online brukerdata som ble lagret i en kommadelt verdifil.

Tolkningen av denne PowerShell-kommandoen er: Hent alle Skype for Business Online-brukere i det gjeldende Microsoft 365-abonnementet (Get-CsOnlineUser); få bare brukernavnet, UPN og plasseringen (Velg DisplayName, UserPrincipalName, UsageLocation), og lagre deretter denne informasjonen i en CSV-fil kalt C:\Logs\SfBUsers.csv (Export-Csv -Path "C:\Logs\SfBUsers.csv" -NoTypeInformation).

Du kan også bruke alternativer for å lagre denne listen som en XML-fil eller en HTML-side. Med flere PowerShell-kommandoer kan du faktisk lagre den direkte som en Excel-fil, med den egendefinerte formateringen du ønsker.

Du kan også sende utdataene fra en PowerShell-kommando som viser en liste direkte til standardskriveren i Windows. Her er en eksempelkommando:

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

Slik vil det utskrevne dokumentet se ut:

Eksempel på et utskrevet dokument som var utdataene fra en PowerShell-kommando som ble sendt direkte til standardskriveren i Windows.

Tolkningen av denne PowerShell-kommandoen er: Hent alle Skype for Business Online-brukere i det gjeldende Microsoft 365-abonnementet, få bare brukernavnet, UPN og plasseringen, og send deretter denne informasjonen til standard Windows-skriver (utskriver).

Det utskrevne dokumentet har samme enkle formatering som visningen i powershell-kommandovinduet. Hvis du vil ha en papirkopi, legger du bare til | Skriver ut til slutten av kommandoen.

Med PowerShell for Microsoft 365 kan du administrere på tvers av serverprodukter

Komponentene som utgjør Microsoft 365 er utformet for å fungere sammen. Anta for eksempel at du legger til en ny bruker i Microsoft 365, og du angir slik informasjon som brukerens avdeling og telefonnummer. Denne informasjonen vil da være tilgjengelig hvis du får tilgang til brukerens informasjon i noen av Microsoft 365-tjenestene: Skype for Business Online, Exchange eller SharePoint.

Men det er for vanlig informasjon som spenner over produktserien. Produktspesifikk informasjon, for eksempel informasjon om en brukers Exchange-postboks, er vanligvis ikke tilgjengelig på tvers av serien. Informasjon om hvorvidt en brukers postboks er aktivert eller ikke, er for eksempel bare tilgjengelig i administrasjonssenteret for Exchange.

La oss si at du vil lage en rapport som viser følgende informasjon for alle brukerne:

  • Brukerens visningsnavn

  • Om brukeren er lisensiert for Microsoft 365

  • Om brukerens Exchange-postboks er aktivert

  • Om brukeren er aktivert for Skype for Business Online

Du kan ikke enkelt produsere en slik rapport i Administrasjonssenter for Microsoft 365. I stedet må du opprette et eget dokument for å lagre informasjonen, for eksempel et Excel-regneark. Deretter kan du få alle brukernavnene og lisensieringsinformasjonen fra Administrasjonssenter for Microsoft 365, få postboksinformasjon fra administrasjonssenteret for Exchange, få Skype for Business Påloggingsinformasjon fra Skype for Business Online Admin midtstill, og kombiner deretter denne informasjonen.

Alternativet er å bruke et PowerShell-skript til å kompilere rapporten for deg.

Følgende eksempelskript er mer komplisert enn kommandoene du har sett så langt i denne artikkelen. Men den viser potensialet til å bruke PowerShell til å opprette informasjonsvisninger som er vanskelige å få tak i ellers. Her er skriptet for å kompilere og vise listen du trenger:

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

Her er et eksempel på resultatene:

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

Tolkningen av dette PowerShell-skriptet er:

  1. Hent alle brukerne i det gjeldende Microsoft 365-abonnementet, og lagre informasjonen i en variabel som heter $x ($x = Get-MgUser).
  2. Start en løkke som kjører over alle brukerne i variabelen $x (foreach ($i i $x)).
  3. Definer en variabel kalt $y og lagre brukerens postboksinformasjon i den ($y = Get-Mailbox -Identity $i.UserPrincipalName).
  4. Legg til en ny egenskap i brukerinformasjonen som heter IsMailBoxEnabled. Angi verdien for egenskapen IsMailBoxEnabled for brukerens postboks ($i | Add-Member -MemberType NoteProperty -Name IsMailboxEnabled -Value $y.IsMailboxEnabled).
  5. Definer en variabel kalt $y, og lagre brukerens Skype for Business Påloggingsinformasjon i den ($y = Get-CsOnlineUser -Identity $i.UserPrincipalName).
  6. Legg til en ny egenskap i brukerinformasjonen som heter EnabledForSfB. Angi verdien for egenskapen Enabled for brukerens Skype for Business Online-informasjon ($i | Add-Member -MemberType NoteProperty -Name EnabledForSfB -Value $y.Enabled).
  7. Vis listen over brukere, men inkluder bare navnet, om de er lisensiert, og de to nye egenskapene som angir om postboksen er aktivert, og om de er aktivert for Skype for Business Online ($x | Velg DisplayName, IsLicensed, IsMailboxEnabled, EnabledforSfB).

Se også

Kom i gang med PowerShell for Microsoft 365

Administrere Microsoft 365-brukerkontoer, -lisenser og -grupper med PowerShell

Bruke Windows PowerShell til å opprette rapporter i Microsoft 365