O365 mit der Powershell managen

Office 365 administrieren

O365 mit der Powershell managen

Die Administration von O365 lässt sich sehr gut über die Powershell erledigen. Hier einige Beispiele zu Thema Umgang mit der Powershell in Verbindung mit Office 365 für Einsteiger.

Office 365 administrieren

Zur Vorbereitung müssen wie zuerst das entsprechende Modul installieren.

#Installieren des Moduls
Install-Module -Name MSOnline -Force -AllowClobber -Verbose

#Verbindung zu O365 aufbauen
Connect-MsolService

#Verbindung testen
Get-MsolUser

#Hilfe erhalten
help New-MsolUser -Examples

Account anlegen und wieder löschen

#Erstellen des neuen Benutzers
New-MsolUser -UserPrincipalName dwp@joernwalter.de -DisplayName “Der Windows Papst” -FirstName “Windows” -LastName “Papst”

New-MsolUser -UserPrincipalName

#Account löschen und wiederherstellen
Remove-MsolUser -UserPrincipalName dwp@joernwalter.de
Restore-MsolUser -UserPrincipalName dwp@joernwalter.de

O365 Account löschen und wiederherstellen

Welcher Account hat eine Location

#Alle Accounts abfragen
Get-MsolUser

#Accounts mit einem Filter abfragen
Get-MsolUser | Select-Object Userprincipalname, Usagelocation

Get-MsolUser Usagelocation

#Welche Accounts haben keine Location?
Get-MsolUser -All | Where-Object {$_.UsageLocation -eq $null}

Get-MsolUser Usagelocation Filter

#Location für alle setzen die keine haben
Get-MsolUser -All | Where-Object {$_.UsageLocation -eq $null} | Set-MsolUser -UsageLocation DE

Get-MsolUser Set Location

#Kontrolle ob nun alle Accounts eine Zuweisung haben
Get-MsolUser -All | Where-Object {$_.UsageLocation -eq $null}

Lizenzen prüfen und zuweisen

#Welche Lizenzen stehen zur Verfügung
Get-MsolAccountSku

Get-MsolAccountSku

#Anzeigen nicht lizenzierter Benutzer
Get-MsolUser -UnlicensedUsersOnly

Anzeigen nicht lizenzierter Benutzer

#Nicht lizenzierten Accounts eine Lizenz zuweisen
Get-MsolUser -All -UnlicensedUsersOnly | Set-MsolUserLicense -AddLicenses “changers75:ENTERPRISEPACK”

#Lizenz nur einem spezifischen Benutzer zuweisen
Set-MsolUserLicense -UserPrincipalName dwp@joernwalter.de -AddLicenses “changers75:ENTERPRISEPACK”

#Kontrolle der Zuweisung
Get-MsolUser -UserPrincipalName dwp@joernwalter.de | Select-Object Licenses

#Lizenz wieder entziehen
Set-MsolUserLicense -UserPrincipalName dwp@joernwalter.de -RemoveLicenses “changers75:ENTERPRISEPACK”

Gruppen managen

#Anlegen einer neuen Gruppe
New-MsolGroup -DisplayName “Security” -Description “IT CISO”

O365 Gruppen managen

#Ändern des Displaynames einer Gruppe
Get-MsolGroup -SearchString Security | Set-MsolGroup -DisplayName “CISO”

Change Displayname Group

#Details zur Gruppe CISO
Get-MsolGroup -SearchString “CISO” | fl *

O365 Group Details

#Löschen der Gruppe CISO
Get-MsolGroup -SearchString “CISO” | Remove-MsolGroup

O365 Delete Group

Account der Gruppe Security hinzufügen

#Variable anlegen und ausführen
$user = Get-MsolUser -UserPrincipalName dwp@joernwalter.de
$group = Get-MsolGroup -SearchString “Security”
Add-MsolGroupMember -GroupObjectId $group.objectId -GroupMemberType User -GroupMemberObjectId $user.objectId

Benutzer einer Gruppe hinzufügen

#Prüfen wer Mitglied der Gruppe ist
Get-MsolGroupMember -GroupObjectId $group.objectId

Welcher Benutzer in Mitglied der Gruppe

Benutzer aus einer Gruppe entfernen

#Variable anlegen und ausführen
$user = Get-MsolUser -UserPrincipalName dwp@joernwalter.de
$group = Get-MsolGroup -SearchString “Security”
Remove-MsolGroupMember -GroupObjectId $group.objectId -GroupMemberObjectId $user.objectId

Benutzer aus einer Gruppe entfernen

#Prüfen wer noch Mitglied der Gruppe ist
Get-MsolGroupMember -GroupObjectId $group.objectId

Check Group Member

Account Password managen

# Password Status abfragen
Get-MsolUser -UserPrincipalName dwp@joernwalter.de | Select-Object displayname, PasswordneverExpires

Account Password managen

#Kennwort läuft nie ab für einen Benutzer setzen
Set-MsolUser -UserPrincipalName dwp@joernwalter.de -PasswordNeverExpires $true

#Prüfen ob das Flag gesetzt worden ist
Get-MsolUser -UserPrincipalName dwp@joernwalter.de | Select-Object displayname, PasswordneverExpires

Kennwort läuft nie ab für einen Benutzer setzen

Kennwortrichtlinie

#Abfragen der Kennwortrichtlinie für eine Domäne
Get-MsolPasswordPolicy -DomainName joernwalter.de

Abfragen der Kennwortrichtlinie für eine Domäne

#Kennwortrichtlinie anpassen
Set-MsolPasswordPolicy -DomainName joernwalter.de -ValidityPeriod 60 -NotificationDays 7

#Prüfen der neuen Richtlinie
Get-MsolPasswordPolicy -DomainName joernwalter.de

Kennwort zurücksetzen und erstellen

#Zufalls Kennwort erstellen
Set-MsolUserPassword -UserPrincipalName dwp@joernwalter.de

MSO Password Reset

#Ein Kennwort vergeben
Set-MsolUserPassword -UserPrincipalName dwp@joernwalter.de -NewPassword “P@ssw0rd”

MSO Set new Password

#Kennwortkomplexität für einen Benutzer abschalten
Set-MsolUser -UserPrincipalName dwp@joernwalter.de -StrongPasswordRequired $false

#Prüfen der Komplexität
Get-MsolUser -UserPrincipalName dwp@joernwalter.de | Select-Object displayname, PasswordneverExpires, StrongPasswordRequired

StrongPasswordRequired $false

#Setzen eines schwachen Kennworts – nicht empfohlen
Set-MsolUserPassword -UserPrincipalName dwp@joernwalter.de -NewPassword “Password”

Setzen eines schwachen Kennworts

Create User with Powershell and Hashtable