Microsoft 365-gebruikersaccounts maken met PowerShell

Dit artikel is van toepassing op Microsoft 365 Enterprise en Office 365 Enterprise.

U kunt Microsoft Graph PowerShell gebruiken om efficiƫnt gebruikersaccounts te maken, inclusief meerdere accounts.

Wanneer u gebruikersaccounts maakt in PowerShell, zijn bepaalde accounteigenschappen altijd vereist. Andere eigenschappen zijn niet vereist, maar wel belangrijk. Zie de volgende tabel.

Eigenschapsnaam Vereist? Beschrijving
Displayname
Ja
Dit is de weergavenaam die wordt gebruikt in Microsoft 365-services. Bijvoorbeeld Caleb Sills.
UserPrincipalName
Ja
Dit is de accountnaam die wordt gebruikt om u aan te melden bij Microsoft 365-services. Bijvoorbeeld CalebS@contoso.onmicrosoft.com.
Voornaam
Neen
Achternaam
Neen
LicenseAssignment
Neen
Dit is het licentieplan (ook wel het licentieplan of SKU genoemd) van waaruit een beschikbare licentie wordt toegewezen aan het gebruikersaccount. De licentie definieert de Microsoft 365-services die beschikbaar zijn voor het account. U hoeft geen licentie toe te wijzen aan een gebruiker wanneer u het account maakt, maar het account moet een licentie hebben voor toegang tot Microsoft 365-services. Nadat u het gebruikersaccount hebt gemaakt, hebt u 30 dagen de tijd om een licentie te verlenen.
Password
Neen
Als u geen wachtwoord opgeeft, wordt een willekeurig wachtwoord toegewezen aan het gebruikersaccount en is het wachtwoord zichtbaar in de resultaten van de opdracht. Als u een wachtwoord opgeeft, moet het bestaan uit 8 tot 16 ASCII-teksttekens van de volgende typen: kleine letters, hoofdletters, cijfers en symbolen.
UsageLocation
Neen
Dit is een geldige ISO 3166-1 alfa-2-landcode. Bijvoorbeeld US voor de Verenigde Staten en FR voor Frankrijk. Het is belangrijk om deze waarde op te geven, omdat sommige Microsoft 365-services niet beschikbaar zijn in bepaalde landen/regio's. U kunt geen licentie toewijzen aan een gebruikersaccount, tenzij deze waarde is geconfigureerd voor het account. Zie Over licentiebeperkingen voor meer informatie.

Opmerking

Zie ook Meer informatie over het maken van gebruikersaccounts met behulp van de Microsoft 365-beheercentrum.

Zie Gebruikers en groepen beheren voor een lijst met aanvullende resources.

Microsoft 365-gebruikersaccounts maken met Microsoft Graph PowerShell

Opmerking

De Azure Active Directory-module wordt vervangen door de Microsoft Graph PowerShell SDK. U kunt de Microsoft Graph PowerShell SDK gebruiken voor toegang tot alle Microsoft Graph API's. Zie Aan de slag met de Microsoft Graph PowerShell SDK voor meer informatie.

Gebruik eerst een Microsoft Entra DC-beheerder, cloudtoepassingsaccount Beheer of globale beheerder om verbinding te maken met uw Microsoft 365-tenant. Voor de cmdlets in dit artikel is het machtigingsbereik User.ReadWrite.All of een van de andere machtigingen vereist die worden vermeld op de referentiepagina 'List subscribedSkus' Graph API. Voor sommige opdrachten in dit artikel zijn mogelijk verschillende machtigingsbereiken vereist, in welk geval dit wordt vermeld in de relevante sectie.

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

Een afzonderlijk gebruikersaccount maken

Gebruik de volgende syntaxis om een afzonderlijk account te maken:

$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

In dit voorbeeld wordt een account gemaakt voor de Amerikaanse gebruiker 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

Meerdere gebruikersaccounts maken

  1. Maak een csv-bestand (door komma's gescheiden waarden) dat de vereiste gebruikersaccountgegevens bevat. Bijvoorbeeld:

    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
    

    Opmerking

    De kolomnamen en de bijbehorende volgorde in de eerste rij van het CSV-bestand zijn willekeurig. Zorg er echter voor dat de volgorde van de gegevens in de rest van het bestand overeenkomt met de volgorde van de kolomnamen. En gebruik de kolomnamen voor de parameterwaarden in de PowerShell voor Microsoft 365-opdracht.

  2. In dit voorbeeld worden gebruikersaccounts gemaakt op basis van het bestandC:\temp\NewAccounts.csv en worden de resultaten geregistreerd in een bestand met de naam 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. Controleer het uitvoerbestand om de resultaten te bekijken.

Zie ook

Microsoft 365-gebruikersaccounts, -licenties en -groepen beheren met PowerShell

Microsoft 365 beheren met PowerShell

Aan de slag met PowerShell voor Microsoft 365