Användarhanteringsscenarier för Office 365 PowerShell

Viktigt!: Den här artikeln är maskinöversatt, se ansvarsfriskrivningen. Den engelska versionen av den här artikeln finns här för din referens.

Använd följande PowerShell-scenarier för att snabbt lägga till användarkonton från en fil, tilldela licenser, hantera medlemskap i distributionsgrupper och ange lösenord.

Automatisera importen av flera användare

Du kan automatisera importen av flera användare i Office 365 och spara mycket tid. Om du vill importera ett stort antal användare måste du först förbereda en fil med kommaavgränsade värden (CSV) med relevant användarinformation. Den minsta information som krävs för att skapa ett användarkonto är visningsnamn och UPN (User Principal Name).

UPN är namnet på en användare i e-postadressformat. Användarnamnet följs av @-tecknet som i sin tur följs av namnet på Internetdomänen för din Office 365-prenumeration. Ett exempel på UPN är mikaelaj@contoso.com. Du kan också ange data för alla skrivbara användarkontoegenskaper, till exempel plats, telefonnummer och adresser.

För grundläggande användarkontoegenskaper, till exempel UPN och visningsnamn, förbereder du en CSV-fil med följande kolumnrubriker:

  • UPN,Visningsnamn

Sedan lägger till ett nytt användarkonto på varje rad i CSV-filen genom att skriva UPN-namnet och visningsnamnet, avgränsade med kommatecken.

Obs!: Eftersom du inte anger ett lösenord för varje nytt konto genererar Office 365 dem.

Lagra CSV-filen på en plats som du kan komma åt, till exempel C:\O365Admin\NyaAnvändare.CSV. Nu är du redo att skapa användarkonton.

För att börja måste du ansluta till Office 365 med Windows Azure Active Directory-modulen för Windows PowerShell. Instruktioner finns i Ansluta till Office 365 PowerShell.

Fyll sedan i sökvägen och filnamnet mellan citattecken, ta bort instruktionstexten och tecknen < och >.

$fileName="<path and file name of the CSV file, example C:\O365Admin\NewUsers.CSV>"
Import-Csv $fileName | ForEach { New-MsolUser -UserPrincipalName  $_.UserPrincipalName -DisplayName $_.DisplayName }

Kör resulterande kommandon via fönstret Windows Azure Active Directory-modulen för Windows PowerShell.

För mer detaljerad användarkontoinformationen förbereder du CSV-fil med följande kolumnrubriker och fyller i så många användarrader som behövs:

  • UPN,Visningsnamn,Förnamn,Efternamn,Befattning,Lösenord,Användningsplats,Kontor,Avdelning,Mobiltelefon,Gatuadress,Ort,Region,Postnummer,Land

Obs!: Kolumnrubrikerna ska vara utan blanksteg eftersom var och en måste refereras av elementet $_. i kommandot Import-Csv. Endast fälten UPN och Visningsnamn är obligatoriska och tomma värden hoppas över. Koden Användningsplats är ISO-koden på två tecken för användarens region.

Lagra CSV-filen på en plats som du kan komma åt, till exempel C:\O365Admin\NyaAnvändare.CSV. Nu är du redo att importera dem som användarkonton.

Fyll i filnamnet på CSV-filen och sedan kör du resulterande kommandon.

$fileName="<path and file name of the CSV file, example C:\O365Admin\NewUsers.CSV>"
Import-Csv $fileName | ForEach { New-MsolUser -UserPrincipalName   $_.UserPrincipalName -FirstName $_.FirstName -LastName $_.LastName -DisplayName $_.DisplayName -Title $_.Title -Department $_.Department -Office $_.Office -MobilePhone $_.MobilePhone -StreetAddress $_.StreetAddress -City $_.City -State $_.State -PostalCode $_.PostalCode -Country $_.Country -Password $_.Password }

Tilldela licenser i Office 365

För att användarna ska ha fullständig åtkomst till Office 365 måste de tilldelas en Office 365-licens. I det här scenariot kan tilldela du licenser till användarkonton.

För att börja måste du ansluta till Office 365 med Windows Azure Active Directory-modulen för Windows PowerShell. Instruktioner finns i Ansluta till Office 365 PowerShell.

Innan du kan tilldela en licens för en användare måste du ange användningsplatsen för det användarkontot baserat på ISO-koden på två tecken för användarens region. Användningsplatsen anger det land där tjänsten ska användas och bestämmer vilka licensierade funktioner som är tillgängliga för det området. Exempel: US står för USA. Här är ett exempel på hur du anger användningsplatsen baserat på UPN för ett användarkonto:

Set-MsolUser -UserPrincipalName user@contoso.com -UsageLocation US

Om du vill visa en lista över tillgängliga licenser, deras konto-SKU:er och antal licenser kvar som kan tilldelas kör du följande kommando:

Get-MsolAccountSku

Sedan fyller du i licensen och UPN för användarkontot och kör resulterande kommando via fönstret Windows Azure Active Directory-modulen för Windows PowerShell.

$license="<the appropriate value of AccountSkuId from the Get-MsolAccountSku command>"
$userUPN="<the UPN of the user account>"
UserLicense -UserPrincipalName $userUPN -AddLicenses $license

Tilldela licenser till flera användare

I det föregående scenariot tilldelade du en licens till ett enskilt användarkonto. Om du vill tilldela licenser till flera användare krävs det några fler steg men det är värt att lägga tid på detta om du har ett stort antal användarkonton.

För att börja måste du ansluta till Office 365 med Windows Azure Active Directory-modulen för Windows PowerShell. Instruktioner finns i Ansluta till Office 365 PowerShell.

Visa först listan över tillgängliga licenser, deras konto-SKU:er och antal licenser kvar för tilldelning med det här kommandot:

Get-MsolAccountSku

Använd det här kommandot till att visa en lista över olicensierade användare:

Get-MsolUser -UnlicensedUsersOnly

Om du vill spara listan med olicensierade användare i en CSV-fil som du kan använda till att välja användarkonton för tilldelning av licenser fyller du i sökvägen och filnamnet och kör sedan resulterande kommandon.

$fileName="<path and file name of the CSV file, example: c:\reports\Unlicensed_Users.CSV>"
Get-MsolUser -UnlicensedUsersOnly | Export-Csv $fileName

Du kan också använda kommandot Where för att visa en lista över olicensierade användarkonton baserat på ett mer specifika villkor, till exempel konton USA. Här är ett exempel:

Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.Country -eq "United States"}

Använd dessa kommandon till att ange en användarkontoegenskap och dess obligatoriska värde och visa en särskild uppsättning olicensierade användare. Kör sedan resulterande kommandon:

$userPropertyName="<name of the user property>"
$userPropertyValue="<value of the user property>"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}

För att hämta listan med användarkontoegenskaper fyller du i alla UPN för användarkonton och kör sedan resulterande kommandon.

$userUPN="<the UPN of any user account>"
Get-MsolUser -UserPrincipalName $userUPN | Select * | More

Följande exempel visar alla olicensierade användare i London:

$userPropertyName="City"
$userPropertyValue="London"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}

När du har identifierat uppsättningen användarkonton kan du kombinera den med cmdleten Set-MsolUserLicense för att tilldela licenser till var och en av dem. Fyll i licensen, egenskapsnamnet och dess värde. Kör sedan resulterande kommandon.

$license="<the appropriate value of AccountSkuId from the Get-MsolAccountSku command>"
$userPropertyName="<name of the user property>"
$userPropertyValue="<value of the user property>"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}  | Set-MsolUserLicense -AddLicenses $license

Här är ett exempel som tilldelar Contosos Office 365 E5-licens till alla olicensierade användarkonton i London:

$license="contoso:ENTERPRISEPACK"
$userPropertyName="City"
$userPropertyValue="London"
Get-MsolUser -All -UnlicensedUsersOnly | Where {$_.$userPropertyName -eq $userPropertyValue}  | Set-MsolUserLicense -AddLicenses $license

Hantera mottagare i distributionsgrupper

Du kan använda distributionsgrupper till att skapa distributionslistor för e-post. Distributionsgrupper kan endast användas med e-postprogram som Microsoft Outlook för att skicka e-postmeddelanden till en grupp användare. I det här scenariot använder du PowerShell för att hantera mottagarna i en distributionsgrupp.

För att börja måste du ansluta till Exchange Online. Om du vill ansluta till Exchange Online med ett användarnamn och lösenord läser du Ansluta till Exchange Online PowerShell. Om du vill installera Microsoft Exchange Online Remote PowerShell-modulen och ansluta med MFA läser du Ansluta till Exchange Online PowerShell med multifaktorautentisering.

Om du vill lägga till en mottagare i en distributionsgrupp fyller du i distributionsgruppens namn och UPN för användarkontot och kör sedan resulterande kommando.

$distName="<name of the distribution group>"
$userUPN="<the UPN of the user account>"
Add-DistributionGroupMember -Identity $distName -Member $userUPN

Om du vill ta bort en mottagare från en distributionsgrupp fyller du i distributionsgruppens namn och UPN för användarkontot och kör sedan resulterande kommandon.

$distName="<name of the distribution group>"
$userUPN="<the UPN of the user account>"
Remove-DistributionGroupMember -Identity $distName -Member $userUPN

Ange lösenorden för flera användarkonton

Använd det här scenariot till att ange lösenordet för en grupp med användarkonton. Exempel: Du har en ny grupp med frivilliga som kommer in en gång i veckan för att hjälpa till eller som du ger demoarbetsstationer som ska användas på en konferens.

En massändring av lösenord kan vara användbart för att återställa lösenorden för återanvändbara konton regelbundet. Genom att utse en grupp med användare efter en avdelning eller andra villkor kan du massåterställa lösenord baserat på det villkoret. Det första steget är att exportera kontonamn för Office 365-användare till en CSV-fil.

Om du vill exportera en lista utifrån en kontoegenskap och ett specifikt värde till en CSV-fil fyller du i egenskapsnamnet, dess värde och filnamnet på CSV-filen. Kör sedan resulterande kommandon.

$userPropertyName="<name of the user property>"
$userPropertyValue="<value of the user property>"
$fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
Get-MsolUser | Where {$_.$userPropertyName -eq $userPropertyValue} | select UserPrincipalName | Export-Csv $fileName -NoTypeInformation

Här är ett exempel som exporterar alla medlemmar i avdelningen Frivilliga till filen med namnet c:\O365admin\frivilliglista.csv:

$userPropertyName="Department"
$userPropertyValue="Volunteers"
$fileName="c:\O365admin\volunteerslist.csv"
Get-MsolUser | Where {$_.$userPropertyName -eq $userPropertyValue} | Select UserPrincipalName | Export-Csv $fileName -NoTypeInformation

Granska de namn som finns i CSV-filen för att säkerställa att du har hittat rätt användare innan du återställer lösenord. När vi har en godkänd lista över användare i CSV-format finns det tre enkla metoder för att skapa och tilldela ett nytt lösenord till varje användare.

  1. Ange ett nytt lösenord och tilldela samma lösenord till alla användare i CSV-filen.

    Fyll i det nya lösenordet och CSV-filens namn och kör sedan resulterande kommandon.

    $pass="<the new password>"
    $fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
    Import-Csv $fileName | ForEach {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $pass -ForceChangePassword $True}
  2. Definiera ett nytt lösenord för varje användare manuellt i CSV-filen.

    För det här alternativet måste du ändra CSV-filen. Lägg till en kolumn bredvid det UPN-märkta lösenordet och tilldela sedan ett lösenord till alla användare i listan. Fyll i CSV-filens namn och kör sedan resulterande kommandon.

    $fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
    Import-Csv $fileName | ForEach {Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -NewPassword $_.Password -ForceChangePassword $True}
  3. Låt Office 365 automatiskt generera ett lösenord för varje användarkonto i CSV-filen.

    Fyll i CSV-filens namn och kör sedan resulterande kommandon.

    $fileName="<path and file name of the CSV file, example c:\O365Admin\userlist.csv>"
    Import-Csv $fileName | ForEach {[string[]]$a+= $_.UserPrincipalName + "  " + (Set-MsolUserPassword -UserPrincipalName $_.UserPrincipalName -ForceChangePassword $True)} ;$a

Obs!: Alla tre alternativen tillämpar en lösenordsändring första gången användaren loggar in med användarkontot. Om du vill förhindra detta kan du ta bort - ForceChangePassword $True från kommandot Set-MSolUserPassword.

Obs!: Ansvarsfriskrivning för maskinöversättning: Den här artikeln har översatts av ett datorsystem utan mänsklig inblandning. Microsoft erbjuder dessa maskinöversättningar för att hjälpa icke engelskspråkiga användare att ta del av information om Microsofts produkter, tjänster och tekniker. Eftersom artikeln är maskinöversatt kan den innehålla fel i ordval, syntax och grammatik.

Mer information finns i

PowerShell för Office 365-administratörer

Office 365 PowerShell-scenarier

Konfigurationsscenarier för Office 365 PowerShell

Rapporteringsscenarier för Office 365 PowerShell

Scenarier med fler funktioner för Office 365 PowerShell

Office 365 PowerShell-communityresurser

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×