Skapa Microsoft 365-användarkonton med PowerShell

Denna artikel gäller för både Microsoft 365 Enterprise och Office 365 Enterprise.

Du kan använda Microsoft Graph PowerShell för att effektivt skapa användarkonton, inklusive flera konton.

När du skapar användarkonton i PowerShell krävs alltid vissa kontoegenskaper. Andra egenskaper krävs inte, men de är viktiga. Se följande tabell.

Egenskapsnamn Obligatorisk Beskrivning
Displayname
Ja
Det här är visningsnamnet som används i Microsoft 365-tjänster. Till exempel Caleb Sills.
UserPrincipalName
Ja
Det här är det kontonamn som används för att logga in på Microsoft 365-tjänster. Till exempel CalebS@contoso.onmicrosoft.com.
Förnamn
Nej
Efternamn
Nej
LicenseAssignment
Nej
Det här är licensieringsplanen (även kallad licensplanen eller SKU:n) som en tillgänglig licens tilldelas till användarkontot från. Licensen definierar de Microsoft 365-tjänster som är tillgängliga för kontot. Du behöver inte tilldela en licens till en användare när du skapar kontot, men kontot måste ha en licens för att få åtkomst till Microsoft 365-tjänster. Du har 30 dagar på dig att licensiera användarkontot när du har skapat det.
Lösenord
Nej
Om du inte anger något lösenord tilldelas ett slumpmässigt lösenord till användarkontot och lösenordet visas i resultatet av kommandot. Om du anger ett lösenord måste det vara 8 till 16 ASCII-texttecken av följande typer: gemener, versaler, siffror och symboler.
UsageLocation
Nej
Detta är en giltig ISO 3166-1 alfa-2 landskod. Till exempel USA för USA och FR för Frankrike. Det är viktigt att ange det här värdet eftersom vissa Microsoft 365-tjänster inte är tillgängliga i vissa länder/regioner. Du kan inte tilldela en licens till ett användarkonto om inte kontot har det här värdet konfigurerat. Mer information finns i Om licensbegränsningar.

Obs!

Se även Lär dig hur du skapar användarkonton med hjälp av Administrationscenter för Microsoft 365.

En lista över ytterligare resurser finns i Hantera användare och grupper.

Skapa Microsoft 365-användarkonton med Microsoft Graph PowerShell

Obs!

Azure Active Directory-modulen ersätts av Microsoft Graph PowerShell SDK. Du kan använda Microsoft Graph PowerShell SDK för att komma åt alla Microsoft Graph API:er. Mer information finns i Komma igång med Microsoft Graph PowerShell SDK.

Använd först ett Microsoft Entra DC-administratör, molnprogram Admin eller ett globalt administratörskonto för att ansluta till din Microsoft 365-klientorganisation. Cmdletarna i den här artikeln kräver behörighetsomfånget User.ReadWrite.All eller någon av de andra behörigheterna som anges på Graph API referenssidan för listprenumerationskus. Vissa kommandon i den här artikeln kan kräva olika behörighetsomfång, i vilket fall detta anges i det relevanta avsnittet.

Connect-MgGraph -Scopes "User.ReadWrite.All"

Skapa ett enskilt användarkonto

Använd följande syntax för att skapa ett enskilt konto:

$PasswordProfile = New-Object -TypeName Microsoft.Graph.PowerShell.Models.MicrosoftGraphPasswordProfile
$PasswordProfile.Password = "<user account password>"
New-MgUser -DisplayName "<display name>" -GivenName "<first name>" -Surname "<last name>" -UserPrincipalName <sign-in name> -UsageLocation <ISO 3166-1 alpha-2 country code> -MailNickname <mailbox name> -PasswordProfile $PasswordProfile -AccountEnabled $true

I det här exemplet skapas ett konto för den amerikanske användaren John Doe.

$PasswordProfile = New-Object -TypeName Microsoft.Graph.PowerShell.Models.MicrosoftGraphPasswordProfile
$PasswordProfile.Password = "3Rv0y1q39/chsy"
New-MgUser -DisplayName "John Doe" -GivenName "John" -Surname "Doe" -UserPrincipalName johnd@contoso.onmicrosoft.com -UsageLocation "US" -MailNickname "johnd" -PasswordProfile $PasswordProfile -AccountEnabled $true

Skapa flera användarkonton

  1. Skapa en CSV-fil (kommaavgränsat värde) som innehåller nödvändig information om användarkontot. Till exempel:

    UserPrincipalName,FirstName,LastName,DisplayName,UsageLocation,MailNickname
    ClaudeL@contoso.onmicrosoft.com,Claude,Loiselle,Claude Loiselle,US,claudel
    LynneB@contoso.onmicrosoft.com,Lynne,Baxter,Lynne Baxter,US,lynneb
    ShawnM@contoso.onmicrosoft.com,Shawn,Melendez,Shawn Melendez,US,shawnm
    

    Obs!

    Kolumnnamnen och deras ordning på den första raden i CSV-filen är godtyckliga. Kontrollera dock att dataordningen i resten av filen matchar kolumnnamnens ordning. Och använd kolumnnamnen för parametervärdena i PowerShell för Microsoft 365-kommandot.

  2. Det här exemplet skapar användarkonton från filen C:\temp\NewAccounts.csv och loggar resultatet i en fil med namnet C:\temp\NewAccountResults.csv.

    # Import the CSV file
    $users = Import-Csv -Path "C:\temp\NewAccounts.csv"
    
    # Create a password profile
    $PasswordProfile = @{
        Password = 'Password123'
        }
    
    # Loop through each user in the CSV file
    foreach ($user in $users) {
        # Create a new user
        $newUser = New-MgUser -DisplayName $user.DisplayName -GivenName $user.FirstName -Surname $user.LastName -UserPrincipalName $user.UserPrincipalName -UsageLocation $user.UsageLocation -MailNickname $user.MailNickname -PasswordProfile $passwordProfile -AccountEnabled
    
        # Assign a license to the new user
        $e5Sku = Get-MgSubscribedSku -All | Where SkuPartNumber -eq 'SPE_E5'
        Set-MgUserLicense -UserId $newUser.Id -AddLicenses @{SkuId = $e5Sku.SkuId} -RemoveLicenses @()
    }
    
    # Export the results to a CSV file
    $users | Export-Csv -Path "C:\temp\NewAccountResults.csv" -NoTypeInformation
    
  3. Granska utdatafilen för att se resultatet.

Se även

Hantera Microsoft 365-användarkonton,-licenser och-grupper med PowerShell

Hantera Microsoft 365 med PowerShell

Börja använda PowerShell för Microsoft 365