Kategoriarkiv: Powershell

Ta bort så att maillådor som du har tillgång till inte dyker upp i din Outlook 2007 eller nyare automatiskt.

Från och med Outlook 2007 så dyker maillådor som du har fulla rättigheter till automatiskt upp i din Outlook genom autodiscover. Rätt bra funktion kan jag tycka men vissa användare vill ha tillgång till maillådorna hela tiden, men de vill kunna lägga till och ta bort dem själva i sin Outlook.

För att inaktivera denna funktionen som kallas automapping gör man följande:

Anslut till Exchange Online med Powershell.
Om användaren som inte ska ha automapping längre redan har  rättigheter till maillådan måste vi ta bord dem.
För att ta bort rättigheterna för användaren arne@kalle.se till maillådan info@kalle.se så skriver man följande:

Remove-MailboxPermission -Identity info@kalle.se -User arne@kalle.se -AccessRights FullAccess

För att sedan lägga till arne@kalle.se igen med fulla rättigheter men utan automapping skriver man följande:

Add-MailboxPermission -Identity info@kalle.se -User arne@kalle.se -AccessRights FullAccess -AutoMapping:$false

Sedan väntar man en stund tills info@kalle.se har försvunnit från Arnes outlook och då kan han lägga till den manuellt genom att gå till Arkiv > Kontoinställningar > Ändra > Fler inställningar > Avancerat
Där kan han även ta bort den själv när han inte vill att den ska synas i sin Outlook. Sedan kan han lägga till den igen när han har behov av den.

Källor: https://support.microsoft.com/en-us/kb/2646504 och https://technet.microsoft.com/en-us/library/hh529943(v=exchg.141).aspx

Hur jag brukar lägga till användare i bulk via Powershell

Anslut först till din Office 365 tenant med powershell

För att underlätta så lägger jag först in CSV filen i en syntax som heter $users:
PS C:\WINDOWS\system32> $users = Import-Csv -Encoding UTF8 C:\_Temp\office365users.csv

CSV filens innehåll:

UserPrincipalName,DisplayName,FirstName,LastName
Kalle.Anka@doman.se,Kalle Anka,Kalle,Anka
Krosus.Sork@doman.se,Krösus Sork,Krösus,Sork
Joakim.von.Anka@doman.se,Joakim von Anka,Joakim,von Anka

För att lägga till användarna som finns med i CSV filen:
PS C:\WINDOWS\system32> $users | ForEach-Object { New-Msoluser -userPrincipalName $_.UserPrincipalName -displayname $_.displayname -firstname $_.firstname -lastname $_.lastname -usagelocation ”SE” }

Detta visas då på skärmen, efter det kan man enkelt kopiera och klistra in användarnamn och lösenord till valfritt format.

Password UserPrincipalName DisplayName isLicensed
——– —————– ———– ———-
Xuhu6345 Kalle.Anka@doman.se Kalle Anka False
Xaha8206 Krosus.Sork@doman.se Krösus Sork False
Zaya3054 Joakim.von.Anka@doman.se Joakim von Anka False

 

Vill du ha ett förutbestämt lösenord så ska CSV filen se ut såhär: 

UserPrincipalName,DisplayName,FirstName,LastName,Password
Kalle.Anka@doman.se,Kalle Anka,Kalle,Anka,LösenordförKalleAnka
Krosus.Sork@doman.se,Krösus Sork,Krösus,Sork,LösenordförKrösusSork
Joakim.von.Anka@doman.se,Joakim von Anka,Joakim,von Anka,LösenordförJoakimVonAnka

 

För att lägga in de användarna med förutbestämt lösenord skriver du då:
PS C:\WINDOWS\system32> $users | ForEach-Object { New-Msoluser -userPrincipalName $_.UserPrincipalName -displayname $_.displayname -firstname $_.firstname -lastname $_.lastname -Password $_.Password -usagelocation ”SE” -ForcechangePassword $False }

Här finns även -ForceChangePassword $False med, det betyder att användaren inte behöver byta lösenord när den loggar in första gången.

 

Sätta licens på nyligen tillagda användare:
$users | Set-MsolUserLicense -AddLicenses domanab:O365_BUSINESS_PREMIUM

domanab:O365_BUSINESS_PREMIUM  <—- Ersätt detta med den licensen du har

För att se vilka licenser man har tillgång till:
PS C:\WINDOWS\system32> Get-MsolAccountSku

AccountSkuId ActiveUnits WarningUnits ConsumedUnits
———— ———– ———— ————-
domanab:SMB_BUSINESS_ESSENTIALS 1 0 1
domanab:O365_BUSINESS 25 0 0
domanab:SMB_BUSINESS_PREMIUM 8 0 8
domanab:O365_BUSINESS_PREMIUM 25 0 1

För att kolla licensstatus på användare:
Get-MsolUser | Out-Gridview

Vill man kan man skriva detta istället för att skapa användare:
$users | ForEach-Object { New-Msoluser -userPrincipalName $_.UserPrincipalName -displayname $_.displayname -firstname $_.firstname -lastname $_.lastname -usagelocation ”se” -LicenseAssignment domanab:O365_BUSINESS_PREMIUM  >> c:\_temp\o365userinfo.txt }

Då blir användarna licensierade på engång och användarinformationen skickas ut till filen som heter C:\_Temp\o365userinfo.txt

Mer information: http://community.spiceworks.com/how_to/66141-powershell-create-and-license-users-in-bulk-on-office-365

http://blogs.technet.com/b/heyscriptingguy/archive/2014/08/04/use-powershell-to-create-bulk-users-for-office-365.aspx

http://community.office365.com/en-us/f/148/t/192156.aspx

Script för att ändra UPN på ett helt OU.

Fantastiskt bra script när man ska ändra UPN för alla användare i ett visst OU.
Detta är hjälpsamt när man ska köra igång med DirSync/ADFS eftersom UPN:et då t.ex. ska vara användarnamn@kundensdomän.com istället för användare@kundensdomän.local som det i 99 fall av 100 är uppsatt som idag.

#Replace with the old suffix
$oldSuffix = 'old.suffix'

#Replace with the new suffix
$newSuffix = 'new.suffix'

#Replace with the OU you want to change suffixes for
$ou = "DC=sample,DC=domain"

#Replace with the name of your AD server
$server = "test"

Get-ADUser -SearchBase $ou -filter * | ForEach-Object {
$newUpn = $_.UserPrincipalName.Replace($oldSuffix,$newSuffix)
$_ | Set-ADUser -server $server -UserPrincipalName $newUpn
}

Källa: http://community.spiceworks.com/scripts/show/1457-mass-change-upn-suffix

Ändrar man inte UPN så blir det fel UPN / användarnamn i Office 365. Då får kunden användare@kundensdomän.onmicrosoft.com som inloggning istället för användare@kundensdomän.com vilket inte är så snyggt.

Ta bort en användare från en ”staged” migreringsbatch.

Ibland när man migrerar så misslyckas en eller ett par användare i en batch. För att slippa ta bort hela batchen och börja om på nytt kan man ta bort vissa användare när du kör en staged migrering. När du kör en cutover migrering så löser detta sig av sig själv genom att du helt enkelt startar om batchen.

För att ta bort en användare i en staged migreringsbatch gör du så här:

Logga in mot Office 365 med en admin via powershell.

För att få fram vilka användare som är i migreringsläget skriver du Get-MigrationUser
Sedan för att ta bort en användare som har misslyckats skriver du Remove-MigrationUser -Identity ’användarnamn’ -Force

Efter detta kan du skapa en ny batch med de användarna som har misslyckats.

Källa: https://technet.microsoft.com/en-us/library/jj218717%28v=exchg.150%29.aspx och https://technet.microsoft.com/en-us/library/jj219167(v=exchg.150).aspx