PowerShell blijft nog steeds een van de meest waardevolle hulpprogramma's voor Office 365-beheerders. Dit is handig wanneer ze een specifieke lijst van gebruikers of postvakken moeten ophalen. In plaats van het doorzoeken van de beschikbare opties in de Office 365-portal, vinden beheerders het gemakkelijk om enkele lijnen van de code in te voeren om te krijgen wat ze nodig hebben. In dit artikel zullen we meer leren over de tien vaakst gebruikte PowerShell-cmdlets.
1. Verbinden met een Office 365-exemplaar met behulp van PowerShell
Hieronder worden de stappen beschreven voor het verbinden met het Office 365-exemplaar. Elke stap vermeldt de functie die moet worden uitgevoerd en het respectieve PowerShell-script dat hetzelfde moet doen.
- Download en installeer de Microsoft Online Services Sign-In Assistant voor IT-professionals RTW.
- Importeer de Online Services PowerShell-module voor Microsoft Azure Active Directory en Office 365:
- Installatie-module - naam AzureAD
- Installatie-module - naam MSOnline
- Voer de onderstaande opdracht uit en geef uw Office 365-beheerdersreferenties op in het pop-upvenster dat verschijnt.
- Maak een externe PowerShell-sessie aan.
- $O365 = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic -AllowRedirection
- Importeer de sessieopdrachten in de lokale Windows PowerShell-sessie.
- Verbinden met alle Office 365-services.
- Connect-MsolService –Credential $O365
2. Verbinden met Exchange Online en SharePoint Online met PowerShell
Hieronder vindt u de stappen voor het verbinden van Exchange Online en SharePoint Online met PowerShell.
- Voer het onderstaande script uit om verbinding te maken met de Exchange online-module. Voer de Office 365-beheerdersreferenties in wanneer u dat wordt gevraagd.
- $Cred = Get-Credential
- $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Cred -Authentication Basic –AllowRedirection
- Om te verbinden met SharePOint Online, downloadt en installeert u de SharePoint Online Management Shell en voert u het onderstaande script uit.
- $admin="Admin@enterprise.onmicrosoft.com"
- $orgname="enterprise"
- $userCred = Get-Credential -UserName $admin -Message "Voer het wachtwoord in."
- Connect-SPOService -Url https://$orgname-admin.sharepoint.com -Credential $userCred
Geef een geldig e-mailadres voor de beheerder en bedrijfsnaam op in de eerste twee regels van het script.
3. Haal een lijst op van beschikbare Office 365 PowerShell-cmdlets
Voer de onderstaande opdracht uit om de lijst van alle MSOnline PowerShell-opdrachten te verkrijgen
- Get-Command -module MSOnline
Voer de onderstaande opdracht uit om de lijst van alle Azure Active Directory-opdrachten te verkrijgen,
- Get-Command -module AzureAD
4. De lijst met alle Office 365-gebruikers ophalen met PowerShell
Om alle gebruikers met eeen geldige licentie op te halen in de Office 365-tenant, samen met de parameters DisplayName, Plaats, Afdeling en ObjectID, voert u de onderstaande opdracht uit.
- Get-MsolUser | DisplayName, Plaats, Afdeling, ObjectID selecteren
5. Een nieuwe gebruiker maken in Office 365 met behulp van PowerShell
Om een nieuwe Office 365-gebruiker te maken met de voornaam John en de achternaam Smith, voert u de onderstaande opdracht uit.
- New-MsolUser -UserPrincipalName JSmith@enterprise.onmicrosoft.com -DisplayName "John Smith" -FirstName “John” -LastName “Smith”
Als het maken van de Office 365-gebruiker is gelukt, zal het systeem het wachtwoord en de licentiestatus van de gebruiker retourneren.
6. Een gebruiker verwijderen van alle SharePoint-sites met PowerShell
Voer de onderstaande opdracht uit om een gebruiker te verwijderen van alle SharePoint-sites tegelijk.
- Get-SPOSite | ForEach {Remove-SPOUser -Site $_.Url -LoginName " JSmith@enterprise.onmicrosoft.com"}
7. Het wachtwoord van de Office 365-gebruikersaccount wijzigen met PowerShell
Als u het wachtwoord moet wijzigen voor een account, gebruikt u de cmdlet Set-MsolUserPassword.
- Set-MsolUserPassword -UserPrincipalName JSmith@netwrixqcspa.onmicrosoft.com -NewPassword P@SSw0rd!
U kunt de parameter -NewPassword weglaten zodat het systeem een willekeurig wachtwoord kan genereren.
8. Groepslidmaatschap beheren in Office 365 met PowerShell
Om een groep te beheren, moet u de GroupObjectId en GroupMemberObejctId kennen.
Om de groupObjectID van de groep die u moet beheren, te zoeken, voert u de onderstaande opdracht uit.
Om de GroupMemberObejctId van de gebruikers te zoeken die u nodig hebt, toe te voegen of te verwijderen, voert u de onderstaande opdracht uit.
- Get-MsolUser | ObjectID selecteren.
Om nieuwe leden toe te voegen aan een groep, voert u de onderstaande opdracht uit.
- Add-MsolGroupMember -GroupObjectId 5b61d9e1-a13f-4a2d-b5ba-773cebc08eec -GroupMemberObjectId a56cae92-a8b9-4fd0-acfc-6773a5c1c767 -GroupMembertype user
Om een gebruiker te verwijderen uit de groep, voert u de onderstaande opdracht uit.
- $GroupId = Get-MsolGroup -SearchString "MyGroup"
- $UserId = Get-MsolUser -UserPrincipalName "evannarvaez@contoso.com"
- Remove-MsoLGroupMember -GroupObjectId $GroupId -GroupMemberType User -GroupmemberObjectId $UserId
Dit voorbeeld verwijdert de gebruiker evannarvaez@contoso.com uit de groep met de naam MyGroup.
9. Een SharePoint-sitecollectie maken met PowerShell
Om een SharePoint-sitecollectie te maken met PowerShell, voert u de onderstaande opdracht uit,
- New-SPOSite -Url https://contoso.sharepoint.com/sites/mynewsite -Owner john.smith@contoso.com -StorageQuota 1000 -Title "Latest presentation"
Dit voorbeeld maakt een nieuwe siteverzameling in de naam Laatste presentatie voor het huidige bedrijf met de opgegeven site-URL en eigenaar. De opslagquota is ingesteld op 1000 megabytes.
10. Rapporten maken in Office 365 met behulp van PowerShell
PowerShell is een fantastisch hulpprogramma om verschillende rapporten te maken. Hier zijn enkele nuttige Office 365-rapporten die via PowerShell zijn gemaakt:
Om het rapport Alle postvakken te genereren die details geeft over alle postvakken in uw Office 365-instelling.
- Get-mailbox | get-MailboxStatistics
Voor het ophalen van de lijst van alle postvakken die niet zijn aangemeld tijdens de afgelopen 30 dagen.
- Get-Mailbox –RecipientType 'UserMailbox' | Get-MailboxStatistics | Sort-Object LastLogonTime | Where {$_.LastLogonTime –lt ([DateTime]::Now).AddDays(-30) } | Format-Table DisplayName, LastLogonTime
Om een overzicht te krijgen van het e-mailverkeer in uw Office 365.
Opmerking: De meeste rapporterende cmdlets werden afgeschaft in januari 2018 en vervange door de nieuwe MS Graph API. Daarom zijn sommige rapporten nu alleen beschikbaar in het Office 365 Beveiligings- en compliancecentrum.